solarOS Organization API

Organization API

List Campaigns

Lists tenant-scoped Campaign records with cursor pagination, status/type/isActive filters, sorting, and External References. Supply externalSystem, externalObject, and externalId together to filter by a canonical External Reference. Required scope: campaigns:read.

/api/v1/campaigns

Lists tenant-scoped Campaign records with cursor pagination, status/type/isActive filters, sorting, and External References. Supply externalSystem, externalObject, and externalId together to filter by a canonical External Reference. Required scope: campaigns:read.

List Campaigns. Use an organization API key with campaigns:read. Check the response envelope and meta.requestId before triggering dependent workflow steps.

Required scopes

campaigns:read

Parameters

NameInTypeDescription
limitqueryintegerMaximum number of Campaigns to return. Values above 100 are capped at 100.
cursorquerystringOpaque pagination cursor from the previous response meta.nextCursor value.
statusquerystringFilter Campaigns by integration-defined status.
typequerystringFilter Campaigns by integration-defined campaign type.
isActivequerytrue | falseFilter active or inactive Campaigns.
sortDirqueryasc | descSort direction for createdAt/id ordering.
externalSystemquerystringExternal Reference system filter. Supply with externalObject and externalId for exact reconciliation lookup.
externalObjectquerystringExternal Reference object filter. Supply with externalSystem and externalId.
externalIdquerystringExternal Reference id filter. Supply with externalSystem and externalObject.

Request body

This endpoint does not accept a JSON request body.

Responses

200

Campaign list envelope

#/components/schemas/OrgApiListEnvelope

400

Unsupported filter or sort

#/components/schemas/OrgApiError

401

Missing or invalid organization API key

#/components/schemas/OrgApiError

402

Organization billing access or an endpoint-specific business quota denied the request

#/components/schemas/OrgApiError

403

Missing campaigns:read scope

#/components/schemas/OrgApiError

429

Rate limit exceeded

#/components/schemas/OrgApiError

Errors

400 Unsupported filter or sort401 Missing or invalid organization API key402 Organization billing access or an endpoint-specific business quota denied the request403 Missing campaigns:read scope429 Rate limit exceeded

Static examples

curl -X GET "$SOLAROS_BASE_URL/api/v1/campaigns" \
  -H "Authorization: Bearer $SOLAROS_API_KEY"