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

# List articles

`GET /api/articles`

## Request

- Base URL: `https://www.polyblog.io`
- URL: `https://www.polyblog.io/api/articles`
- Auth: one of:
  - HTTP basic
  - API key in header `Authorization`

Lists the articles of a blog. Requires the `articles:read` scope. Anonymous (unauthenticated) callers only ever see published articles; drafts are visible only to an API key or operator token of the owning organization.

## Query parameters

- `blogId` string, required
- `locale` string
- `published` boolean
- `slug` string
- `limit` integer
- `skip` integer

## Response `200`

A list of articles

- object[]
  - `_id` string
  - `blogId` string
  - `title` string
  - `description` string
  - `content` string
  - `slug` string
  - `locale` string
  - `coverUrl` string
  - `published` boolean
  - `creationTime` string, date-time
  - `lastEditTime` string, date-time

## Other responses

- `401`: Missing or invalid credentials
- `403`: API key is missing the `articles:read` scope
- `429`: API key rate limit exceeded

---

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