Properties
| Name | Type | Description |
|---|---|---|
| id | string | Unique content identifier path |
| type | string | Content type |
| sectionId | string | Section identifier |
| sectionName | string | Human-readable section name |
| webPublicationDate | string | Publication date in ISO 8601 format |
| webTitle | string | Article headline |
| webUrl | string | URL on theguardian.com |
| apiUrl | string | API URL for this content item |
| isHosted | boolean | Whether the content is hosted by the Guardian |
| pillarId | string | Content pillar identifier |
| pillarName | string | Content pillar name |
| fields | object | Additional fields (when show-fields is specified) |
| tags | array |
JSON Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique content identifier path"
},
"type": {
"type": "string",
"description": "Content type",
"enum": [
"article",
"liveblog",
"gallery",
"interactive",
"picture",
"video",
"crossword",
"audio"
]
},
"sectionId": {
"type": "string",
"description": "Section identifier"
},
"sectionName": {
"type": "string",
"description": "Human-readable section name"
},
"webPublicationDate": {
"type": "string",
"format": "date-time",
"description": "Publication date in ISO 8601 format"
},
"webTitle": {
"type": "string",
"description": "Article headline"
},
"webUrl": {
"type": "string",
"format": "uri",
"description": "URL on theguardian.com"
},
"apiUrl": {
"type": "string",
"format": "uri",
"description": "API URL for this content item"
},
"isHosted": {
"type": "boolean",
"description": "Whether the content is hosted by the Guardian"
},
"pillarId": {
"type": "string",
"description": "Content pillar identifier"
},
"pillarName": {
"type": "string",
"description": "Content pillar name"
},
"fields": {
"type": "object",
"description": "Additional fields (when show-fields is specified)",
"properties": {
"headline": {
"type": "string"
},
"body": {
"type": "string"
},
"thumbnail": {
"type": "string"
},
"shortUrl": {
"type": "string"
},
"byline": {
"type": "string"
},
"trailText": {
"type": "string"
},
"wordcount": {
"type": "string"
},
"starRating": {
"type": "string"
},
"standfirst": {
"type": "string"
},
"lastModified": {
"type": "string"
},
"publication": {
"type": "string"
}
}
},
"tags": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Tag"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ContentItem"
}
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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/contentitem"
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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.