Graph API Version

Page Tabs

This edge allows you create, delete, and reorder Page Tabs.

To ensure tabs lead to high-quality, accurate content, the Page Tabs feature is only available to Pages with 2000 or more likes.

Reading

Requirements

You will need the following:

  • A Page access token requested by a person who can perform the MANAGE task on the Page.
  • The pages_manage_metadata permission

If a person is not able to perform the task on the Page, you will need the following:

  • The Pages Public Content Access feature
When using the Page Public Content Access feature, use a system user access token to avoid rate limiting issues.

Feature Permissions

NameDescription
Page Public Content AccessThis feature permission may be required.

Example

Graph API Explorer
GET /v9.0/{page-id}/tabs 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(
    '/{page-id}/tabs',
    '{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(
    "/{page-id}/tabs",
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{page-id}/tabs",
    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:@"/{page-id}/tabs"
                                      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

ParameterDescription
tab
list<string>

SELF_EXPLANATORY

Fields

Reading from this edge will return a JSON formatted result:

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

data

A list of Tab nodes.

paging

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

Validation Rules

ErrorDescription
200Permissions error
100Invalid parameter

Creating

Requirements

You will need the following:

  • A Page access token requested by a person who can perform the MANAGE task on the Page.
  • The pages_manage_metadata permission

To update a tab's position, perform a POST operation and include the following parameters:

  • tab="/{page-id}/tabs/{tab-name}"
  • position={new-position-number}

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

Parameters

ParameterDescription
app_id
integer

The App ID for custom apps added tabs.

custom_image_url
URL

URL for an image for this tab app

custom_name
string

Custom name for this tab

is_non_connection_landing_tab
boolean

A flag to identify whether the tab is a custom landing tab for viewers who are not already connected to this Page

position
integer

Where this tab is located in the list of tabs

tab
string

The Tab key. For default apps which appear on tabs this is a value such as timeline. For custom apps this is app_{app_id}.

Return Type

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

Validation Rules

ErrorDescription
200Permissions error
100Invalid parameter
210User not visible

Updating

You can't perform this operation on this endpoint.

Deleting

This endpoint is deprecated in v8.0.

It may take a few minutes for the deletion to take effect.

You can't perform this operation on this endpoint.