Create a job
Creates a job (a workspace's brief) in the caller's resolved workspace (see Passo-Workspace; an API key uses its own workspace). The caller must be a member of that workspace. Body: title (required), and optional platform (instagram|youtube), postingWindowStart and postingWindowEnd (ISO dates, YYYY-MM-DD; end must be on or after start). Optional deliverables: an array of lines {type, quantity, description?} (quantity is a required integer 1-100 with no default; description defaults to the type's label; when the job's platform is set, every deliverable must match that platform). Returns the created job, echoing the created deliverables.
A Supabase-issued OAuth user access token. On collection endpoints, pair with a Passo-Workspace header to pick a workspace.
In: header
Header Parameters
The workspace's public id (e.g. wsp_abc) to operate in. OAuth callers with more than one workspace must send it; a single-workspace caller may omit it. Ignored for API keys (the key is pinned to its workspace). A uuid or another resource's id is rejected with a 400.
^wsp_Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/jobs" \ -H "Content-Type: application/json" \ -d '{ "title": "string" }'{ "id": "string", "workspaceId": "string", "title": "string", "status": "open", "platform": "instagram", "postingWindowStart": "string", "postingWindowEnd": "string", "createdAt": "string", "updatedAt": "string", "deliverables": [ { "id": "string", "type": "instagram_reel", "quantity": -9007199254740991, "position": -9007199254740991, "description": "string" } ]}