---
title: "List Articles"
method: GET
path: "/v3/articles"
tags: ["Threat Briefs"]
---

# List Articles

`GET /v3/articles`

Returns a paginated list of published articles (Threat Briefs). Supports
filtering by category, search term, and pagination parameters.

## Query parameters

- `page` integer
- `size` integer
- `search` string
- `category` string
- `sort_by` string
- `sort_desc` 'true' | 'false'

## Response `200`

A paginated list of published articles.

- ListArticlesResponse
  - `metadata` ArticleListMetadata
    - `total_results` integer — Total number of articles matching the query.
    - `current_page` integer — Current page number.
    - `count` integer — Number of articles returned in this page.
  - `data` Article[]
    - `id` string, uuid — Unique article identifier.
    - `title` string — Article title.
    - `subtitle` string — Article subtitle.
    - `description` string — Article description or body text.
    - `category` ArticleCategory
      - `id` string, uuid — Unique category identifier.
      - `label` string — Display label for the category.
      - `value` string — Machine-readable category value.
      - `color` string — Hex color code for the category.
    - `author` string — Name of the article author.
    - `s3_url` string — URL to the article PDF file.
    - `thumbnail_url` string — URL to the article thumbnail image.
    - `created_at` string, date-time — Timestamp when the article was created.
    - `updated_at` string, date-time — Timestamp when the article was last updated.
    - `published_at` string, date-time — Timestamp when the article was published. Omitted if unpublished.
    - `is_published` boolean — Whether the article is currently published.

## Other responses

- `400` — Bad request - request syntax is invalid for the specified endpoint. Verify request syntax and try again.
- `401` — Unauthorized. Please check your API key.
- `403` — Forbidden - request is not authorized due to an invalid API key or plan limitations. If due to plan limitations, contact sales@greynoise.io to upgrade your plan and unlock full results.
- `429` — Too many requests. You've hit the rate-limit.
- `500` — Unexpected error

---

[API](https://skmtc.dev/greynoise/apis/greynoise-api.md) · [All operations](https://skmtc.dev/greynoise/apis/greynoise-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/greynoise/greynoise-api/revisions/30942574656d/schema)
