Graph API Version

Business User

In Graph API v9.0, access to this endpoint was restricted. In Graph API v10.0, access has been restored to all apps, but apps can now only target businesses (or child businesses of those businesses) that have claimed them.

Reading

Represents a business user. A business user can be an employee of the business or an admin of the business. An Employee can see all of information in business settings and be assigned roles by business admins. An Admin can control all aspects of the business including modifying or deleting the account and adding or removing people from the employee list

Example

Graph API Explorer
GET /v21.0/{business-user-id} 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-user-id}',
    '{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-user-id}",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{business-user-id}",
    null,
    HttpMethod.GET,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{business-user-id}"
                                      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

FieldDescription
id
numeric string

The business user's ID.

business

Business user is associated with this business.

email
string

User's email as provided in Business Manager.

finance_permission
string

Financial permission role of the user in Business Manager, such as EDITOR, ANALYST, and so on.

first_name
string

User's first name as provided in Business Manager.

ip_permission
string

This user's ads right permission role in Business Manager, such as Reviewer and so on.

last_name
string

User's last name as provided in Business Manager.

name
string

Name of user as provided in Business Manager.

pending_email
string

Email for the business user that is still pending verification.

role
string

Role of the user in Business Manager, such as Admin, Employee, and so on.

title
string

The title of the user in this business.

two_fac_status
string

Two-factor authentication status of the business-scoped user.

Edges

EdgeDescription
Edge<BusinessAssetGroup>

Business asset groups that are assign to this business scoped user

Edge<Page>

Pages that are assigned to this business scoped user

Edge<ProductCatalog>

Product catalogs that are assigned to this business scoped user

Error Codes

ErrorDescription
100Invalid parameter
104Incorrect signature

Creating

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

Parameters

ParameterDescription
email
string

Email of user to be added to this business.

Required
invited_user_type
array<enum {FB, MWA}>

Not passing a value will default to 'FB'.

Use 'MWA' for inviting a user with their Meta account managed by their organization.

role
enum {FINANCE_EDITOR, FINANCE_ANALYST, ADS_RIGHTS_REVIEWER, ADMIN, EMPLOYEE, DEVELOPER, PARTNER_CENTER_ADMIN, PARTNER_CENTER_ANALYST, PARTNER_CENTER_OPERATIONS, PARTNER_CENTER_MARKETING, PARTNER_CENTER_EDUCATION, MANAGE, DEFAULT, FINANCE_EDIT, FINANCE_VIEW}

Role of user to add to this business.

Return Type

This endpoint supports read-after-write and will read the node represented by id in the return type.
Struct {
id: numeric string,
}

Error Codes

ErrorDescription
100Invalid parameter
368The action attempted has been deemed abusive or is otherwise disallowed
613Calls to this api have exceeded the rate limit.
457The session has an invalid origin
190Invalid OAuth 2.0 Access Token
415Two factor authentication required. User have to enter a code from SMS or TOTP code generator to pass 2fac. This could happen when accessing a 2fac-protected asset like a page that is owned by a 2fac-protected business manager.
200Permissions error
104Incorrect signature

Updating

You can update a BusinessUser by making a POST request to /{business_user_id}.

Parameters

ParameterDescription
email
string

The email of the user at this business.

first_name
string

First name for this business user.

last_name
string

Last name for this business user.

role
enum {FINANCE_EDITOR, FINANCE_ANALYST, ADS_RIGHTS_REVIEWER, ADMIN, EMPLOYEE, DEVELOPER, PARTNER_CENTER_ADMIN, PARTNER_CENTER_ANALYST, PARTNER_CENTER_OPERATIONS, PARTNER_CENTER_MARKETING, PARTNER_CENTER_EDUCATION, MANAGE, DEFAULT, FINANCE_EDIT, FINANCE_VIEW}

The role of the user at this business, such as ADMIN and so on.

skip_verification_email
boolean

Whether to skip sending the verification email. The business persona email still requires verification - but just won't receive an email.

Return Type

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

Error Codes

ErrorDescription
100Invalid parameter
415Two factor authentication required. User have to enter a code from SMS or TOTP code generator to pass 2fac. This could happen when accessing a 2fac-protected asset like a page that is owned by a 2fac-protected business manager.
190Invalid OAuth 2.0 Access Token
3914It looks like you're trying to remove the last admin from this Business Manager. At least one admin is required in Business Manager.
368The action attempted has been deemed abusive or is otherwise disallowed

Deleting

You can delete a BusinessUser by making a DELETE request to /{business_user_id}.

Parameters

This endpoint doesn't have any parameters.

Return Type

Struct {
success: bool,
}

Error Codes

ErrorDescription
3914It looks like you're trying to remove the last admin from this Business Manager. At least one admin is required in Business Manager.
200Permissions error
100Invalid parameter
368The action attempted has been deemed abusive or is otherwise disallowed
190Invalid OAuth 2.0 Access Token