Gallery Platform API
Reference

List campaigns

Lists the gallery's bulk marketing campaigns with cursor pagination. Filter by `q` (name/subject substring) or `status`.

GET
/gallery/campaigns

Lists the gallery's bulk marketing campaigns with cursor pagination. Filter by q (name/subject substring) or status.

Authorization

bearerAuth campaigns:read
AuthorizationBearer <token>

A gallery API key, sent as Authorization: Bearer gpk_… (or the x-api-key header).

In: header

Scope: campaigns:read

Query Parameters

limit?integer

Page size. Defaults to 20; the maximum is 100.

Range1 <= value <= 100
Default20
cursor?string

Opaque cursor from the previous page's next_cursor. Omit for the first page.

q?string

Free-text search over the resource's searchable fields.

Lengthlength <= 200
status?string

Filter to the given status; the schema's enum lists the values.

Value in

  • "draft"
  • "scheduled"
  • "sending"
  • "sent"
  • "paused"
  • "canceled"
sort?string

Sort by one of: created, updated, scheduled (default created).

Value in

  • "created"
  • "updated"
  • "scheduled"
dir?string

Sort direction (default desc).

Value in

  • "asc"
  • "desc"

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

{  "data": [    {      "id": "string",      "name": "string",      "status": "draft",      "subject": "string",      "preview_text": "string",      "from_name": "string",      "from_email": "string",      "reply_to": "string",      "sending_domain_ref": "string",      "audience_list_id": "string",      "design_json": null,      "html": "string",      "text_body": "string",      "ab_config": null,      "scheduled_at": "string",      "sent_at": "string",      "metadata": {        "property1": "string",        "property2": "string"      },      "created_at": "string",      "updated_at": "string"    }  ],  "next_cursor": "string"}