---
title: "List blogs"
method: GET
path: "/v1/accounts/{accountId}/blogs"
tags: ["Blogs"]
---

# List blogs

`GET /v1/accounts/{accountId}/blogs`

Lists the blogs on the connected store, newest-first as the platform
returns them. Cursor-paginated: pass `limit` (1-50, default 20) and the
`cursor` from a previous response's `nextCursor`; `nextCursor` is null
when there are no more pages.

Supported on Shopify (platform `shopify`). Accounts on platforms
without blogs support return 400; a blogs-capable platform that lacks
this specific operation returns 405.

## Path parameters

- `accountId` string, required

## Query parameters

- `limit` integer
- `cursor` string

## Response `200`

Blogs listed

- object
  - `platform` 'shopify'
  - `blogs` Blog[]
    - `id` string — Platform-native blog id (numeric string for Shopify).
    - `platform` 'shopify'
    - `title` string
    - `handle` string — URL slug of the blog.
  - `nextCursor` string, nullable — Cursor for the next page; null when there are no more pages.

## Other responses

- `400` — Invalid request
- `401` — Unauthorized
- `403` — The platform rejected the request (code insufficient_permissions); reconnect the Shopify account to restore access.
- `404` — Account not found or not accessible (code account_not_found).
- `405` — Platform does not support listing blogs.
- `429` — Rate limited, either by Zernio or by Shopify. Retry later.

---

[API](https://skmtc.net/zernio/apis/zernio-api.md) · [All operations](https://skmtc.net/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zernio/zernio-api/revisions/3c7cf84cec44/schema)
