apyhub
Back
DATA EXTRACTION · DEVELOPER TOOLS

Convert RSS to JSON API

Hosted on ApyHub

What it does

The RSS to JSON API turns a feed into JSON your code can read. Send a feed URL, or upload the XML. You get the feed's items back as structured JSON, ready to store, filter or render.

Use the /url endpoint to fetch and parse a remote feed in one step. That is the usual case: polling a blog, a news site or a podcast feed on a schedule. Use the /file endpoint when you already hold the XML, such as an archived feed or one a partner sent you. Set detailed=true when you need [what detailed adds] instead of the summary fields.

It handles both of the feed formats in use on the web today. RSS is the common one. Atom is the format WordPress, Blogger and YouTube publish, and a parser built only for RSS will choke on it. Either one works here, with the same call.

Why call an API instead of installing a feed parser? Because feeds in the wild are inconsistent. Missing dates. Odd encodings. Namespaced extensions. Formats that differ from one publisher to the next. Those edge cases show up one at a time in production, and then they are yours to fix. Here they stay on this side of the call.

Most feeds update a few times a day at most. Cache the result and poll on a sensible interval rather than parsing on every page load.

Working with XML more generally? Use Convert XML to JSON for arbitrary XML documents, or Convert JSON to XML for the reverse.

▣ ENDPOINT 01 / 02
POST
Parse uploaded RSS/Atom XML to JSON
https://api.eu.apyhub.com/apyhub/convert-rss-to-json/file

QUICKSTART

GUIDE

Quickstart

Upload an RSS or Atom XML file to convert it into JSON.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-rss-to-json/file" \
  -H "apy-token: $APY_TOKEN" \
  -F "file=@/path/to/feed.xml"

What you'll get back

Returns a JSON object. The output schema does not declare any specific top-level fields, so the exact response shape may vary.

TRY ITLIVE · 150 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*
RSS or Atom XML file (.xml). Mandatory.

About this endpoint

What it does

Parses an uploaded RSS or Atom XML file and converts it to JSON. The request sends a binary .xml file, and the response is a JSON object whose detailed shape is not defined in the schema.

Query Parameter(s)

AttributeTypeMandatoryDescription
detailedBooleanNoDefault: false

Request Body

ParameterTypeMandatoryDescription
fileStringYesBinary RSS or Atom XML file (.xml). Mandatory.

Response

Returns a JSON object, but the output schema does not define a fixed set of top-level fields; additional properties are allowed.

ParameterTypeMandatoryDescription

Query parameters

Name
Type
Description
detailedOPTIONAL
boolean
DEFAULT false

Body

Name
Type
Description
bodyREQUIRED
object

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ ENDPOINT 02 / 02
POST
Parse remote RSS/Atom feed URL to JSON
https://api.eu.apyhub.com/apyhub/convert-rss-to-json/url

QUICKSTART

GUIDE

Quickstart

Convert an RSS feed URL to JSON by sending the feed link in the request body.

curl -X POST "https://api.eu.apyhub.com/apyhub/convert-rss-to-json/url?detailed=false" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://apyhub.com/api/rss"}'

What you'll get back

Returns a JSON object. The output schema does not declare any specific top-level fields, so the exact response shape can vary.

TRY ITLIVE · 150 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*

About this endpoint

What it does

Parses a remote RSS or Atom feed from a URL and returns the feed data as JSON. The request sends the feed URL in the body, and the response schema does not define a fixed JSON shape beyond returning an object.

Query Parameter(s)

AttributeTypeMandatoryDescription
detailedBooleanNoDefault: false

Request Body

ParameterTypeMandatoryDescription
urlStringYesThe remote feed URL to parse. Must be a URI.

Response

Returns a JSON object. The output schema does not define specific top-level fields; it allows additional properties, so the exact response shape is not fixed.

ParameterTypeMandatoryDescription

Query parameters

Name
Type
Description
detailedOPTIONAL
boolean
DEFAULT false

Body

Name
Type
Description
bodyREQUIRED
object
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.