Cognis
Meta

Claim Ad

POST
/org/{orgId}/meta/ad-claims

Claim an externally-launched Meta ad for tracking: registers the ad, anchors it to a Cognis creative (linked or a provisioned shell), writes an ownership binding, and applies custom fields. No launch is performed.

Required scopes: meta:ads:claim

Authorization

bearerAuth
AuthorizationBearer <token>

API key (prefix: cogn_) from Account → Developer

In: header

Path Parameters

orgId*string

Organization ID (prefix: org_)

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "http://localhost:3013/api/v1/org/string/meta/ad-claims" \  -H "Content-Type: application/json" \  -d '{    "adAccountId": "string",    "metaAdId": "string",    "creative": {}  }'
{
  "success": true,
  "data": {
    "metaAdId": "1234567890",
    "creativeId": "cr_abc123",
    "provisioningMode": "api_track",
    "creativeProvisioned": true,
    "ownershipBindingCreated": true,
    "topologyBindingCreated": false,
    "customFieldsApplied": 2
  },
  "message": "Success",
  "traceId": "req_abc123"
}
{
  "success": false,
  "message": "Invalid data",
  "errors": [
    {
      "code": 400,
      "message": "Invalid data"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Unauthorized",
  "errors": [
    {
      "code": 401,
      "message": "Unauthorized"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Forbidden",
  "errors": [
    {
      "code": 403,
      "message": "Forbidden"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Not found",
  "errors": [
    {
      "code": 404,
      "message": "Not found"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Conflict",
  "errors": [
    {
      "code": 409,
      "message": "Conflict"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "string",
  "errors": [
    {
      "code": 0,
      "message": "string",
      "details": {}
    }
  ],
  "traceId": "string",
  "params": {},
  "readableMessage": "string"
}
{
  "success": false,
  "message": "Rate limit exceeded",
  "errors": [],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Unexpected error",
  "errors": [
    {
      "code": 500,
      "message": "Unexpected error"
    }
  ],
  "traceId": "req_xxx"
}