The Marketing API has it is own rate limiting logic. If you are encountering errors mentioning a reached limit, see Rate Limiting .
The copies of this ad.
GET /v21.0/{ad-id}/copies HTTP/1.1
Host: graph.facebook.com
/* PHP SDK v5.0.0 */
/* make the API call */
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->get(
'/{ad-id}/copies',
'{access-token}'
);
} catch(Facebook\Exceptions\FacebookResponseException $e) {
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
$graphNode = $response->getGraphNode();
/* handle the result */
/* make the API call */
FB.api(
"/{ad-id}/copies",
function (response) {
if (response && !response.error) {
/* handle the result */
}
}
);
/* make the API call */
new GraphRequest(
AccessToken.getCurrentAccessToken(),
"/{ad-id}/copies",
null,
HttpMethod.GET,
new GraphRequest.Callback() {
public void onCompleted(GraphResponse response) {
/* handle the result */
}
}
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
initWithGraphPath:@"/{ad-id}/copies"
parameters:params
HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
id result,
NSError *error) {
// Handle the result
}];
Parameter | Description |
---|---|
date_preset
enum{today, yesterday, this_month, last_month, this_quarter, maximum, data_maximum, last_3d, last_7d, last_14d, last_28d, last_30d, last_90d, last_week_mon_sun, last_week_sun_sat, last_quarter, last_year, this_week_mon_today, this_week_sun_today, this_year}
|
Preset date range used to aggregate insights metrics |
effective_status
list<string>
|
Filter Ads by effective status |
time_range
{'since':YYYY-MM-DD,'until':YYYY-MM-DD}
|
Time range used to aggregate insights metrics |
since
datetime
|
A date in the format of "YYYY-MM-DD", which means from the beginning midnight of that day. |
until
datetime
|
A date in the format of "YYYY-MM-DD", which means to the beginning midnight of the following day. |
updated_since
integer
|
Filter ads by updated since time |
Reading from this edge will return a JSON formatted result:
{ "
data
": [], "paging
": {}, "summary
": {} }
summary
Aggregated information about the edge, such as counts. Specify the fields to fetch in the summary param (like summary=insights
).
Field | Description |
---|---|
insights
Edge<AdsInsights>
|
Analytics summary for all objects |
total_count
unsigned int32
|
Total number of objects |
Error | Description |
---|---|
104 | Incorrect signature |
To copy an ad set targeted in the European Union's Digital Services Act (DSA) regulated locations, please set the payor/beneficiary information first. Otherwise the copying request may respond with one of the following errors:
Payor missing error
{ "error": { "message": "Invalid parameter", "type": "FacebookApiException", "code": 100, "error_data": "{\"blame_field_specs\":[[\"dsa_payor\"]]}", "error_subcode": 3858079, "is_transient": false, "error_user_title": "No payor provided in DSA regulated region", "error_user_msg": "The DSA requires ads to provide payor information in regulated regions. Updating/creating ad needs to provide payor of the ad.", "fbtrace_id": "fbtrace_id" }, "__fb_trace_id__": "fbtrace_id", "__www_request_id__": "request_id" }Beneficiary missing error
{ "error": { "message": "Invalid parameter", "type": "FacebookApiException", "code": 100, "error_data": "{\"blame_field_specs\":[[\"dsa_beneficiary\"]]}", "error_subcode": 3858081, "is_transient": false, "error_user_title": "No payor/beneficiary provided in DSA regulated location", "error_user_msg": "The DSA requires ads to provide beneficiary information in regulated regions. Updating/creating ad needs to provide beneficiary of the ad.", "fbtrace_id": "fbtrace_id" }, "__fb_trace_id__": "fbtrace_id", "__www_request_id__": "request_id" }
copies
edge from the following paths:
Parameter | Description |
---|---|
adset_id
numeric string or integer
|
Single ID of an adset object to make the parent of the copy. Ignore if you want to keep the copy under the original adset parent. |
rename_options
JSON or object-like arrays
|
Rename options |
rename_strategy
enum {DEEP_RENAME, ONLY_TOP_LEVEL_RENAME, NO_RENAME}
|
Default value:
ONLY_TOP_LEVEL_RENAME
|
rename_prefix
string
|
A prefix to copy names. Defaults to null if not provided. |
rename_suffix
string
|
A suffix to copy names. Defaults to null if not provided and appends a localized string of |
status_option
enum {ACTIVE, PAUSED, INHERITED_FROM_SOURCE}
|
Default value:
PAUSED
|
copied_ad_id
in the return type.copied_ad_id
: numeric string,Error | Description |
---|---|
100 | Invalid parameter |
200 | Permissions error |