---
title: GET /api/articles
description: List the authenticated user's articles, newest first — a slim list without full content. Backs scripto articles list.
---

<Note>

The CLI equivalent is `scripto articles list` (or `--json`).

</Note>

Returns the authenticated user's articles, newest first. This is the **slim** list — no full `content` — built for the Articles page. Fetch a full article with [GET /api/articles/[id]](/api-reference/get-article).

## Endpoint

```text
GET https://scripto.codika.io/api/articles
```

## Auth

`Authorization: Bearer scripto_…`

## Response (200)

```json
{
  "success": true,
  "data": {
    "articles": [
      {
        "id": "0a1b2c3d-…",
        "title": "Our launch",
        "slug": "our-launch",
        "status": "published",
        "coverImage": "https://…/hero.png",
        "wordCount": 1240,
        "createdAt": "2026-06-20T10:00:00.000Z",
        "updatedAt": "2026-06-25T14:30:00.000Z"
      }
    ]
  }
}
```

Sorted by `updatedAt` descending.

## Errors

| HTTP | `code` | Cause |
|---|---|---|
| 401 | `unauthenticated` | Missing or invalid key. |
| 500 | `internal` | Backend error. |

## curl

```bash
curl -sS https://scripto.codika.io/api/articles \
  -H "Authorization: Bearer $SCRIPTO_API_KEY"
```

## Next

- **[POST /api/articles](/api-reference/create-article)** — create a draft.
- **[GET /api/articles/[id]](/api-reference/get-article)** — one article, full content.
