---
title: "Articles"
method: GET
path: "/v1/articles"
tags: ["articles"]
---

# Articles

`GET /v1/articles`

## Request

- Base URL: `https://api.rayana.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.rayana.ai/v1/articles`
- Auth: none declared

One page of the public articles feed, newest first. Free tier, same
payload for every caller — this is published, unauthenticated-in-spirit
content; the API key requirement is the same infra-level seam every
endpoint uses, not a tier gate on this content.

Paged rather than a bare ``limit``: the feed is append-only and the archive
is the point of the publisher lane, so without ``offset`` every article past
the newest ``limit`` becomes unreachable — and unreachable to a crawler too,
since the sitemap walks this same endpoint. ``total`` is returned so a
client can render a pager without probing for the end.

## Query parameters

- `limit` integer
- `offset` integer

## Headers

- `X-API-Key` string, nullable

## Response `200`

Successful Response

- ArticlesResponse
  - `count` integer, required
  - `articles` ArticleSummary[], required
    - `slug` string, required
    - `ticker` string, required
    - `headline` string, required
    - `dek` string, nullable
    - `trigger_type` string, required
    - `published_at` string, nullable
  - `total` integer, nullable
  - `limit` integer, nullable
  - `offset` integer, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/rayana/apis/orca-api.md) · [All operations](https://skmtc.dev/rayana/apis/orca-api/llms.txt) · [OpenAPI document](https://skmtc.dev/rayana/apis/orca-api/revisions/ef0e2be9d10a?raw)
