Skip to main content
GET
Company Posts index

Authorizations

Authorization
string
header
required

Bearer token authentication. Accepts company-admin tokens with storefront.view for read operations and storefront.update for writes and scan triggers (legacy per-resource grants like categories.update / products.view / etc. are still accepted during the migration), required on every company operation. Storefront public operations under /api/v202604/{resource} and /api/v202604/{resource}/{slug} are unauthenticated (security: []).

Query Parameters

lang
string

Response locale. ISO code (e.g. fr, de). When omitted, responds in the company's default locale. On the public surface, falls back to en for any translated field missing in the requested locale.

Example:

"fr"

q
string

Free-text search. Backed by Searchkick / Elasticsearch over translation-aware title and description fields.

page[cursor]
string

Rotulus cursor returned in meta.pagination.next_cursor (or prev_cursor). Omit on the first page.

page[limit]
integer
default:25

Page size. Default 25. Max 100. Requests above 100 return 422.

Required range: 1 <= x <= 100
filter[country]
string

ISO-2 country code. Restricts the catalog to resources available in that country — combining the with_country_iso scope's OR-empty semantics: unrestricted resources (no access_countries rows) match every country.

Example:

"GB"

filter[language]
string

ISO locale. Restricts the catalog to resources translated in that locale.

Example:

"fr"

filter[status]
enum<string>

One of draft, scheduled, published, or archived. Restricts the index to a single lifecycle state. Company-surface only. Matches the STORED status column, not the read-time-resolved status: a past-due scheduled row (its publish_at has passed, so it renders as published) is matched by filter[status]=scheduled, NOT by filter[status]=published.

Available options:
draft,
scheduled,
published,
archived
filter[active]
enum<string>

Company-surface only. "true" / "false" restrict to active / inactive rows; a blank value (filter[active]=) means "no filter" — it is NOT where(active: nil).

Available options:
,
true,
false
filter[category_id]
integer

Restrict the catalog to posts filed under one Category.

filter[collection_id]
integer

Restrict the catalog to posts appearing in one Collection.

sort
enum<string>

Single sort key. Prefix with - for descending. Default sort is newest blog posts first (post_date DESC NULLS LAST).

Available options:
post_date,
-post_date,
title,
-title,
created_at,
-created_at

Response

A page of posts (every lifecycle state).

Shared success envelope for list / show / create / update responses: the resource payload is returned alongside a top-level integer status and meta. Composed onto each resource response via allOf.

status
integer
required
Example:

200

meta
object
required

Response metadata included on every successful response body. request_id and timestamp are always present; list endpoints also add pagination.

posts
object[]
required