Developer platform
A news wire designed for agents.
Fetch fresh, attributable journalism with stable IDs, explicit usage rights, sources, claims, correction history and machine-native formats.Quickstart
Useful without a key. Valuable with one.
Public requests return citable metadata, summaries, provenance, rights and corrections. A licensed Bearer token adds the structured body, review details and contracted commercial scopes.
Create a governed evaluation project →
curl "https://nationaltribune.com/api/v1/content?section=politics&limit=10" \ -H "Accept: application/json" # Licensed response curl "https://nationaltribune.com/api/v1/content/nt_01..." \ -H "Authorization: Bearer nt_live_..."
API v1
Endpoints
/api/v1/content/api/v1/content/:id/api/v1/content/:id/artifacts/api/v1/export.ndjson/api/v1/changes?since=ISO-8601/api/v1/entities/api/v1/claims/api/v1/events/api/v1/manifest/api/v1/plans/api/v1/health/api/v1/webhooks/api/v1/webhooks/feeds/ninjs/feed.xmlFilters
section, type, updated_after, q and limit. Limits are capped at 100 records per request; enterprise delivery supports approved channel artifacts, signed webhooks, incremental NDJSON and correction-aware deltas.
OpenAPI 3.1 · JSON Schema 2020-12 · Dataset catalog · Pricing and rights
Canonical record
Content stays understandable outside the page.
{
"id": "nt_01...",
"contentType": "reportage",
"headline": "...",
"dek": "...",
"version": 4,
"contentHash": "sha256...",
"body": [{ "type": "paragraph", "text": "..." }],
"sources": [{ "name": "...", "url": "..." }],
"claims": [{ "text": "...", "confidence": 92 }],
"entities": [{ "name": "...", "kind": "organization" }],
"events": [{ "name": "...", "status": "developing" }],
"corrections": [],
"provenance": { "reviewedBy": "National Desk" },
"rights": { "retrievalAllowed": true, "trainingAllowed": false }
}The same record renders the public page, Schema.org graph, RSS, IPTC ninjs, AI API and distribution jobs. Commercial classifications—reportage, opinion, sponsored and affiliate review—cannot disappear when the content changes format.
Rights
Permissions are data.
Each item separately declares retrieval, embeddings, model training, redistribution, commercial use and attribution requirements. The API repeats the canonical licensing URL and returns an X-Content-License header on item requests.
Corrections & deltas
Never train on yesterday by accident.
Poll /api/v1/changes?since=... to receive durable content.published, content.updated, content.corrected, content.rights_changed and archival events. Each event carries a stable content ID, monotonically increasing version and canonical content hash.
Signed delivery
Subscribe instead of polling.
Create a subscription with a licensed key that has webhooks:write. The signing secret is returned once and encrypted at rest. National Tribune retries failed delivery with exponential backoff and disables endpoints after ten consecutive failures.
curl -X POST "https://nationaltribune.com/api/v1/webhooks" \
+ -H "Authorization: Bearer nt_live_..." \
+ -H "Content-Type: application/json" \
+ -d '{"url":"https://buyer.example/news","events":["content.published","content.corrected"]}'
# Verify HMAC-SHA256 over:
# {x-nt-timestamp}.{raw_request_body}
# Compare with x-nt-signature: v1={hex_digest}Interoperability
Use the format your system already speaks.
- National Tribune Content API 1.0 for product-native records.
- IPTC ninjs 3.2 for newsroom and wire interoperability.
- Schema.org JSON-LD on every canonical article.
- RSS, news sitemap, regular sitemap, robots.txt and llms.txt for discovery.