CreativeOps API

v1.0OpenAPI Spec

Getting Started

The CreativeOps API lets you programmatically create jobs, manage pipelines, browse assets, and integrate with external tools. All endpoints use JSON and require an API key.

Authentication

Include your API key in the Authorization header:

Header
Authorization: Bearer co_live_xxxxxxxxxxxxx

Rate Limits

100 requests/minute per API key. Exceeded requests return 429 with a Retry-After header.

Response Format

Success

JSON
{
  "success": true,
  "data": { ... },
  "meta": { "page": 1, "limit": 20, "total": 45 }
}

Error

JSON
{
  "success": false,
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Invalid or expired API key"
  }
}

Jobs

Pipelines

Assets

Clients

Webhooks

Webhook Events

Webhooks are signed with HMAC-SHA256. Verify the X-CreativeOps-Signature header.

job.createdNew job submitted
job.startedJob execution began
job.completedJob finished successfully
job.failedJob execution failed
job.approvedJob approved
pipeline.createdPipeline started
pipeline.milestonePipeline reached 25/50/75/100%
pipeline.completedAll pipeline jobs done
asset.createdNew asset generated
request.submittedClient request submitted
javascript
// Verify webhook signature (Node.js)
const crypto = require('crypto');
const signature = req.headers['x-creativeops-signature'];
const expected = 'sha256=' + crypto
  .createHmac('sha256', WEBHOOK_SECRET)
  .update(JSON.stringify(req.body))
  .digest('hex');
const valid = crypto.timingSafeEqual(
  Buffer.from(signature), Buffer.from(expected)
);