RSS · Schema

RSS 2.0 Item

Schema describing an element inside an RSS 2.0 channel. All sub-elements are optional, but at least one of title or description must be present.

SyndicationRSSAtomJSON FeedOPMLContentXMLSpecificationStandard

Properties

Name Type Description
title string Title of the item.
link string URL of the item — typically the permalink to the corresponding HTML page.
description string Synopsis of the item. May contain HTML markup, typically escaped or in a CDATA section.
author string Email address of the author of the item, optionally followed by a name in parentheses.
category array Categories this item belongs to, optionally tagged with a taxonomy domain.
comments string URL of a page for comments relating to the item.
enclosure object Media object — most often used to attach podcast audio or video to the item. For maximum interoperability, the RSS Best Practices Profile recommends no more than one enclosure per item.
guid object Globally unique identifier for the item. When isPermaLink is true (default), the value MUST be a resolvable URL. Best practice is to provide a stable, opaque identifier and set isPermaLink=false when
pubDate string Indicates when the item was published, formatted per RFC 822. Items should not be published with future-dated pubDate as embargo, since aggregators do not honor this.
source object RSS channel that the item came from when republished from another feed.
View JSON Schema on GitHub

JSON Schema

rss-item-schema.json Raw ↑
{
  "$id": "rss-item-schema.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "RSS 2.0 Item",
  "description": "Schema describing an <item> element inside an RSS 2.0 channel. All sub-elements are optional, but at least one of title or description must be present.",
  "type": "object",
  "anyOf": [
    {
      "required": [
        "title"
      ]
    },
    {
      "required": [
        "description"
      ]
    }
  ],
  "properties": {
    "title": {
      "type": "string",
      "description": "Title of the item."
    },
    "link": {
      "type": "string",
      "format": "uri",
      "description": "URL of the item — typically the permalink to the corresponding HTML page."
    },
    "description": {
      "type": "string",
      "description": "Synopsis of the item. May contain HTML markup, typically escaped or in a CDATA section."
    },
    "author": {
      "type": "string",
      "description": "Email address of the author of the item, optionally followed by a name in parentheses."
    },
    "category": {
      "type": "array",
      "description": "Categories this item belongs to, optionally tagged with a taxonomy domain.",
      "items": {
        "type": "object",
        "required": [
          "value"
        ],
        "properties": {
          "value": {
            "type": "string"
          },
          "domain": {
            "type": "string"
          }
        }
      }
    },
    "comments": {
      "type": "string",
      "format": "uri",
      "description": "URL of a page for comments relating to the item."
    },
    "enclosure": {
      "type": "object",
      "description": "Media object — most often used to attach podcast audio or video to the item. For maximum interoperability, the RSS Best Practices Profile recommends no more than one enclosure per item.",
      "required": [
        "url",
        "length",
        "type"
      ],
      "properties": {
        "url": {
          "type": "string",
          "format": "uri",
          "description": "URL where the enclosure is located."
        },
        "length": {
          "type": "integer",
          "minimum": 0,
          "description": "Size of the enclosure in bytes."
        },
        "type": {
          "type": "string",
          "description": "MIME type of the enclosure (e.g., audio/mpeg, video/mp4).",
          "examples": [
            "audio/mpeg"
          ]
        }
      }
    },
    "guid": {
      "type": "object",
      "description": "Globally unique identifier for the item. When isPermaLink is true (default), the value MUST be a resolvable URL. Best practice is to provide a stable, opaque identifier and set isPermaLink=false when the value is not a URL (e.g., a tag: URI).",
      "required": [
        "value"
      ],
      "properties": {
        "value": {
          "type": "string"
        },
        "isPermaLink": {
          "type": "boolean",
          "default": true
        }
      }
    },
    "pubDate": {
      "type": "string",
      "description": "Indicates when the item was published, formatted per RFC 822. Items should not be published with future-dated pubDate as embargo, since aggregators do not honor this."
    },
    "source": {
      "type": "object",
      "description": "RSS channel that the item came from when republished from another feed.",
      "required": [
        "url",
        "value"
      ],
      "properties": {
        "url": {
          "type": "string",
          "format": "uri"
        },
        "value": {
          "type": "string"
        }
      }
    }
  },
  "additionalProperties": true
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/rss-item"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.