Skip to main content
GET
List posts

Authorizations

Authorization
string
header
required

Bearer an mk_live_ API key. A key is ORG-SCOPED: it grants full access to every resource in that organization, with no per-endpoint scoping (see the uid pseudo-permission on each operation). Manage keys at https://app.mymarky.ai.

Headers

Marky-Version
enum<string>

Opt into a dated API version. Omit to stay on the floor (2026-04-08) forever — unpinned clients never break. Pin to a newer date (e.g. 2026-08-06) to receive the newest response shapes. Unknown values fall back to the floor. See https://docs.mymarky.ai for the versioning model.

Available options:
2026-04-08,
2026-07-17,
2026-08-02,
2026-08-04,
2026-08-06
Example:

"2026-08-06"

Path Parameters

business_id
string
required

A UUID identifier.

Query Parameters

status
enum<string> | null

Filter by post status. NEW = draft awaiting your team's review (incl. freshly generated posts), DRAFT = approved by a reviewer on your team, REJECTED = declined by a reviewer, SCHEDULED = queued for a future time, PUBLISHED = already posted. DRAFT/REJECTED are your team's review verdicts — Marky does not gate publishing on them.

Available options:
NEW,
SCHEDULED,
PUBLISHED,
DRAFT,
REJECTED
limit
integer
default:20

Max results per page (1-100)

Required range: 1 <= x <= 100
cursor
string | null

Cursor from previous page's next_cursor

q
string | null

Keyword search. Returns only posts whose caption, title, or attached media's description/transcript contains this text (case-insensitive). Searching the media description is what finds 'the post about my dog' when the dog is in the image and the caption never says 'dog'. Trashed (REJECTED) posts are left out — pass status=REJECTED to search them. Combines with status, and pages with cursor just like an unfiltered listing.

view
enum<string>
default:full

Response detail. full (default) returns each post's whole caption plus publish_results, platform_overrides, and queue placement. summary returns a lean row — caption PREVIEW, media count + fingerprint, status, schedule, and metadata — with none of the heavy fields, for cheaply scanning or de-duping a large history without blowing your token budget.

Available options:
full,
summary

Response

Successful Response

items
PostResponse · object[]
required

This page of results.

next
string | null

Opaque cursor for the next page; null when there are no more. Pass it back verbatim as ?cursor=. Do not construct or decode it.