Tag Creative Assets (Aperture)

Step 1 — Submit assets for tagging

POST /v1/media/aperture
Content-Type: application/json
Authorization: Bearer <api-key>   (scope: aperture:read_write)

{
  "creatives": [
    { "id": "creative-001", "url": "https://your-cdn.com/creative-001.mp4" },
    { "id": "creative-002", "url": "https://your-cdn.com/creative-002.mp4" }
  ],
  "clientTags": {
    "brand": "vidmob",
    "channels": "meta,tiktok"
  }
}

Constraints:

  • creatives array: minimum 1, maximum 200 items per call.
  • clientTags: maximum 10 key/value pairs.

Response:

{
  "jobId": "07fd81fc-41fc-41f6-90ea-72bf141996dc",
  "status": "QUEUED",
  "dateCreated": "2026-04-22T14:30:00.000Z",
  "creativeIdentifiers": ["creative-001", "creative-002"],
  "clientTags": { "brand": "vidmob", "channels": "meta,tiktok" }
}

Step 2 — Poll job status / retrieve tags

GET /v1/media/aperture/{jobId}
Authorization: Bearer <api-key>   (scope: aperture:read)

Response:

{
  "jobId": "07fd81fc-...",
  "status": "COMPLETED",
  "dateCreated": "2026-04-22T14:30:00.000Z",
  "dateUpdated": "2026-04-22T14:32:10.000Z",
  "downloadUrlJSON": "https://downloads.vidmob.com/creative-aperture/<jobId>.json",
  "downloadUrlCSV": "https://downloads.vidmob.com/creative-aperture/<jobId>.csv",
  "creativeIdentifiers": ["creative-001", "creative-002"],
  "clientTags": { "brand": "vidmob", "channels": "meta,tiktok" },
  "errors": {}
}

Common status values: QUEUED, PROCESSING, COMPLETED, FAILED. Tags themselves are not inline in the response — fetch downloadUrlJSON (or downloadUrlCSV) to retrieve the structured tag data.