Retrieve an Ad Campaign
Retrieves a single ad campaign with stats over the requested window.
Query parameters
Start of the stats window.
End of the stats window.
IANA timezone the stats window is interpreted in. Defaults to UTC.
Attribution model the conversion stats count under (defaults to last_touch). Under both models a journey with any whop ad touch attributes to whop; the model picks which whop touch credits the entity and which non-whop source wins otherwise.
Response
ad campaign retrieved
Example response
{
"added_to_cart_value": 12650,
"added_to_carts": 165,
"bid_type": "average_target",
"budget_amount": 50,
"budget_amount_local": 50,
"budget_currency": "usd",
"budget_optimization": "ad_group",
"budget_type": "daily",
"click_through_rate": 0.025,
"clicks": 5500,
"completed_registration_value": 1650,
"completed_registrations": 55,
"contact_value": 2640,
"contacts": 88,
"cost_per_added_to_cart": 8,
"cost_per_click": 0.24,
"cost_per_completed_registration": 24,
"cost_per_contact": 15,
"cost_per_lead": 10,
"cost_per_mille": 6,
"cost_per_purchase": 30,
"cost_per_result": 40,
"cost_per_schedule": 22,
"cost_per_submitted_application": 120,
"cost_per_unique_click": 0.4,
"cost_per_viewed_content": 1.1,
"created_at": "2026-01-01T12:00:00.000Z",
"custom_conversions": 41,
"custom_event_counts": {
"gift_card_purchased": 5,
"quote_requested": 33
},
"custom_event_values": {
"gift_card_purchased": 750,
"quote_requested": 0
},
"delivery_status": "issues",
"id": "adcamp_xxxxxxxxxxxxxx",
"impressions": 220000,
"issues": [
{
"id": "adiss_xxxxxxxxxxxxxx",
"message": "Your ad was rejected for unacceptable business practices. Edit the ad's content and resubmit.",
"resource_id": "ad_xxxxxxxxxxxxxx",
"resource_type": "ad"
}
],
"lead_value": 3960,
"leads": 132,
"link_clicks": 4400,
"objective": "leads",
"platform": "meta",
"purchase_value": 7920,
"purchases": 44,
"result_event": "custom",
"result_event_name": "quote_requested",
"results": 33,
"return_on_ad_spend": 6,
"schedule_value": 5400,
"schedules": 60,
"special_ad_categories": [
"employment"
],
"spend": 1320,
"spend_currency": "usd",
"status": "active",
"submitted_application_value": 1320,
"submitted_applications": 11,
"title": "Ceramic coating — Austin leads",
"unique_clicks": 3300,
"updated_at": "2026-01-01T12:00:00.000Z",
"viewed_content_value": 8400,
"viewed_contents": 1200
}Changes
Changed in 8 of the 74 revisions of this API.1519
- ○
added the optional property
to the response with the statusresponse-optional-property-added
- ○
added the optional property
to the response with the statusresponse-optional-property-added
- ○
added the optional property
to the response with the statusresponse-optional-property-added
- ○
- ●
added the new
googleenum value to theresponse property for the response statusresponse-property-enum-value-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ●
- ●
added the new
in_appealenum value to theresponse property for the response statusresponse-property-enum-value-added
- ●
- ○
added the required property
to the response with the statusresponse-required-property-added
This revision also has 2 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ○
- ●
added the new
messaging_conversationenum value to theresponse property for the response statusresponse-property-enum-value-added
This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ●
- ○
added the optional property
/to the response with the statusresponse-optional-property-added
This revision also has 9 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ○
- ▲
the response property
became optional for the statusresponse-property-became-optional
- ●
added the new
duplicatingenum value to theresponse property for the response statusresponse-property-enum-value-added
- ●
added the new
tiktokenum value to theresponse property for the response statusresponse-property-enum-value-added
- ○
added the new optional
queryrequest parameterattribution_modelnew-optional-request-parameter
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ▲
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
Of the 74 revisions, 1 has no diff computed.