Dates
Use ISO 8601 datetime strings for scheduled post times.
2026-07-01T09:00:00ZUse UTC when possible. If you generate local times in your app, convert them to a timezone-aware ISO string before sending the request.
Pagination
List endpoints can accept pagination parameters such as page and perPage when supported by the endpoint.
Use small page sizes for user-facing interfaces and larger page sizes only for background jobs that can tolerate slower responses.
Media URLs
Post media URLs must be absolute URLs that Ocoya can fetch.
https://example.com/image.jpgAvoid private URLs, expiring URLs with very short lifetimes, and files that require cookies or custom request headers.
Brand-Scoped Requests
Most publishing and workflow operations need a brandId.
Use GET /brands first, then pass the selected brand ID to endpoints such as:
GET /brands/{brandId}GET /channelsGET /postPOST /postPOST /post/aiGET /campaignsPOST /campaignsGET /workflow
Channel IDs
Use GET /channels?brandId=BRAND_ID to find the channelIds that posts should target.
Only use profiles connected to the same brand as the post.