apyhub-logo

Convert RSS to JSON API

150 atoms
Base tier

About

This API lets you upload and transform RSS feeds into JSON files.
With this API, you can transform any raw RSS data into structured JSON files, enabling integration and manipulation of any content. In addition, the service is able to ensure minimal to no loss in the formatting and data during the conversion process. This enables developers to work with RSS data in a more efficient and standardized manner.
Try out the RSS to JSON Converter API in the API playground for free, improve your workflow, and reduce JSON conversion errors with a simple API call.
Select API Endpoints
Input

API Playground

API Documentation

SUBMIT RSS FILE
POST
https://api.apyhub.com/convert/rss-file/json

Request example

1
curl --location --request POST 'https://api.apyhub.com/convert/rss-file/json?detailed=true' \
2
--header 'apy-token: {{token}}' \
3
--form 'file=@"test.xml"'
The method lets you pass a RSS feed file and returns the converted JSON as an output.
Method: POST
Content Type: multipart/form-data
Query Parameter(s)
AttributeTypeMandatoryDescription
detailedbooleanNoThe value can either be trueor false. Set it true to get detailed version of json, it is default to false.
Request Body
AttributeTypeMandatoryDescription
fileFileYesThe source rss file.
Response
AttributeTypeDescription
versionStringThe URL of the version of the format the feed uses.
titleStringThe name of the feed, which will often correspond to the name of the website .
descriptionStringProvides more detail, beyond the title, on what the feed is about. A feed reader may display this text.
home_page_urlStringThe URL of the resource that the feed describes.
feed_urlStringThe URL of the feed, and serves as the unique identifier for the feed.
date_modifiedStringSpecifies the modification date.
date_publishedStringSpecifies the published date.
authorsArray of Authors ObjectsThis specifies the feed author. The author object has several members defined below.
authors[a].nameStringThe author’s name.
authors[a].emailStringEmail address of the author.
languageStringThis is the primary language for the feed in the format specified in RFC 5646. The value is usually a 2-letter language tag from ISO 639-1, optionally followed by a region tag. (Examples: en or en-US).
iconArray of Icon ObjectsThe URL of an image for the feed suitable to be used in a timeline, much the way an avatar might be used.
icon[a].urlStringThe URL of the image.
icon[a].titleStringThe title of the image.
copyrightStringThe copyright of the webpage.
generatorStringThe generator used for the feed.
tagsArray of StringsThe categories of the feeds it contains.
dublin_core_extensionsArray of StringsDublin Core is an international metadata standard formally known as the Dublin Core Metadata Element Set and includes 15 metadata (data that describes data) terms. These terms offer expanded cataloging information and improved document indexing for search engine programs.
itunes_extensionsArray of StringsIn order to get some iTunes(for Apple devices) specific information about the various podcasts or feeds stored in the Directory (like duration, if the content is explicit, and so on).
extensionsArray of StringsThe custom extension's used in the feed.
customArray of StringsPublishers can use custom objects in feeds. Custom objects can appear anywhere in a feed.
itemsArray of Items ObjectsAn array of objects that describe each object in the list.
items[a].idStringIt is unique for that item for that feed over time. If an item is ever updated, the id should be unchanged. New items should never use a previously-used id.
items[a].titleStringThe title of the item.
items[a].summaryStringIt is a plain text sentence or two describing the item.
items[a].content_htmlStringThis is the HTML or plain text of the item. Important: the only place HTML is allowed in this format is in content_html.
items[a].urlArray of Stringsthe URL of the resource described by the item. It’s the permalink.
items[a].date_modifiedStringSpecifies the modification date.
items[a].date_publishedStringSpecifies the published date.
items[a].authorsArray of Authors ObjectsThis specifies the item author. The author object has several members defined below.
items[a].authors[b].nameStringThe author’s name.
items[a].authors[b].emailStringEmail address of the author.
items[a].imageArray of Image ObjectsIt is the URL of the main image for the item.
items[a].image[b].urlStringThe URL of the image.
items[a].image[b].titleStringThe title of the image.
items[a].tagsArray of StringsTags tend to be just one word, but they may be anything. Note: they are not the equivalent of Twitter hashtags. Some blogging systems and other feed formats call these categories.
items[a].attachmentsArray of Attachments ObjectsLists of related resources. Would include an attachment that’s an audio or video file. Each attachment has several members described below.
items[a].attachments[b].urlStringSpecifies the location of the attachment.
items[a].attachments[b].lengthStringThe length on attachment.
items[a].attachments[b].mime_typeStringspecifies the type of the attachment, such as “audio/mpeg.”
items[a].dublin_core_extensionsArray of StringsDublin Core is an international metadata standard formally known as the Dublin Core Metadata Element Set and includes 15 metadata (data that describes data) terms. These terms offer expanded cataloging information and improved document indexing for search engine programs.
items[a].itunes_extensionsArray of StringsIn order to get some iTunes(for Apple devices) specific information about the various podcasts or items stored in the Directory (like duration, if the content is explicit, and so on).
items[a].extensionsArray of StringsThe custom extension's used in the items.
items[a].customArray of StringsPublishers can use custom objects in items. Custom objects can appear anywhere in a items.
Sample Response
1
{
2
"version": "https://jsonfeed.org/version/1",
3
"title": "ApyHub",
4
"description": "RSS Feed",
5
"home_page_url": "https://apyhub.com/rss",
6
"items": [
7
{
8
"title": "Advanced Email Validation using ApyHub’s API in Go",
9
"summary": "This tutorial shows how can you enhance email validation using Go, improving the overall quality and reliability of your email handling process.\n\nEmail validation is a crucial aspect of ensuring data accuracy and security, but relying solely on regular expression (regex) patterns for validation is insufficient.......",
10
"url": "https://apyhub.com/blog/advanced-email-validation-using-go"
11
}
12
]
13
}
If the detailed parameter is set to true, the API will return descrivtive json data attribute indicating the type of data associated with the URL.

HTTP Response Codes

The method may return one of the following HTTP status codes:
Status CodeDescription
200The request was successful.
400Request is invalid or url is not accessible.
401Required authentication information is either missing or not valid for the resource.
500There was an error in processing this request

Authentication

All API requests to ApyHub services need to be authenticated. Currently we support tokens or basic authentication mechanisms. You can generate and view your existing credentials from your workspace settings (on the left side of the navbar) and go to “API Keys".
Points to note:
  • Credential secrets are generated on the fly and are not stored in plain text, so on generating a credential please save the secrets somewhere safe.
  • Use the apy-token as the header parameter to pass the token.
  • Use the Authorization header to send the basic authentication credentials.

Error codes

1
{
2
"error": {
3
"code": 105,
4
"message": "Invalid URL"
5
}
6
}
To search for a specific error code, enter the code in the search box below. Alternatively, you can click on the button to view a complete list of all error codes.