> ## Documentation index
>
> Fetch the complete documentation index at: https://andesine.app/docs/llms.txt
> Use it to find all pages before you explore further.

# List published entries

`GET https://api.andesine.app/content/entries`

Returns a flat page of entries from a publication snapshot. The default channel is published. On later pages, pass the returned snapshotID and pagination.nextCursor, and omit channel. Select direct children using collectionID, collectionPath, or collectionSlugPath, or include nested entries with descendants: true. descendants requires a collection scope. All property filters must match the assigned version. includeContent: true returns validated full content, properties, fragments, assets, and recorded schema metadata. An invalid full item fails the page. Keep the same scope and filters across pages. Results are ordered by ID, not display order.

Required API key permissions: read:publishing. Write permissions also grant read access for the same resource.

## Authentication

Use one of:

- `apiKey` (http, bearer, Andesine API key)
- `oauth` (http, bearer, Andesine OAuth access token)

## Parameters

### Query

- `cursor` (string, optional): Cursor from the previous page; keep the same filters.
- `limit` (number, optional): Default: `50`.
- `collectionID` (string, optional)
- `collectionPath` (string, optional): Decoded content path, such as /Docs/Page or coll_ID/Page. Names are case-sensitive. Do not URL-encode names before passing them to the SDK.
- `collectionSlugPath` (string, optional): Decoded derived slug path, such as /docs/getting-started or coll_ID/getting-started. Use the returned slugPath without URL encoding.
- `channel` (`PublishingChannelCode`, optional)
- `snapshotID` (string, optional)
- `descendants` (boolean, optional): Default: `false`.
- `includeContent` (boolean, optional): Default: `false`.
- `filters` (array of `PropertyFilter`, optional): Default: `[]`.
  - Any of: `TextPropertyFilter`
    - `kind` (constant, required): Value: `"text"`.
    - `key` (string, required): Property identifier.
    - `operator` (string, optional): One of: `"any"`, `"all"`, `"none"`. Default: `"any"`.
    - `values` (array of string, required)
  - Any of: `NumberPropertyFilter`
    - `kind` (constant, required): Value: `"number"`.
    - `key` (string, required): Property identifier.
    - `operator` (`ComparisonOperator`, required): One of: `"equals"`, `"notEquals"`, `"greaterThan"`, `"greaterThanOrEqual"`, `"lessThan"`, `"lessThanOrEqual"`.
    - `value` (number, required)
  - Any of: `BooleanPropertyFilter`
    - `kind` (constant, required): Value: `"boolean"`.
    - `key` (string, required): Property identifier.
    - `value` (boolean, required)
  - Any of: `DatePropertyFilter`
    - `kind` (constant, required): Value: `"date"`.
    - `key` (string, required): Property identifier.
    - `operator` (`ComparisonOperator`, required): One of: `"equals"`, `"notEquals"`, `"greaterThan"`, `"greaterThanOrEqual"`, `"lessThan"`, `"lessThanOrEqual"`.
    - `value` (string, required)

### Header

- `x-workspace-id` (string, optional): Required for OAuth: ID of the workspace to access. API keys use their own workspace.

## Responses

### 200

OK

Content type: `application/json`

- `channel` (`PublishingChannelCode`, required)
- `snapshotID` (string, required)
- `expiresAt` (any of, required)
  - Any of: Option 1 (string (date-time))
  - Any of: Option 2 (null)
- `pagination` (`Pagination`, required)
  - `nextCursor` (any of, required)
    - Any of: Option 1 (string)
    - Any of: Option 2 (null)
  - `hasMore` (boolean, required)
- `data` (any of, required)
  - Any of: Option 1 (array of `PublishedEntryContent`)
    - `id` (string, required)
    - `path` (string, required)
    - `slugPath` (string, required)
    - `collectionID` (any of, required)
      - Any of: Option 1 (string)
      - Any of: Option 2 (null)
    - `schema` (any of, required)
      - Any of: `ContentSchemaMetadata`
        - `revisionID` (string, required): Recorded effective schema revision.
        - `hash` (string, required): Hash of the effective schema definition.
      - Any of: Option 2 (null)
    - `name` (string, required): Entry name stored in the published version.
    - `version` (`EntryVersionSummary`, required)
      - `id` (string, required): ID of the version.
      - `entryID` (string, required): ID of the versioned entry.
      - `entryName` (string, required): Entry name stored in the version.
      - `hash` (string, required): Hash of the version content.
      - `name` (any of, required): Optional name of the version.
        - Any of: Option 1 (string)
        - Any of: Option 2 (null)
      - `reason` (string, required): Reason why the version was created. One of: `"auto"`, `"manual"`, `"revert"`, `"schema-migration"`, `"import"`.
      - `sourceVersionID` (any of, required): Source version used for a revert.
        - Any of: Option 1 (string)
        - Any of: Option 2 (null)
      - `contributorIDs` (array of string, required): Memberships that contributed to the version.
      - `createdAt` (string, required): Time when the version was created.
      - `updatedAt` (string, required): Time when the version name was last updated.
    - `assets` (array of `PublishedAsset`, required)
      - `assetID` (string, required)
      - `variant` (`AssetVariant`, required): One of: `"thumbnail"`, `"display"`, `"source"`.
      - `format` (`AssetFileFormat`, required): One of: `"jpeg"`, `"png"`, `"webp"`.
      - `width` (number, required)
      - `height` (number, required)
      - `byteSize` (number, required)
      - `url` (string, required)
    - `content` (`ContentNode`, required)
      - `type` (string, required)
      - `attrs` (object, optional)
        - `{key}` (any, optional)
      - `content` (array of `ContentNode`, optional)
      - `marks` (array of `ContentMark`, optional)
        - `type` (string, required)
        - `attrs` (object, optional)
          - `{key}` (any, optional)
      - `text` (string, optional)
    - `mdx` (string, optional): Content as MDX: the title as H1, properties as <Property name value /> elements in place, fragments as <Fragment name> elements, and images as asset:<assetID>; frontmatter properties are also read, and entries.update and versions.create import image URLs.
    - `fragments` (object, required)
      - `{key}` (`EntryFragment`, optional)
        - `name` (string, required): Source fragment name.
        - `content` (`ContentNode`, required)
    - `properties` (object, required)
      - `{key}` (`EntryProperty`, optional)
        - `name` (string, required): Source property name.
        - `type` (string, required): Property type. One of: `"text"`, `"number"`, `"checkbox"`, `"date"`, `"url"`, `"select"`, `"multi-select"`.
        - `value` (`EntryPropertyValue`, required)
          - Any of: Option 1 (string)
          - Any of: Option 2 (number)
          - Any of: Option 3 (boolean)
          - Any of: Option 4 (array of string)
          - Any of: Option 5 (null)
  - Any of: Option 2 (array of `PublishedEntrySummary`)
    - `path` (string, required)
    - `slugPath` (string, required)
    - `id` (string, required): ID of the published entry.
    - `name` (string, required): Entry name stored in the published version.
    - `version` (`PublishedVersion`, required)
      - `id` (string, required): ID of the assigned version.
      - `hash` (string, required): Hash of the assigned version content.
    - `collectionID` (any of, required)
      - Any of: Option 1 (string)
      - Any of: Option 2 (null)

### 400

400

Content type: `application/json`

Type: one of.

- One of: Option 1 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"BAD_REQUEST"`.
  - `status` (constant, required): Value: `400`.
  - `message` (string, required): Default: `"Bad Request"`.
  - `data` (`ValidationErrorData`, optional)
    - `hints` (array of string, optional): Suggested next steps. Wording can change; use error codes and structured data for program logic.
    - `issues` (array of `ValidationIssue`, optional)
      - `message` (string, required)
      - `code` (string, optional)
      - `path` (array of any of, optional)
        - Any of: Option 1 (string)
        - Any of: Option 2 (number)
        - Any of: Option 3 (object)
          - `key` (any of, required)
            - Any of: Option 1 (string)
            - Any of: Option 2 (number)
- One of: Option 2 (object)
  - `defined` (constant, required): Value: `false`.
  - `code` (string, required)
  - `status` (number, required)
  - `message` (string, required)
  - `data` (any, optional)

### 401

401

Content type: `application/json`

Type: one of.

- One of: Option 1 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"UNAUTHORIZED"`.
  - `status` (constant, required): Value: `401`.
  - `message` (string, required): Default: `"Unauthorized"`.
  - `data` (`ErrorData`, optional)
    - `hints` (array of string, optional): Suggested next steps. Wording can change; use error codes and structured data for program logic.
- One of: Option 2 (object)
  - `defined` (constant, required): Value: `false`.
  - `code` (string, required)
  - `status` (number, required)
  - `message` (string, required)
  - `data` (any, optional)

### 403

403

Content type: `application/json`

Type: one of.

- One of: Option 1 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"FORBIDDEN"`.
  - `status` (constant, required): Value: `403`.
  - `message` (string, required): Default: `"Forbidden"`.
  - `data` (`ForbiddenErrorData`, optional)
    - `hints` (array of string, optional): Suggested next steps. Wording can change; use error codes and structured data for program logic.
    - `missingPermissions` (array of string, optional)
    - `requiredPlan` (constant, optional): Value: `"pro"`.
    - `action` (string, optional): The requested action that was denied.
- One of: Option 2 (object)
  - `defined` (constant, required): Value: `false`.
  - `code` (string, required)
  - `status` (number, required)
  - `message` (string, required)
  - `data` (any, optional)

### 404

404

Content type: `application/json`

Type: one of.

- One of: Option 1 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"NOT_FOUND"`.
  - `status` (constant, required): Value: `404`.
  - `message` (string, required): Default: `"Not Found"`.
  - `data` (`ErrorData`, optional)
- One of: Option 2 (object)
  - `defined` (constant, required): Value: `false`.
  - `code` (string, required)
  - `status` (number, required)
  - `message` (string, required)
  - `data` (any, optional)

### 409

409

Content type: `application/json`

Type: one of.

- One of: Option 1 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"CONFLICT"`.
  - `status` (constant, required): Value: `409`.
  - `message` (string, required): Default: `"Conflict"`.
  - `data` (`ErrorData`, optional)
- One of: Option 2 (object)
  - `defined` (constant, required): Value: `false`.
  - `code` (string, required)
  - `status` (number, required)
  - `message` (string, required)
  - `data` (any, optional)

### 429

429

Content type: `application/json`

Type: one of.

- One of: Option 1 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"TOO_MANY_REQUESTS"`.
  - `status` (constant, required): Value: `429`.
  - `message` (string, required): Default: `"Too Many Requests"`.
  - `data` (`RateLimitErrorData`, optional)
    - `hints` (array of string, optional): Suggested next steps. Wording can change; use error codes and structured data for program logic.
    - `limit` (string, optional): The limit that was reached: a short-term rate limit, or a monthly API call, AI credit, or spending limit. One of: `"rate"`, `"api-calls"`, `"ai-credits"`, `"spending"`.
    - `retryAfterSeconds` (number, optional): Minimum delay before another attempt, in seconds. Also sent in Retry-After.
- One of: Option 2 (object)
  - `defined` (constant, required): Value: `false`.
  - `code` (string, required)
  - `status` (number, required)
  - `message` (string, required)
  - `data` (any, optional)

### 500

500

Content type: `application/json`

Type: one of.

- One of: Option 1 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"INTERNAL_SERVER_ERROR"`.
  - `status` (constant, required): Value: `500`.
  - `message` (string, required): Default: `"Internal Server Error"`.
  - `data` (`ErrorData`, optional)
- One of: Option 2 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"CONTENT_SCHEMA_INVALID"`.
  - `status` (constant, required): Value: `500`.
  - `message` (string, required): Default: `"CONTENT_SCHEMA_INVALID"`.
  - `data` (`ContentSchemaInvalidErrorData`, required)
    - `hints` (array of string, optional): Suggested next steps. Wording can change; use error codes and structured data for program logic.
    - `entryID` (string, optional)
    - `versionID` (string, optional)
    - `revisionID` (any of, required)
      - Any of: Option 1 (string)
      - Any of: Option 2 (null)
    - `issues` (array of `ContentSchemaIssue`, required)
      - `code` (string, required): One of: `"invalid_schema"`, `"invalid_structure"`, `"missing_field"`, `"unknown_field"`, `"duplicate_field"`, `"field_kind_mismatch"`, `"field_key_mismatch"`, `"property_type_mismatch"`, `"invalid_property_value"`, `"invalid_field_options"`, `"invalid_allowed_blocks"`, `"invalid_fragment_content"`.
      - `message` (string, required)
      - `path` (array of any of, required)
        - Any of: Option 1 (string)
        - Any of: Option 2 (number)
      - `fieldID` (string, optional)
- One of: Option 3 (object)
  - `defined` (constant, required): Value: `false`.
  - `code` (string, required)
  - `status` (number, required)
  - `message` (string, required)
  - `data` (any, optional)

### 503

503

Content type: `application/json`

Type: one of.

- One of: Option 1 (object)
  - `defined` (constant, required): Value: `true`.
  - `code` (constant, required): Value: `"SERVICE_UNAVAILABLE"`.
  - `status` (constant, required): Value: `503`.
  - `message` (string, required): Default: `"Service Unavailable"`.
  - `data` (`ErrorData`, optional)
- One of: Option 2 (object)
  - `defined` (constant, required): Value: `false`.
  - `code` (string, required)
  - `status` (number, required)
  - `message` (string, required)
  - `data` (any, optional)
