Skip to main content
POST
/
vendor
/
{org_token}
/
cars
/
{car_id}
/
reject
Reject a Creative
curl --request POST \
  --url https://api.framen.com/vendor/{org_token}/cars/{car_id}/reject \
  --header 'Content-Type: application/json' \
  --data '
{
  "rejection_reasons": [
    "<string>"
  ],
  "custom_message": "<string>"
}
'

Documentation Index

Fetch the complete documentation index at: https://docs.framen.com/llms.txt

Use this file to discover all available pages before exploring further.

Reject a Creative

Reject a creative approval request (CAR) with one or more rejection reasons. Once rejected, the advertiser is notified and can submit a revised creative.
org_token
string
required
Your organization token (e.g., Org_4KmTqZnWpLx). Find it here.
car_id
string
required
The unique identifier of the creative approval request (e.g., car_Xy7Kp2mN9qR4).
rejection_reasons
string[]
required
Array of one or more rejection reason codes. Valid values: ADVERTISER, INAPPROPRIATE, FILTER, CUSTOM.
custom_message
string
A custom rejection message. Required when CUSTOM is included in rejection_reasons.

Rejection Reasons

CodeDescription
ADVERTISERThe advertiser is not approved to run on your network
INAPPROPRIATEThe creative content is inappropriate for your venues
FILTERThe creative does not meet your content filter criteria
CUSTOMCustom reason — requires a custom_message

Example Request

curl -X POST "https://api.framen.com/vendor/Org_4KmTqZnWpLx/cars/car_Xy7Kp2mN9qR4/reject"
  -H "Content-Type: application/json" \
  -d '{
    "rejection_reasons": ["INAPPROPRIATE", "CUSTOM"],
    "custom_message": "Creative contains content not suitable for family-oriented venues"
  }'

Example Response

{
  "id": "car_Xy7Kp2mN9qR4",
  "status": "rejected",
  "advertiser_name": "Acme Corporation",
  "campaign_name": "Summer Sale 2026",
  "rejection_reasons": ["INAPPROPRIATE", "CUSTOM"],
  "custom_message": "Creative contains content not suitable for family-oriented venues",
  "created_at": "2026-03-28T14:30:00Z",
  "updated_at": "2026-03-28T16:20:15Z"
}

Error Responses

StatusErrorDescription
400Bad RequestCAR is already approved or rejected; cannot reject an already-decided creative. Also returned if rejection_reasons is missing or invalid.
401UnauthorizedInvalid or missing org_token
404Not FoundCAR not found; invalid car_id or organization does not own this CAR
422Unprocessable EntityCUSTOM is in rejection_reasons but custom_message is missing or empty
429Too Many RequestsRate limit exceeded; retry after delay
500Internal Server ErrorServer error; please try again later
Last modified on April 17, 2026