Graph API Version

Business Client Ad Accounts

Reading

This business can access all these client-owned ad accounts.

Example

Graph API Explorer
GET /v5.0/{business-id}/client_ad_accounts 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(
    '/{business-id}/client_ad_accounts',
    '{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(
    "/{business-id}/client_ad_accounts",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{business-id}/client_ad_accounts",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
// For more complex open graph stories, use `FBSDKShareAPI`
// with `FBSDKShareOpenGraphContent`
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{business-id}/client_ad_accounts"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];
If you want to learn how to use the Graph API, read our Using Graph API guide.

Parameters

This endpoint doesn't have any parameters.

Fields

Reading from this edge will return a JSON formatted result:

{ "data": [], "paging": {}, "summary": {} }

data

A list of AdAccount nodes.

The following fields will be added to each node that is returned:

FieldDescription
permitted_tasks
list<string>

Tasks that are assignable to this ad account

paging

For more details about pagination, see the Graph API guide.

summary

Aggregated information about the edge, such as counts. Specify the fields to fetch in the summary param (like summary=total_count).

FieldDescription
total_count
int32

Total number of accounts.

Validation Rules

ErrorDescription
200Permissions error
100Invalid parameter
80004There have been too many calls to this ad-account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting.
1150An unknown error occurred.
80000There have been too many calls from this ad-account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting.

Creating

You can make a POST request to client_ad_accounts edge from the following paths:
When posting to this edge, an AdAccount will be created.

Parameters

ParameterDescription
adaccount_id
string

The client's ad account.

Required
permitted_tasks
array<enum {MANAGE, ADVERTISE, ANALYZE, FB_EMPLOYEE_DSO_ADVERTISE, CREATIVE, DRAFT}>

Permitted tasks on the ad account, such as ANALYZE.

Return Type

This endpoint supports read-after-write and will read the node to which you POSTed.
Struct {
access_status: string,
}

Validation Rules

ErrorDescription
100Invalid parameter
3946Asset already belongs to this Business Manager.
200Permissions error
3989You are trying to assign a duplicated asset to this agency.
3945This Business Manager has a pending ownership request to this object. Please cancel or decline it to continue.

Updating

You can't perform this operation on this endpoint.

Deleting

You can't perform this operation on this endpoint.