Agent-readable docs index: /llms.txt. Full docs in one file: /llms-full.txt. Download /docs.zip to grep all markdown files locally.

Get a news article

/api/v1/news/{id}GET
Full stored record for one article, including its description, truncated body, and topic.
Authorization
bearerAuth *Bearer <token>
Session token from the app, or an API key (the ak_ prefix), sent as a Bearer token or an ?api_key= query parameter.. Token in: header
Response
200 · The article
id *string
Opaque, stable article identifier.
title?stringnull
Headline, where the source reported one.
url *string
Link to the article on the publisher's site.
source *string
Source id the article was collected under. See /api/v1/news/filters for the values in use.
published_date?string,null (date-time)
Publication time reported by the source, never later than when we ingested it.
language?stringnull
ISO 639-1 code, resolved from the source catalog. Null when the source is not in the catalog.
topic *"politics" | "sports" | "crypto" | "other"
Coarse beat of the publisher: politics, sports, crypto, or other. A source with no mapping is other.
image_url?stringnull
Lead image URL where the source provides one.
publisher?stringnull
Publishing outlet name as reported by the source.
created_at?string,null (date-time)
When this row was first recorded.
author?stringnull
Byline where the source reports one.
description?stringnull
Short summary supplied by the source.
content?stringnull
Truncated body text, typically around 200 characters.
updated_at?string,null (date-time)
When this row was last refreshed by a re-ingest of the same URL.
404 · No article with that id
No article with that id
503 · The read exceeded its time budget, or the database cancelled it during recovery. `error` is `service_unavailable`. `message` is `The request exceeded the database time budget. Retry in a few seconds.` or `The database cancelled this read during recovery. Retry in a few seconds.` Wait `Retry-After` seconds before retrying.
error?string
Stable, machine-readable code identifying the failure; branch on this rather than on message. One of bad_request, unauthorized, forbidden, not_found, conflict, service_unavailable, upstream_error, service_error, or internal_error.
message?string
Human-readable explanation, safe to show to a user. For client errors it names the specific problem; for server-side failures it is a generic notice and the underlying detail is deliberately withheld.
Request example
curl -X GET "https://api.adjacent.markets/api/v1/news/<id>" \ -H "Authorization: Bearer <token>"