Graph API Version

Page

Represents a Facebook Page.

Over the coming months, all classic Pages will be migrated to the New Pages Experience. Use the has_transitioned_to_new_page_experience Page field to determine if a Page has been migrated. After all Pages have been migrated, the classic Pages experience will no longer be available.

Refer to our Pages API Guides for additional usage information.

Reading

Get information about a Facebook Page.

Requirements

Limitations

  • A Page access token is required for any fields that may include User information.
  • All users requesting access to a Page using permissions must be able to perform the

    MODERATE task

    on the Page being queried.

  • When using the Page Public Content Access feature, use a system user access token to avoid rate limiting issues.
  • If the page url is being used as the query input, ensure the page url is set up the following way: facebook.com/<pageusername>. More information on the page username.

Public Page Data

Requirements vary based on the Page's status, unpublished or published, and unrestricted or restricted. Restrictions include any visibility restrictions such as by age or region. Note that for restricted Pages, the app user must also satisfy any restrictions in order for data to be returned.

Page StatusAccess TokenFeature, to retrieve public dataPermissions, to retrieve Page owned data

Unpublished

Page Access Token or User Access Token

None

None

Published, Unrestricted

App Access Token or User Access Token

PPCA or PPMA

pages_read_engagement pages_read_user_content pages_show_list

Published, Restricted

Page Access Token or User Access Token.

PPCA or PPMA

pages_read_engagement pages_read_user_content pages_show_list

Example

curl -i -X GET "https://graph.facebook.com/PAGE-ID?access_token=ACCESS-TOKEN"

Parameters

ParameterDescription
account_linking_token
UTF-8 encoded string

Short lived account linking token (5 mins expiry) to get the PSID for a user-page pair

Fields

FieldDescription
id
numeric string

The ID representing a Facebook Page.

about
string

Information about the Page. Can be read with Page Public Content Access or Page Public Metadata Access. This value maps to the Description setting in the Edit Page Info user interface. Limit of 100 characters.

access_token
string

The Page's access token. Only returned if the User making the request has a role (other than Live Contributor) on the Page. If your business requires two-factor authentication, the User must also be authenticated

ad_campaign
AdSet

The Page's currently running promotion campaign

affiliation
string

Affiliation of this person. Applicable to Pages representing people. Can be read with Page Public Content Access or Page Public Metadata Access.

app_id
id

App ID for app-owned Pages and app Pages

artists_we_like
string

Artists the band likes. Applicable to Bands. Can be read with Page Public Content Access or Page Public Metadata Access.

attire
string

Dress code of the business. Applicable to Restaurants or Nightlife. Can be one of Casual, Dressy or Unspecified. Can be read with Page Public Content Access or Page Public Metadata Access.

available_promo_offer_ids
list<KeyValue:enum,list<KeyValue:string,string>>

available_promo_offer_ids

awards
string

The awards information of the film. Applicable to Films. Can be read with Page Public Content Access or Page Public Metadata Access.

band_interests
string

Band interests. Applicable to Bands. Can be read with Page Public Content Access or Page Public Metadata Access.

band_members
string

Members of the band. Applicable to Bands. Can be read with Page Public Content Access or Page Public Metadata Access.

best_page

The best available Page on Facebook for the concept represented by this Page. The best available Page takes into account authenticity and the number of likes

bio
string

Biography of the band. Applicable to Bands. Can be read with Page Public Content Access or Page Public Metadata Access. Limit of 100 characters.

birthday
string

Birthday of this person. Applicable to Pages representing people. Can be read with Page Public Content Access or Page Public Metadata Access.

booking_agent
string

Booking agent of the band. Applicable to Bands. Can be read with Page Public Content Access or Page Public Metadata Access.

breaking_news_usage
null

Information about the availability of daily and monthly usages of the breaking news indicator

Deprecated
built
string

Year vehicle was built. Applicable to Vehicles. Can be read with Page Public Content Access or Page Public Metadata Access.

business

The Business associated with this Page. Requires business_management permissions, and a page or user access token. The person requesting the access token must be an admin of the page.

can_checkin
bool

Whether the Page has checkin functionality enabled. Can be read with Page Public Content Access or Page Public Metadata Access.

can_post
bool

Indicates whether the current app user can post on this Page. Can be read with Page Public Content Access or Page Public Metadata Access.

category
string

The Page's category. e.g. Product/Service, Computers/Technology. Can be read with Page Public Content Access or Page Public Metadata Access.

category_list

The Page's sub-categories. This field will not return the parent category.

checkins
unsigned int32

Number of checkins at a place represented by a Page

company_overview
string

The company overview. Applicable to Companies. Can be read with Page Public Content Access or Page Public Metadata Access.

connected_instagram_account
IGUser

Instagram account connected to page via page settings

contact_address

The mailing or contact address for this page. This field will be blank if the contact address is the same as the physical address

copyright_attribution_insights
CopyrightAttributionInsights

Insight metrics that measures performance of copyright attribution. An example metric would be number of incremental followers from attribution

copyright_whitelisted_ig_partners
list<string>

Instagram usernames who will not be reported in copyright match systems

country_page_likes
unsigned int32

If this is a Page in a Global Pages hierarchy, the number of people who are being directed to this Page. Can be read with Page Public Content Access or Page Public Metadata Access.

cover

Information about the page's cover photo

culinary_team
string

Culinary team of the business. Applicable to Restaurants or Nightlife. Can be read with Page Public Content Access or Page Public Metadata Access.

current_location
string

Current location of the Page. Can be read with Page Public Content Access or Page Public Metadata Access. To manage a child Page's location use the /{page-id}/locations endpoint.

delivery_and_pickup_option_info
list<string>

A Vector of url strings for delivery_and_pickup_option_info of the Page.

description
string

The description of the Page. Can be read with Page Public Content Access or Page Public Metadata Access. Note that this value is mapped to the Additional Information setting in the Edit Page Info user interface.

description_html
string

The description of the Page in raw HTML. Can be read with Page Public Content Access or Page Public Metadata Access.

differently_open_offerings
list<KeyValue:enum,bool>

To be used when temporary_status is set to differently_open to indicate how the business is operating differently than usual, such as a restaurant offering takeout. Enum keys can be one or more of the following: ONLINE_SERVICES, DELIVERY, PICKUP, OTHER with the value set to true or false. For example, a business offering food pick up but pausing delivery would be differently_open_offerings:{"DELIVERY":"false", "PICKUP":"true"}

directed_by
string

The director of the film. Applicable to Films. Can be read with Page Public Content Access or Page Public Metadata Access.

display_subtext
string

Subtext about the Page being viewed. Can be read with Page Public Content Access or Page Public Metadata Access.

displayed_message_response_time
string

Page estimated message response time displayed to user. Can be read with Page Public Content Access or Page Public Metadata Access.

does_viewer_have_page_permission_link_ig
bool

does_viewer_have_page_permission_link_ig

emails
list<string>

The emails listed in the About section of a Page. Can be read with Page Public Content Access or Page Public Metadata Access.

engagement

The social sentence and like count information for this Page. This is the same info used for the like button

fan_count
unsigned int32

The number of users who like the Page. For Global Pages this is the count for all Pages across the brand. Can be read with Page Public Content Access or Page Public Metadata Access.

featured_video

Video featured by the Page

features
string

Features of the vehicle. Applicable to Vehicles. Can be read with Page Public Content Access or Page Public Metadata Access.

followers_count
unsigned int32

Number of page followers

food_styles
list<string>

The restaurant's food styles. Applicable to Restaurants

founded
string

When the company was founded. Applicable to Pages in the Company category. Can be read with Page Public Content Access or Page Public Metadata Access.

general_info
string

General information provided by the Page. Can be read with Page Public Content Access or Page Public Metadata Access.

general_manager
string

General manager of the business. Applicable to Restaurants or Nightlife. Can be read with Page Public Content Access or Page Public Metadata Access.

genre
string

The genre of the film. Applicable to Films. Can be read with Page Public Content Access or Page Public Metadata Access.

global_brand_page_name
string

The name of the Page with country codes appended for Global Pages. Only visible to the Page admin. Can be read with Page Public Content Access or Page Public Metadata Access.

global_brand_root_id
numeric string

This brand's global Root ID

has_added_app
bool

Indicates whether this Page has added the app making the query in a Page tab. Can be read with Page Public Content Access.

has_lead_access

has_lead_access

has_transitioned_to_new_page_experience
bool

indicates whether a page has transitioned to new page experience or not

has_whatsapp_business_number
bool

Indicates whether WhatsApp number connected to this page is a WhatsApp business number. Can be read with Page Public Content Access or Page Public Metadata Access.

has_whatsapp_number
bool

Indicates whether WhatsApp number connected to this page is a WhatsApp number. Can be read with Page Public Content Access or Page Public Metadata Access.

hometown
string

Hometown of the band. Applicable to Bands

hours
map<string, string>

Indicates a single range of opening hours for a day. Each day can have 2 different hours ranges. The keys in the map are in the form of {day}_{number}_{status}. {day} should be the first 3 characters of the day of the week, {number} should be either 1 or 2 to allow for the two different hours ranges per day. {status} should be either open or close to delineate the start or end of a time range. An example with: { "hours": { "mon_1_open": "09:00", //open at 9am on Monday "mon_1_close": "12:00", //close at 12pm "mon_2_open": "13:15", //open at 1:15pm "mon_2_close": "18:00". //close at 6pm } If one specific day is open 24 hours, the range should be specified as 00:00 to 24:00. If the place is open 24/7, use the is_always_open field instead. Note: If a business is open during the night, the closing time can not pass 6:00am. For example, "mon_2_open":"13:15" and "mon_2_close":"5:59" will work however "mon_close_close":"6:00" will not.

impressum
string

Legal information about the Page publishers. Can be read with Page Public Content Access or Page Public Metadata Access.

influences
string

Influences on the band. Applicable to Bands. Can be read with Page Public Content Access or Page Public Metadata Access.

instagram_business_account
IGUser

Instagram account linked to page during Instagram business conversion flow

is_always_open
bool

Indicates whether this location is always open. Can be read with Page Public Content Access or Page Public Metadata Access.

is_chain
bool

Indicates whether location is part of a chain. Can be read with Page Public Content Access or Page Public Metadata Access.

is_community_page
bool

Indicates whether the Page is a community Page. Can be read with Page Public Content Access or Page Public Metadata Access.

is_eligible_for_branded_content
bool

Indicates whether the page is eligible for the branded content tool

is_eligible_for_disable_connect_ig_btn_for_non_page_admin_am_web
bool

is_eligible_for_disable_connect_ig_btn_for_non_page_admin_am_web

is_messenger_bot_get_started_enabled
bool

Indicates whether the page is a Messenger Platform Bot with Get Started button enabled

is_messenger_platform_bot
bool

Indicates whether the page is a Messenger Platform Bot. Can be read with Page Public Content Access or Page Public Metadata Access.

is_owned
bool

Indicates whether Page is owned. Can be read with Page Public Content Access or Page Public Metadata Access.

is_permanently_closed
bool

Whether the business corresponding to this Page is permanently closed. Can be read with Page Public Content Access or Page Public Metadata Access.

is_published
bool

Indicates whether the Page is published and visible to non-admins

is_unclaimed
bool

Indicates whether the Page is unclaimed

is_verified
bool

Deprecated, use "verification_status". Pages with a large number of followers can be manually verified by Facebook as [having an authentic identity] (https://www.facebook.com/help/196050490547892). This field indicates whether the Page is verified by this process. Can be read with Page Public Content Access or Page Public Metadata Access.

Deprecated
is_webhooks_subscribed
bool

Indicates whether the application is subscribed for real time updates from this page

keywords
null

Deprecated. Returns null

Deprecated
leadgen_tos_acceptance_time
datetime

Indicates the time when the TOS for running LeadGen Ads on the page was accepted

leadgen_tos_accepted
bool

Indicates whether a user has accepted the TOS for running LeadGen Ads on the Page

leadgen_tos_accepting_user

Indicates the user who accepted the TOS for running LeadGen Ads on the page

link
string

The Page's Facebook URL

location

The location of this place. Applicable to all Places

members
string

Members of this org. Applicable to Pages representing Team Orgs. Can be read with Page Public Content Access.

merchant_id
string

The instant workflow merchant ID associated with the Page. Can be read with Page Public Content Access or Page Public Metadata Access.

merchant_review_status
enum

Review status of the Page against FB commerce policies, this status decides whether the Page can use component flow

messaging_feature_status
MessagingFeatureStatus

messaging_feature_status

messenger_ads_default_icebreakers
list<string>

The default ice breakers for a certain page

messenger_ads_default_quick_replies
list<string>

The default quick replies for a certain page

messenger_ads_quick_replies_type
enum

Indicates what type this page is and we will generate different sets of quick replies based on it. Values include UNKNOWN, PAGE_SHOP, or RETAIL.

mission
string

The company mission. Applicable to Companies

mpg
string

MPG of the vehicle. Applicable to Vehicles. Can be read with Page Public Content Access or Page Public Metadata Access.

name
string

The name of the Page

name_with_location_descriptor
string

The name of the Page with its location and/or global brand descriptor. Only visible to a page admin. Non-page admins will get the same value as name.

network
string

The TV network for the TV show. Applicable to TV Shows. Can be read with Page Public Content Access or Page Public Metadata Access.

new_like_count
unsigned int32

The number of people who have liked the Page, since the last login. Only visible to a Page admin. Can be read with Page Public Content Access or Page Public Metadata Access.

offer_eligible
bool

Offer eligibility status. Only visible to a page admin

overall_star_rating
float

Overall page rating based on rating survey from users on a scale of 1-5. This value is normalized and is not guaranteed to be a strict average of user ratings. If there are 0 or a small number of ratings, this field will not be returned.

page_token
string

SELF_EXPLANATORY

parent_page

Parent Page of this Page. If the Page is part of a Global Root Structure and you have permission to the Global Root, the Global Root Parent Page is returned. If you do not have Global Root permission, the Market Page for your current region is returned as the Parent Page. If your Page is not part of a Global Root Structure, the Parent Page is returned.

parking

Parking information. Applicable to Businesses and Places

payment_options

Payment options accepted by the business. Applicable to Restaurants or Nightlife

personal_info
string

Personal information. Applicable to Pages representing People. Can be read with Page Public Content Access.

personal_interests
string

Personal interests. Applicable to Pages representing People. Can be read with Page Public Content Access or Page Public Metadata Access.

pharma_safety_info
string

Pharmacy safety information. Applicable to Pharmaceutical companies. Can be read with Page Public Content Access or Page Public Metadata Access.

phone
string

Phone number provided by a Page. Can be read with Page Public Content Access.

pickup_options
list<enum>

List of pickup options available at this Page's store location. Values can include CURBSIDE, IN_STORE, and OTHER.

place_type
enum

For places, the category of the place. Value can be CITY, COUNTRY, EVENT, GEO_ENTITY, PLACE, RESIDENCE, STATE_PROVINCE, or TEXT.

plot_outline
string

The plot outline of the film. Applicable to Films. Can be read with Page Public Content Access or Page Public Metadata Access.

preferred_audience
Targeting

Group of tags describing the preferred audienceof ads created for the Page

press_contact
string

Press contact information of the band. Applicable to Bands

price_range
string

Price range of the business, such as a restaurant or salon. Values can be one of $, $$, $$$, $$$$, Not Applicable, or null if no value is set.. Can be read with Page Public Content Access or Page Public Metadata Access.

privacy_info_url
string

Privacy url in page info section

produced_by
string

The productor of the film. Applicable to Films. Can be read with Page Public Content Access or Page Public Metadata Access.

products
string

The products of this company. Applicable to Companies

promotion_eligible
bool

Boosted posts eligibility status. Only visible to a page admin

promotion_ineligible_reason
string

Reason for which boosted posts are not eligible. Only visible to a page admin

public_transit
string

Public transit to the business. Applicable to Restaurants or Nightlife. Can be read with Page Public Content Access or Page Public Metadata Access.

rating_count
unsigned int32

Number of ratings for the Page (limited to ratings that are publicly accessible). Can be read with Page Public Content Access or Page Public Metadata Access.

recipient
numeric string

Messenger page scope id associated with page and a user using account_linking_token

record_label
string

Record label of the band. Applicable to Bands. Can be read with Page Public Content Access or Page Public Metadata Access.

release_date
string

The film's release date. Applicable to Films. Can be read with Page Public Content Access or Page Public Metadata Access.

restaurant_services

Services the restaurant provides. Applicable to Restaurants

restaurant_specialties

The restaurant's specialties. Applicable to Restaurants

schedule
string

The air schedule of the TV show. Applicable to TV Shows. Can be read with Page Public Content Access or Page Public Metadata Access.

screenplay_by
string

The screenwriter of the film. Applicable to Films. Can be read with Page Public Content Access or Page Public Metadata Access.

season
string

The season information of the TV Show. Applicable to TV Shows. Can be read with Page Public Content Access or Page Public Metadata Access.

single_line_address
string

The Page address, if any, in a simple single line format. Can be read with Page Public Content Access or Page Public Metadata Access.

starring
string

The cast of the film. Applicable to Films. Can be read with Page Public Content Access or Page Public Metadata Access.

start_info

Information about when the entity represented by the Page was started

store_code
string

Unique store code for this location Page. Can be read with Page Public Content Access or Page Public Metadata Access.

store_location_descriptor
string

Location Page's store location descriptor

store_number
unsigned int32

Unique store number for this location Page

studio
string

The studio for the film production. Applicable to Films

supports_donate_button_in_live_video
bool

Whether the user can add a Donate Button to their Live Videos.

talking_about_count
unsigned int32

The number of people talking about this Page

temporary_status
enum

Indicates how the business corresponding to this Page is operating differently than usual. Possible values:

  • differently_open
  • temporarily_closed
  • operating_as_usual
  • no_data

If set to differently_open use with differently_open_offerings to set status.

unread_message_count
unsigned int32

Unread message count for the Page. Only visible to a page admin

unread_notif_count
unsigned int32

Number of unread notifications. Only visible to a page admin

unseen_message_count
unsigned int32

Unseen message count for the Page. Only visible to a page admin

user_access_expire_time
datetime

user_access_expire_time

username
string

The alias of the Page. For example, for www.facebook.com/platform the username is 'platform'

verification_status
string

Showing whether this Page is verified. Value can be blue_verified or gray_verified, which represents that Facebook has confirmed that a Page is the authentic presence of the public figure, celebrity, or global brand it represents, or not_verified. This field can be read with the Page Public Metadata Access feature.

voip_info

Voip info

website
string

The URL of the Page's website. Can be read with Page Public Content Access or Page Public Metadata Access.

were_here_count
unsigned int32

The number of visits to this Page's location. If the Page setting Show map, check-ins and star ratings on the Page (under Page Settings > Page Info > Address) is disabled, then this value will also be disabled. Can be read with Page Public Content Access or Page Public Metadata Access.

whatsapp_number
string

The Page's WhatsApp number. Can be read with Page Public Content Access or Page Public Metadata Access.

written_by
string

The writer of the TV show. Applicable to TV Shows. Can be read with Page Public Content Access or Page Public Metadata Access.

Edges

EdgeDescription

ab_tests

The ad posts for this Page

Businesses that have agency permissions on the Page

Photo albums for this Page. Can be read with Page Public Content Access.

ar_experience

Users assigned to this Page. Can be read with Page Public Content Access.

The music copyrights owned by this page (using alacorn)

User or Page Profiles blocked from this Page

Business projects

The call-to-action created by this Page. Can be read with Page Public Content Access.

The canvas elements associated with this page

The canvas documents associated with this page

customization configuration values of the Page's corresponding Chat Plugin

The commerce orders of this Page

This Page's conversations

Pages that are allowed to crosspost

custom_labels

Custom user settings for a page

fantasy_games

This Page's feed. Can be read with Page Public Content Access.

Children Pages of a Global Pages root Page. Both default and root Page can return children Pages. Can be read with Page Public Content Access.

groups

Image copyrights from this page

This Page's Insights data

Linked Instagram accounts for this Page

A library of lead generation forms created for this page.

The Pages that this Page has liked. Can be read with Page Public Content Access. For New Page Experience Pages, this field will return followers_count.

Live videos on this Page. Can be read with Page Public Content Access.

The location Pages that are children of this Page. Can be read with Page Public Content Access. To manage a child Page's location use the /{page-id}/locations endpoint.

Media fingerprints from this page

Feature status of the page that has been granted through feature review that show up in the page settings

messenger_lead_forms

SELF_EXPLANATORY

Gets the Page Backed Instagram Account (an InstagramUser) associated with this Page.

Messenger Platform Bot personas for the Page

This Page's Photos. Can be read with Page Public Content Access.

This Page's profile picture

This Page's own Posts, a derivative of the /feed edge. Can be read with Page Public Content Access.

Product catalogs owned by this page

All published posts by this page

Open Graph ratings given to this Page

The Page's Admins

All posts that are scheduled to a future date by a page

Secondary Receivers for a page

Controllable settings for this page

Shows the shop setup status

Applications that have real time update subscriptions for this Page. Note that we will only return information about the current app

This Page's tabs and the apps in them. Can be read with Page Public Content Access.

The Photos, Videos, and Posts in which the Page has been tagged. A derivative of /feeds. Can be read with Page Public Content Access.

App which owns a thread for Handover Protocol

Deprecated. Use conversations instead

Video copyright rules from this page

Video Playlists for this Page

Videos for this Page. Can be read with Page Public Content Access.

Shows all public Posts published by Page visitors on the Page. Can be read with Page Public Content Access.

Error Codes

ErrorDescription
100Invalid parameter
200Permissions error
190Invalid OAuth 2.0 Access Token
80001There have been too many calls to this Page account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting.
110Invalid user id
368The action attempted has been deemed abusive or is otherwise disallowed
9009Instagram user is unavailable
80002There have been too many calls to this Instagram account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting.
230Permissions disallow message to user
210User not visible

Creating

This is only available to select developers. Please contact your Facebook Partner for more information.

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

Parameters

ParameterDescription
metadata
string

Additional information about the conversation

recipient
Object

The PSID for the customer who sent the message to your business

Required
id
numeric string

phone_number
string

name
Object

first_name
string

last_name
string

user_ref
string

comment_id

post_id
string

player_id
player ID

one_time_notif_token
string

notification_messages_token
string

login_id
string

Return Type

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

Error Codes

ErrorDescription
551This person isn't available right now.
100Invalid parameter
200Permissions error
504Invalid reply thread id
You can make a POST request to personas edge from the following paths:
When posting to this edge, a Page will be created.

Parameters

ParameterDescription
name
string

Name of a Persona

Required
profile_picture_url
URI

Profile picture of a Persona

Required

Return Type

Struct {
id: numeric string,
}

Error Codes

ErrorDescription
100Invalid parameter
200Permissions error
You can make a POST request to owned_pages edge from the following paths:
When posting to this edge, a Page will be created.

Parameters

ParameterDescription
entry_point
string

entry point of claiming BusinessClaimAssetEntryPoint

page_id
Page ID

Page ID.

Required

Return Type

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

Error Codes

ErrorDescription
413Invalid password
200Permissions error
3982You do not have sufficient permissions to import this asset into the given Business Manager.
3944Your Business Manager already has access to this object.
100Invalid parameter
457The session has an invalid origin
42000This Page can't be added because it's already linked to an Instagram business profile. To add this Page to Business Manager, go to Instagram and convert to a personal account or change the Page linked to your business profile.
3977To claim a Page in Business Manager, you must already be an Admin of the Page.
3948Please assign someone as a manager to this Page before removing it from your Business Manager.
368The action attempted has been deemed abusive or is otherwise disallowed
You can make a POST request to feed edge from the following paths:
When posting to this edge, a Page will be created.

Example

Graph API Explorer
POST /v19.0/{page-id}/feed HTTP/1.1
Host: graph.facebook.com

message=This+is+a+test+value
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/{page-id}/feed',
    array (
      'message' => 'This is a test value',
    ),
    '{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}/feed",
    "POST",
    {
        "message": "This is a test value"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("message", "This is a test value");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{page-id}/feed",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
NSDictionary *params = @{
  @"message": @"This is a test value",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{page-id}/feed"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];
curl -X POST \
  -F 'message="This is a test value"' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v19.0/{page-id}/feed
If you want to learn how to use the Graph API, read our Using Graph API guide.

Parameters

ParameterDescription
actions

SELF_EXPLANATORY

adaptive_type
string

adaptive_type

album_id
numeric string

SELF_EXPLANATORY

android_key_hash
string

SELF_EXPLANATORY

animated_effect_id
int64

animated_effect_id

application_id
non-empty string

SELF_EXPLANATORY

asked_fun_fact_prompt_id
int64

asked_fun_fact_prompt_id

asset3d_id
int64

asset3d_id

associated_id
numeric string or integer

SELF_EXPLANATORY

attach_place_suggestion
boolean
Default value: false

SELF_EXPLANATORY

attached_media
list<Object>

SELF_EXPLANATORY

media_fbid
numeric string

message
UTF-8 string

Supports Emoji
audience_exp
boolean
Default value: false

SELF_EXPLANATORY

backdated_time
datetime

SELF_EXPLANATORY

backdated_time_granularity
enum{year, month, day, hour, min, none}
Default value: none

SELF_EXPLANATORY

breaking_news
boolean

breaking_news

breaking_news_expiration
int64

breaking_news_expiration

call_to_action
Object

SELF_EXPLANATORY

Supports Emoji
type
enum{BOOK_TRAVEL, CONTACT_US, DONATE, DONATE_NOW, DOWNLOAD, GET_DIRECTIONS, GO_LIVE, INTERESTED, LEARN_MORE, LIKE_PAGE, MESSAGE_PAGE, RAISE_MONEY, SAVE, SEND_TIP, SHOP_NOW, SIGN_UP, VIEW_INSTAGRAM_PROFILE, INSTAGRAM_MESSAGE, LOYALTY_LEARN_MORE, PURCHASE_GIFT_CARDS, PAY_TO_ACCESS, SEE_MORE, TRY_IN_CAMERA, WHATSAPP_LINK, BOOK_NOW, CHECK_AVAILABILITY, ORDER_NOW, WHATSAPP_MESSAGE, GET_MOBILE_APP, INSTALL_MOBILE_APP, USE_MOBILE_APP, INSTALL_APP, USE_APP, PLAY_GAME, WATCH_VIDEO, WATCH_MORE, OPEN_LINK, NO_BUTTON, LISTEN_MUSIC, MOBILE_DOWNLOAD, GET_OFFER, GET_OFFER_VIEW, BUY_NOW, BUY_TICKETS, UPDATE_APP, BET_NOW, ADD_TO_CART, SELL_NOW, GET_SHOWTIMES, LISTEN_NOW, GET_EVENT_TICKETS, REMIND_ME, SEARCH_MORE, PRE_REGISTER, SWIPE_UP_PRODUCT, SWIPE_UP_SHOP, PLAY_GAME_ON_FACEBOOK, VISIT_WORLD, OPEN_INSTANT_APP, JOIN_GROUP, GET_PROMOTIONS, SEND_UPDATES, INQUIRE_NOW, VISIT_PROFILE, CHAT_ON_WHATSAPP, EXPLORE_MORE, CONFIRM, JOIN_CHANNEL, CALL, MISSED_CALL, CALL_NOW, CALL_ME, APPLY_NOW, BUY, GET_QUOTE, SUBSCRIBE, RECORD_NOW, VOTE_NOW, GIVE_FREE_RIDES, REGISTER_NOW, OPEN_MESSENGER_EXT, EVENT_RSVP, CIVIC_ACTION, SEND_INVITES, REFER_FRIENDS, REQUEST_TIME, SEE_MENU, SEARCH, TRY_IT, TRY_ON, LINK_CARD, DIAL_CODE, FIND_YOUR_GROUPS, START_ORDER}

The type of the action. Not all types can be used for all ads. Check Ads Product Guide to see which type can be used for based on the objective of your campaign.

Required
value
Object
Default value: Vec

JSON containing the call to action data.

Supports Emoji
link
URL

app_link
string

page
numeric string or integer

link_format
enum {VIDEO_LEAD, VIDEO_LPP, VIDEO_NEKO, VIDEO_NON_LINK, VIDEO_SHOP, WHATSAPP_CATALOG_ATTACHMENT}

application
numeric string or integer

link_title
string

Supports Emoji
link_description
string

Supports Emoji
link_caption
string

product_link
string

get_movie_showtimes
boolean

sponsorship
Object

link
URL

image
URL

video_annotation
Object

annotations
list<Object>

start_time_in_sec
int64

end_time_in_sec
int64

link
URL

link_title
string

link_description
string

link_caption
string

image_url
URL

header_color
string

logo_url
URL

post_click_cta_title
string

post_click_description_title
string

offer_id
numeric string or integer

offer_view_id
numeric string or integer

advanced_data
Object

offer_id
numeric string or integer

lead_gen_form_id
numeric string or integer

referral_id
numeric string or integer

fundraiser_campaign_id
numeric string or integer

event_id
numeric string or integer

event_tour_id
numeric string or integer

app_destination
enum {MESSENGER, MESSENGER_EXTENSIONS, MESSENGER_GAMES, LINK_CARD, MARKETPLACE, WHATSAPP, INSTAGRAM_DIRECT}

app_destination_page_id
numeric string or integer

is_canvas_video_transition_enabled
boolean

whatsapp_number
string

preinput_text
string

customized_message_page_cta_text
string

external_offer_provider_id
numeric string or integer

origins
enum {COMPOSER, CAMERA}

object_store_urls
array<string>

facebook_login_spec
Object

facebook_login_app_id
numeric string or integer

offer_type
enum {NO_OFFER, PERCENTAGE_BASED, AMOUNT_BASED}

offer_pct_call_to_action
enum {TEN}

offer_amt_call_to_action
enum {TEN}

product_id
numeric string or integer

group_id
numeric string or integer

channel_id
string

caption
string

SELF_EXPLANATORY

Supports Emoji
child_attachments
list<Object>

SELF_EXPLANATORY

Supports Emoji
picture
URL

name
string

Supports Emoji
link
URL

Required
caption
string

Supports Emoji
description
string

Supports Emoji
quote
UTF-8 string

Supports Emoji
source
URL

properties

object_attachment
numeric string or integer

height
int64

width
int64

expanded_height
int64

expanded_width
int64

referral_id
numeric string or integer

thumbnail
file

image_crops
dictionary { enum{191x100, 100x72, 400x150, 600x360, 100x100, 400x500, 90x160} : <list<list<int64>>> }

call_to_action
Object

Supports Emoji
type
enum{BOOK_TRAVEL, CONTACT_US, DONATE, DONATE_NOW, DOWNLOAD, GET_DIRECTIONS, GO_LIVE, INTERESTED, LEARN_MORE, LIKE_PAGE, MESSAGE_PAGE, RAISE_MONEY, SAVE, SEND_TIP, SHOP_NOW, SIGN_UP, VIEW_INSTAGRAM_PROFILE, INSTAGRAM_MESSAGE, LOYALTY_LEARN_MORE, PURCHASE_GIFT_CARDS, PAY_TO_ACCESS, SEE_MORE, TRY_IN_CAMERA, WHATSAPP_LINK, BOOK_NOW, CHECK_AVAILABILITY, ORDER_NOW, WHATSAPP_MESSAGE, GET_MOBILE_APP, INSTALL_MOBILE_APP, USE_MOBILE_APP, INSTALL_APP, USE_APP, PLAY_GAME, WATCH_VIDEO, WATCH_MORE, OPEN_LINK, NO_BUTTON, LISTEN_MUSIC, MOBILE_DOWNLOAD, GET_OFFER, GET_OFFER_VIEW, BUY_NOW, BUY_TICKETS, UPDATE_APP, BET_NOW, ADD_TO_CART, SELL_NOW, GET_SHOWTIMES, LISTEN_NOW, GET_EVENT_TICKETS, REMIND_ME, SEARCH_MORE, PRE_REGISTER, SWIPE_UP_PRODUCT, SWIPE_UP_SHOP, PLAY_GAME_ON_FACEBOOK, VISIT_WORLD, OPEN_INSTANT_APP, JOIN_GROUP, GET_PROMOTIONS, SEND_UPDATES, INQUIRE_NOW, VISIT_PROFILE, CHAT_ON_WHATSAPP, EXPLORE_MORE, CONFIRM, JOIN_CHANNEL, CALL, MISSED_CALL, CALL_NOW, CALL_ME, APPLY_NOW, BUY, GET_QUOTE, SUBSCRIBE, RECORD_NOW, VOTE_NOW, GIVE_FREE_RIDES, REGISTER_NOW, OPEN_MESSENGER_EXT, EVENT_RSVP, CIVIC_ACTION, SEND_INVITES, REFER_FRIENDS, REQUEST_TIME, SEE_MENU, SEARCH, TRY_IT, TRY_ON, LINK_CARD, DIAL_CODE, FIND_YOUR_GROUPS, START_ORDER}

The type of the action. Not all types can be used for all ads. Check Ads Product Guide to see which type can be used for based on the objective of your campaign.

Required
value
Object
Default value: Vec

JSON containing the call to action data.

Supports Emoji
link
URL

app_link
string

page
numeric string or integer

link_format
enum {VIDEO_LEAD, VIDEO_LPP, VIDEO_NEKO, VIDEO_NON_LINK, VIDEO_SHOP, WHATSAPP_CATALOG_ATTACHMENT}

application
numeric string or integer

link_title
string

Supports Emoji
link_description
string

Supports Emoji
link_caption
string

product_link
string

get_movie_showtimes
boolean

sponsorship
Object

link
URL

image
URL

video_annotation
Object

annotations
list<Object>

start_time_in_sec
int64

end_time_in_sec
int64

link
URL

link_title
string

link_description
string

link_caption
string

image_url
URL

header_color
string

logo_url
URL

post_click_cta_title
string

post_click_description_title
string

offer_id
numeric string or integer

offer_view_id
numeric string or integer

advanced_data
Object

offer_id
numeric string or integer

lead_gen_form_id
numeric string or integer

referral_id
numeric string or integer

fundraiser_campaign_id
numeric string or integer

event_id
numeric string or integer

event_tour_id
numeric string or integer

app_destination
enum {MESSENGER, MESSENGER_EXTENSIONS, MESSENGER_GAMES, LINK_CARD, MARKETPLACE, WHATSAPP, INSTAGRAM_DIRECT}

app_destination_page_id
numeric string or integer

is_canvas_video_transition_enabled
boolean

whatsapp_number
string

preinput_text
string

customized_message_page_cta_text
string

external_offer_provider_id
numeric string or integer

origins
enum {COMPOSER, CAMERA}

object_store_urls
array<string>

facebook_login_spec
Object

facebook_login_app_id
numeric string or integer

offer_type
enum {NO_OFFER, PERCENTAGE_BASED, AMOUNT_BASED}

offer_pct_call_to_action
enum {TEN}

offer_amt_call_to_action
enum {TEN}

product_id
numeric string or integer

group_id
numeric string or integer

channel_id
string

image_hash
string

static_card
boolean

place_data
Object

address_string
string

label
string

latitude

location_source_id
location page/page set ID

longitude

type
enum {DYNAMIC, REALTIME, SINGLE}

Required
video_id
numeric string or integer

caption_ids
list<numeric string or integer>

offer_id
numeric string or integer

client_mutation_id
string

SELF_EXPLANATORY

composer_entry_picker
string

composer_entry_picker

composer_entry_point
string

composer_entry_point

composer_entry_time
int64

composer_entry_time

composer_session_events_log
JSON-encoded string

composer_session_events_log

composer_session_id
string

SELF_EXPLANATORY

composer_source_surface
string

composer_source_surface

composer_type
string

composer_type

connection_class
string

SELF_EXPLANATORY

content_attachment
numeric string

content_attachment

coordinates
JSON-encoded coordinate list

SELF_EXPLANATORY

cta_link
string

cta_link

cta_type
string

cta_type

description
string

SELF_EXPLANATORY

Supports Emoji
direct_share_status
int64

direct_share_status

enforce_link_ownership
boolean
Default value: false

SELF_EXPLANATORY

expanded_height
int64

SELF_EXPLANATORY

expanded_width
int64

SELF_EXPLANATORY

feed_targeting
feed target

SELF_EXPLANATORY

geo_locations
Object

countries
list<string>

regions
list<Object>

key
int64

cities
list<Object>

key
int64

zips
list<Object>

key
string

locales
list<string>

Values for targeted locales. Use type of adlocale to find Targeting Options and use the returned key to specify.

age_min
int64

Must be 13 or higher. Default is 0.

age_max
int64

Maximum age.

genders
list<int64>

Target specific genders. 1 targets all male viewers and 2 females. Default is to target both.

college_years
list<int64>

Array of integers. Represent graduation years from college.

education_statuses
list<int64>

Array of integers which represent current educational status. Use 1 for high school, 2 for undergraduate, and 3 for alum (or localized equivalents).

interested_in
list<int64>

Deprecated. Please see the Graph API Changelog for more information.

Deprecated
relationship_statuses
list<int64>

Array of integers for targeting based on relationship status. Use 1 for single, 2 for 'in a relationship', 3 for married, and 4 for engaged. Default is all types.

interests
list<int64>

One or more IDs of pages to target fans of pages.Use type of page to get possible IDs as find Targeting Options and use the returned id to specify.

formatting
enum {PLAINTEXT, MARKDOWN}

formatting

fun_fact_prompt_id
int64

fun_fact_prompt_id

fun_fact_toastee_id
int64

fun_fact_toastee_id

height
int64

SELF_EXPLANATORY

holiday_card
JSON-encoded string

holiday_card

home_checkin_city_id
place tag

SELF_EXPLANATORY

image_crops
dictionary { enum{191x100, 100x72, 400x150, 600x360, 100x100, 400x500, 90x160} : <list<list<int64>>> }

SELF_EXPLANATORY

implicit_with_tags
list<int>

SELF_EXPLANATORY

instant_game_entry_point_data
string

instant_game_entry_point_data

ios_bundle_id
string

SELF_EXPLANATORY

is_backout_draft
boolean

is_backout_draft

is_boost_intended
boolean

is_boost_intended

is_explicit_location
boolean

SELF_EXPLANATORY

is_explicit_share
boolean

SELF_EXPLANATORY

is_group_linking_post
boolean

is_group_linking_post

is_photo_container
boolean

SELF_EXPLANATORY

link
URL

SELF_EXPLANATORY

location_source_id
numeric string or integer

location_source_id

manual_privacy
boolean
Default value: false

SELF_EXPLANATORY

message
UTF-8 string

SELF_EXPLANATORY

Supports Emoji
multi_share_end_card
boolean
Default value: true

SELF_EXPLANATORY

multi_share_optimized
boolean
Default value: true

SELF_EXPLANATORY

name
string

SELF_EXPLANATORY

Supports Emoji
nectar_module
string

SELF_EXPLANATORY

object_attachment
numeric string or integer

SELF_EXPLANATORY

offer_like_post_id
int64

offer_like_post_id

og_action_type_id
numeric string or integer

SELF_EXPLANATORY

og_hide_object_attachment
boolean

SELF_EXPLANATORY

og_icon_id
numeric string or integer

SELF_EXPLANATORY

og_object_id
OG object ID or URL string

SELF_EXPLANATORY

og_phrase
UTF-8 string

SELF_EXPLANATORY

Supports Emoji
og_set_profile_badge
boolean
Default value: false

og_set_profile_badge

og_suggestion_mechanism
string

SELF_EXPLANATORY

page_recommendation
JSON-encoded string

page_recommendation

picture
URL

SELF_EXPLANATORY

place
place tag

SELF_EXPLANATORY

place_attachment_setting
enum {1, 2}
Default value: 2

place_attachment_setting

place_list
JSON-encoded string

place_list

place_list_data
array

place_list_data

post_surfaces_blacklist
list<enum {1, 2, 3, 4, 5}>

post_surfaces_blacklist

posting_to_redspace
enum {enabled, disabled}
Default value: disabled

posting_to_redspace

privacy
Privacy Parameter

SELF_EXPLANATORY

prompt_id
string

prompt_id

prompt_tracking_string
string

prompt_tracking_string

properties

SELF_EXPLANATORY

proxied_app_id
numeric string or integer

SELF_EXPLANATORY

publish_event_id
int64

publish_event_id

published
boolean
Default value: true

SELF_EXPLANATORY

quote
UTF-8 string

quote

Supports Emoji
react_mode_metadata
JSON-encoded string

This metadata is required for clip reacts feature

ref
list<string>
Default value: Default

SELF_EXPLANATORY

referenceable_image_ids
list<numeric string or integer>

referenceable_image_ids

referral_id
numeric string or integer

referral_id

scheduled_publish_time
datetime

SELF_EXPLANATORY

source
URL

SELF_EXPLANATORY

sponsor_id
numeric string or integer

sponsor_id

sponsor_relationship
int64

sponsor_relationship

suggested_place_id
place tag

SELF_EXPLANATORY

tags
list<int>

SELF_EXPLANATORY

target_surface
enum {STORY, TIMELINE}
Default value: "TIMELINE"

target_surface

targeting
target

SELF_EXPLANATORY

geo_locations
Object

countries
list<string>

regions
list<Object>

key
int64

cities
list<Object>

key
int64

zips
list<Object>

key
string

locales
list<string>

excluded_countries
list<string>

excluded_regions
list<int64>

excluded_cities
list<int64>

excluded_zipcodes
list<string>

timezones
list<int64>

age_min
enum {13, 15, 18, 21, 25}

text_format_metadata
JSON-encoded string

text_format_metadata

text_format_preset_id
numeric string or integer

text_format_preset_id

text_only_place
string

SELF_EXPLANATORY

throwback_camera_roll_media
JSON-encoded string

throwback_camera_roll_media

thumbnail
file

SELF_EXPLANATORY

time_since_original_post
int64

SELF_EXPLANATORY

title
UTF-8 string

SELF_EXPLANATORY

Supports Emoji
tracking_info
JSON-encoded string

tracking_info

unpublished_content_type
enum {SCHEDULED, SCHEDULED_RECURRING, DRAFT, ADS_POST, INLINE_CREATED, PUBLISHED, REVIEWABLE_BRANDED_CONTENT}

SELF_EXPLANATORY

user_selected_tags
boolean
Default value: false

SELF_EXPLANATORY

video_start_time_ms
int64

video_start_time_ms

viewer_coordinates
JSON-encoded coordinate list

SELF_EXPLANATORY

width
int64

SELF_EXPLANATORY

Return Type

This endpoint supports read-after-write and will read the node represented by id in the return type.
Struct {
id: token with structure: Post ID,
post_supports_client_mutation_id: bool,
}

Error Codes

ErrorDescription
200Permissions error
100Invalid parameter
368The action attempted has been deemed abusive or is otherwise disallowed
197The post is empty. Please enter a message to share.
190Invalid OAuth 2.0 Access Token
80001There have been too many calls to this Page account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting.
1500The url you supplied is invalid
105The number of parameters exceeded the maximum for this operation
5101Uploaded file is too large.
You can make a POST request to nlp_configs edge from the following paths:
When posting to this edge, a Page will be created.

Parameters

ParameterDescription
api_version
enum {}

api_version

custom_token
string

An optional Wit token enable custom entities

model
enum {ARABIC, CHINESE, CROATIAN, CUSTOM, DANISH, DUTCH, ENGLISH, FRENCH_STANDARD, GEORGIAN, GERMAN_STANDARD, GREEK, HEBREW, HUNGARIAN, IRISH, ITALIAN_STANDARD, KOREAN, NORWEGIAN_BOKMAL, POLISH, PORTUGUESE, ROMANIAN, SPANISH, SWEDISH, VIETNAMESE}

An option for which model to use in production.

n_best
int64

The number of intents and traits to return, other than the best one.

nlp_enabled
boolean

A boolean to enable/disable Built-In NLP.

other_language_support
JSON object {string : JSON object}

A map of language to model type and Wit token for language identification.

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
You can make a POST request to leadgen_forms edge from the following paths:
When posting to this edge, a Page will be created.

Parameters

ParameterDescription
allow_organic_lead_retrieval
boolean
Default value: true

Previously, this flag controlled whether any leads submitted in a non-Ad context were retrievable. Now this flag will not be considered and it will be deprecated entirely. To control visibility of Lead Forms in a non-Ad context you should use 'block_display_for_non_targeted_viewer'

block_display_for_non_targeted_viewer
boolean

Whether to make the organic post invisible to viewers in non-Ad context

context_card
Object

Optional context card shown as the intro page

Supports Emoji
title
string

style
enum {LIST_STYLE, PARAGRAPH_STYLE}

content
array<string>

button_text
string

cover_photo_id
photo ID

cover_photo
file

Custom cover photo for context card

custom_disclaimer
Object

Customized disclaimer including title, body content with inline links, and consent checkboxes

title
string

body
Object

text
string

Required
url_entities
list<JSON object>

checkboxes
list<Object>

is_required
boolean
Default value: true

is_checked_by_default
boolean
Default value: false

text
string

Required
key
string

follow_up_action_url
URI

The final destination URL that user will go to when clicking view website button

is_for_canvas
boolean
Default value: false

Flag to indicate that the form is going to be used under a canvas

is_optimized_for_quality
boolean
Default value: false

Flag to indicate whether the form will be optimized for quality

locale
enum {AR_AR, CS_CZ, DA_DK, DE_DE, EL_GR, EN_GB, EN_US, ES_ES, ES_LA, FI_FI, FR_FR, HE_IL, HI_IN, HU_HU, ID_ID, IT_IT, JA_JP, KO_KR, NB_NO, NL_NL, PL_PL, PT_BR, PT_PT, RO_RO, RU_RU, SV_SE, TH_TH, TR_TR, VI_VN, ZH_CN, ZH_HK, ZH_TW}

The locale of the form. Pre-defined questions renders in this locale

name
string

The name that will help identity the form

Required
privacy_policy
Object

The url and link_text of the privacy policy of advertiser. link_text is limited to a maximum of 70 characters.

url
string

link_text
string

question_page_custom_headline
string

The custom headline for the question page within the form

questions
list<Object>

An array of questions of the form

Required
key
string

label
string

type
enum {CUSTOM, CITY, COMPANY_NAME, COUNTRY, DOB, EMAIL, GENDER, FIRST_NAME, FULL_NAME, JOB_TITLE, LAST_NAME, MARITIAL_STATUS, PHONE, PHONE_OTP, POST_CODE, PROVINCE, RELATIONSHIP_STATUS, STATE, STREET_ADDRESS, ZIP, WORK_EMAIL, MILITARY_STATUS, WORK_PHONE_NUMBER, SLIDER, STORE_LOOKUP, STORE_LOOKUP_WITH_TYPEAHEAD, DATE_TIME, ID_CPF, ID_AR_DNI, ID_CL_RUT, ID_CO_CC, ID_EC_CI, ID_PE_DNI, ID_MX_RFC, JOIN_CODE, USER_PROVIDED_PHONE_NUMBER, FACEBOOK_LEAD_ID, EMAIL_ALIAS, MESSENGER}

Required
inline_context
string

options
list<JSON object>

dependent_conditional_questions
list<JSON object>

conditional_questions_group_id
LeadGen Conditional Questions Group ID

thank_you_page
Object

Optional customized thank you page displayed post submission

title
string

Required
body
string

Required
short_message
string

button_text
string

button_description
string

business_phone_number
phone number string

enable_messenger
boolean
Default value: false

website_url
string

button_type
enum {VIEW_WEBSITE, CALL_BUSINESS, MESSAGE_BUSINESS, DOWNLOAD, SCHEDULE_APPOINTMENT, VIEW_ON_FACEBOOK, NONE}

Required
country_code
string

tracking_parameters
JSON object {string : string}

Map for additional tracking parameters to include with the form's field data

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
192Invalid phone number
200Permissions error
368The action attempted has been deemed abusive or is otherwise disallowed
You can make a POST request to messenger_lead_forms edge from the following paths:
When posting to this edge, a Page will be created.

Parameters

ParameterDescription
account_id
int64

ID of the account

block_send_api
boolean

Whether to block messages sent using Send API while user is in Lead Gen Experience

handover_app_id
int64

Hand over thread to specified app after leadgen is complete

handover_summary
boolean

Opt-in to get a summary message sent to the target HOP app at the end of the automated flow

privacy_url
URI

Privacy URL for Messenger Lead Gen Experience

reminder_text
string

Reminder text that will be sent to user after inactivity

step_list
array<JSON object>

List of steps in Messenger Lead Gen Experience

Required
step_id
int64

step_id

Required
message
string

message

Required
step_type
enum {QUESTION, CONFIRMATION, DISCLAIMER, DISQUALIFY, INFO, INTRO, SUMMARY, POST_LEAD_TRANSITION}

step_type

Required
reply_type
enum {QUICK_REPLIES, TEXT, NONE, PREFILL, ICE_BREAKERS, APPOINTMENT, SUBSCRIBE, CALL_PREFERENCE, CONDITIONAL_ANSWER}

reply_type

Required
answers
array<string>
Default value: []

answers

next_step_ids
array<int64>
Default value: []

next_step_ids

prefill_type
enum {FULL_ADDRESS, STREET_ADDRESS, ZIP_CODE, POST_CODE, CITY, STATE, PROVINCE, COUNTRY, EMAIL, PHONE, PHONE_OTP, JOB_TITLE, COMPANY_NAME, GENDER, DOB, DATE_TIME, SLIDER, NONE, FIRST_NAME, LAST_NAME, FULL_NAME, RELATIONSHIP_STATUS, MARITAL_STATUS, MILITARY_STATUS, WORK_EMAIL, WORK_PHONE, NATIONAL_ID_BRAZIL, NATIONAL_ID_ARGENTINA, NATIONAL_ID_PERU, NATIONAL_ID_CHILE, NATIONAL_ID_COLOMBIA, NATIONAL_ID_ECUADOR, NATIONAL_ID_MEXICO}
Default value: "NONE"

prefill_type

crm_field_id
string

crm_field_id

answer_crm_field_ids
array<string>
Default value: []

answer_crm_field_ids

media_type
enum {TEXT, IMAGE, VIDEO}

media_type

media_content
string

media_content

options_format
enum {TEXT, CAROUSEL}
Default value: "TEXT"

options_format

carousel_answers
array<JSON object>
Default value: []

carousel_answers

value
string

value

Required
media_content
string

media_content

Required
answer_validation_enabled
boolean

answer_validation_enabled

invalid_reply_text
string

invalid_reply_text

cta
JSON object

cta

cta_type
enum {VIEW_WEBSITE, CALL_BUSINESS, MESSAGE_BUSINESS, DOWNLOAD, SCHEDULE_APPOINTMENT, VIEW_ON_FACEBOOK, NONE}

cta_type

Required
cta_text
string

cta_text

Required
cta_content
string

cta_content

Required
allow_to_skip
boolean

allow_to_skip

qualifying_answers_list
array<string>

qualifying_answers_list

next_step_on_disqualification_id
int64

next_step_on_disqualification_id

offer_code_file_id
int64

offer_code_file_id

offer_code
string

offer_code

offer_code_format
string

offer_code_format

stop_question_message
string

Confirmation message after user clicks on the Stop Question option in persistent menu

template_name
string

Name for the form

tracking_parameters
JSON object {string : string}

Tracking Parameters of Lead Forms

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
You can make a POST request to subscribed_apps edge from the following paths:
When posting to this edge, a Page will be created.

Example

Graph API Explorer
POST /v19.0/{page-id}/subscribed_apps HTTP/1.1
Host: graph.facebook.com

subscribed_fields=leadgen
/* PHP SDK v5.0.0 */
/* make the API call */
try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->post(
    '/{page-id}/subscribed_apps',
    array (
      'subscribed_fields' => 'leadgen',
    ),
    '{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}/subscribed_apps",
    "POST",
    {
        "subscribed_fields": "leadgen"
    },
    function (response) {
      if (response && !response.error) {
        /* handle the result */
      }
    }
);
Bundle params = new Bundle();
params.putString("subscribed_fields", "leadgen");
/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/{page-id}/subscribed_apps",
    params,
    HttpMethod.POST,
    new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();
NSDictionary *params = @{
  @"subscribed_fields": @"leadgen",
};
/* make the API call */
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                               initWithGraphPath:@"/{page-id}/subscribed_apps"
                                      parameters:params
                                      HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                      id result,
                                      NSError *error) {
    // Handle the result
}];
curl -X POST \
  -F 'subscribed_fields="leadgen"' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v19.0/{page-id}/subscribed_apps
If you want to learn how to use the Graph API, read our Using Graph API guide.

Parameters

ParameterDescription
subscribed_fields
array<enum {feed, mention, name, picture, category, description, conversations, feature_access_list, inbox_labels, standby, message_mention, messages, message_reactions, messaging_account_linking, messaging_checkout_updates, messaging_customer_information, message_echoes, message_edits, message_deliveries, message_context, messaging_game_plays, messaging_optins, messaging_optouts, messaging_payments, messaging_postbacks, messaging_pre_checkouts, message_reads, messaging_referrals, messaging_handovers, messaging_policy_enforcement, messaging_appointments, messaging_direct_sends, messaging_fblogin_account_linking, user_action, messaging_feedback, send_cart, otp_verification, group_feed, calls, messaging_in_thread_lead_form_submit, founded, company_overview, mission, products, general_info, leadgen, leadgen_fat, location, hours, parking, public_transit, page_about_story, mcom_invoice_change, invoice_access_invoice_change, invoice_access_invoice_draft_change, invoice_access_onboarding_status_active, invoice_access_bank_slip_events, local_delivery, phone, email, website, ratings, attire, payment_options, culinary_team, general_manager, price_range, awards, hometown, current_location, bio, affiliation, birthday, personal_info, personal_interests, members, checkins, page_upcoming_change, page_change_proposal, merchant_review, product_review, videos, live_videos, video_text_question_responses, registration, payment_request_update, publisher_subscriptions, invalid_topic_placeholder}>

Page Webhooks fields that you want to subscribe

Required

Return Type

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

Error Codes

ErrorDescription
200Permissions error
100Invalid parameter
80001There have been too many calls to this Page account. Wait a bit and try again. For more info, please refer to https://developers.facebook.com/docs/graph-api/overview/rate-limiting.
210User not visible
190Invalid OAuth 2.0 Access Token

Updating

You can update a Page by making a POST request to /{page_id}.

Parameters

ParameterDescription
about
UTF-8 string

Update the about field. Note that this value is mapped to the Description setting in the Edit Page Info user interface.

Supports Emoji
accept_crossposting_handshake
array<JSON object>

Accepts a pending crossposting request initiated by another Page

partner_page_id
page ID

partner_page_id

Required
allow_live
boolean

allow_live

Required
allow_spherical_photo
boolean
Default value: false

Indicates that we should allow this photo to be treated as a spherical photo. This param will only be used when uploading a new image file. This will not change the behavior unless the server is able to interpret the photo as spherical, such as via Photosphere XMP metadata. Regular non-spherical photos will still be treated as regular photos even if this parameter is true.

attire
enum{Unspecified, Casual, Dressy}

Update the attire field

begin_crossposting_handshake
array<JSON object>

Begins the video crossposting handshake with another page

partner_page_id
page ID

partner_page_id

Required
allow_live
boolean

allow_live

Required
bio
string

Update the bio field

category_list
list<numeric string>

Update the category_list field

company_overview
string

Update the company_overview field

contact_address
Object

Update the contact_address field

city_id
city id

street1
string

street2
string

zip
string

cover
numeric string or integer

Update the cover field. This field can only be updated by the Page Admin or Page Editor with EDIT_PROFILE and business_management permissions.

culinary_team
string

Update the culinary_team field

delivery_and_pickup_option_info
array<string>

delivery_and_pickup_option_info. Each String represent the url link to a delivery and pick up option webpage. The API filters out duplicated urls as well as invalidated urls. If empty array is input, delivery_and_pickup_option_info field of the page will be cleared.

description
string

Update the description field. Note that this value is mapped to the Additional Information setting in the Edit Page Info user interface.

differently_open_offerings
JSON object {enum {ONLINE_SERVICES, DELIVERY, PICKUP, OTHER} : boolean}

Indication of services currently offered by this business. Specify "true" for all that apply. Intended to be used when temporary_status = 'differently_open'.

Note to restaurants: See restaurant_services for how to indicate longer term or permanent aspects of your business.

directed_by
string

Update the directed_by field

displayed_message_response_time
string

Page estimated message response time displayed to user

emails
list<string>

Update the emails field

focus_x
float

Cover photo focus x

focus_y
float

Cover photo focus y

food_styles
list<enum{Afghani, American (New), American (Traditional), Asian fusion, Barbeque, Brazilian, Breakfast, British, Brunch, Buffets, Burgers, Burmese, Cajun/Creole, Caribbean, Chinese, Creperies, Cuban, Delis, Diners, Ethiopian, Fast food, Filipino, Fondue, Food stands, French, German, Greek and Mediterranean, Hawaiian, Himalayan/Nepalese, Hot dogs, Indian/Pakistani, Irish, Italian, Japanese, Korean, Latin American, Mexican, Middle Eastern, Moroccan, Pizza, Russian, Sandwiches, Seafood, Singaporean, Soul food, Southern, Spanish/Basque, Steakhouses, Sushi bars, Taiwanese, Tapas bars, Tex-Mex, Thai, Turkish, Vegan, Vegetarian, Vietnamese}>

Update the food_styles field

general_info
string

Update the general_info field

general_manager
string

Update the general_manager field

genre
string

Update the genre field

hours
dictionary { string : <> }

Update the hours field

ignore_coordinate_warnings
boolean

Ignore coordinate warnings when updating this Page's location

impressum
string

Update the impressum field

is_always_open
boolean

Is this location always open?

is_permanently_closed
boolean

Update the is_permanently_closed field

is_published
boolean

Update the is_published field

is_webhooks_subscribed
boolean

Is the application subscribed for real time updates from this page?

location
Object

Update the location field

city
string

city_id
city id

state
string

country
string

street
string

zip
string

latitude
float

longitude
float

mission
string

Update the mission field

no_feed_story
boolean
Default value: false

Don't generate a feed story for the cover photo

no_notification
boolean
Default value: false

Don't generate a notification for the cover photo

offset_x
integer
Default value: 50

Cover photo offset x

offset_y
integer
Default value: 50

Cover photo offset y

parking
dictionary { enum{street, lot, valet} : <boolean> }

Update the parking field

payment_options
dictionary { enum{visa, amex, mastercard, discover, cash_only} : <boolean> }

Update the payment_options field

phone
string

Update the phone field

pickup_options
array<enum {CURBSIDE, IN_STORE, OTHER}>

List of pickup option types available at this Page's business location

plot_outline
string

Update the plot_outline field

price_range
string

Update the price_range field

public_transit
string

Update the public_transit field

restaurant_services
dictionary { enum{reserve, walkins, groups, kids, takeout, delivery, catering, waiter, outdoor} : <boolean> }

Update the restaurant_services field

restaurant_specialties
dictionary { enum{breakfast, lunch, dinner, coffee, drinks} : <boolean> }

Update the restaurant_specialties field

scrape
boolean

Re-scrape the website associated with this Page

spherical_metadata
JSON object

A set of params describing an uploaded spherical photo. This param will only be used when uploading a new image file. This field is not required; if it is not present we will try to generate spherical metadata from the metadata embedded in the image. If it is present, it takes precedence over any embedded metadata. Please click to the left to expand this list and see more information on each parameter. See also the Google Photo Sphere spec for more info on the meaning of the params: https://developers.google.com/streetview/spherical-metadata

ProjectionType
string

Accepted values include equirectangular (full spherical photo), cylindrical (panorama), and cubestrip (also known as cubemap, e.g. for synthetic or rendered content; stacked vertically with 6 faces).

Required
CroppedAreaImageWidthPixels
int64

--- In equirectangular projection: As described in Google Photo Sphere XMP Metadata spec.

--- In cylindrical projection: Very similar to equirectangular. This value should be equal to the actual width of the image, and together with FullPanoWidthPixels, it describes the horizontal FOV of content of the image: HorizontalFOV = 360 * CroppedAreaImageWidthPixels / FullPanoWidthPixels.

--- In cubestrip projection: This has no relationship to the pixel dimensions of the image. It is simply a representation of the horizontal FOV of the content of the image. HorizontalFOV = CroppedAreaImageWidthPixels / PixelsPerDegree, where PixelsPerDegree is defined by FullPanoWidthPixels.

Required
CroppedAreaImageHeightPixels
int64

--- In equirectangular projection: As described in Google Photo Sphere XMP Metadata spec.

--- In cylindrical projection: This value will NOT be equal to the actual height of the image. Instead, together with FullPanoHeightPixels, it describes the vertical FOV of the image: VerticalFOV = 180 * CroppedAreaImageHeightPixels / FullPanoHeightPixels. In other words, this value is equal to the CroppedAreaImageHeightPixels value that this image would have, if it were projected into equirectangular format while maintaining the same FullPanoWidthPixels.

--- In cubestrip projection: This has no relationship to the pixel dimensions of the image. It is simply a representation of the vertical FOV of the content of the image. VerticalFOV = CroppedAreaImageHeightPixels / PixelsPerDegree, where PixelsPerDegree is defined by FullPanoWidthPixels.

Required
FullPanoWidthPixels
int64

--- In equirectangular projection: As described in Google Photo Sphere XMP Metadata spec.

--- In cylindrical projection: Very similar to equirectangular. This value defines a ratio of horizontal pixels to degrees in the space of the image, and in general the pixel to degree ratio in the scope of the metadata object. Concretely, PixelsPerDegree = FullPanoWidthPixels / 360. This is also equivalent to the circumference of the cylinder used to model this projection.

--- In cubestrip projection: This value has no relationship to the pixel dimensions of the image. It only defines the pixel to degree ratio in the scope of the metadata object. It represents the number of pixels in 360 degrees, so pixels per degree is then given by: PixelsPerDegree = FullPanoWidthPixels / 360. As an example, if FullPanoWidthPixels were chosen to be 3600, we would have PixelsPerDegree = 3600 / 360 = 10. An image with a vertical field of view of 65 degrees would then have a CroppedAreaImageHeightPixels value of 65 * 10 = 650.

Required
FullPanoHeightPixels
int64

--- In equirectangular projection: As described in Google Photo Sphere XMP Metadata spec.

--- In cylindrical projection: This value is equal to the FullPanoHeightPixels value that this image would have, if it were projected into equirectangular format while maintaining the same FullPanoWidthPixels. It is always equal to FullPanoWidthPixels / 2.

--- In cubestrip projection: This value has no relationship to the pixel dimensions of the image. It is a second, redundant representation of PixelsPerDegree. FullPanoHeightPixels = 180 * PixelsPerDegree. It must be consistent with FullPanoWidthPixels: FullPanoHeightPixels = FullPanoWidthPixels / 2.

Required
CroppedAreaLeftPixels
int64
Default value: 0

--- In equirectangular projection: As described in Google Photo Sphere XMP Metadata spec.

--- In cylindrical projection: This value is equal to the CroppedAreaLeftPixels value that this image would have, if it were projected into equirectangular format while maintaining the same FullPanoWidthPixels. It is just a representation of the same angular offset that it represents in equirectangular projection in the Google Photo Sphere spec. Concretely, AngularOffsetFromLeftDegrees = CroppedAreaLeftPixels / PixelsPerDegree, where PixelsPerDegree is defined by FullPanoWidthPixels.

--- In cubestrip projection: This value has no relationship to the pixel dimensions of the image. It is just a representation of the same angular offset that it represents in equirectangular projection in the Google Photo Sphere spec. AngularOffsetFromLeftDegrees = CroppedAreaLeftPixels / PixelsPerDegree, where PixelsPerDegree is defined by FullPanoWidthPixels.

CroppedAreaTopPixels
int64
Default value: 0

--- In equirectangular projection: As described in Google Photo Sphere XMP Metadata spec.

--- In cylindrical projection: This value is equal to the CroppedAreaTopPixels value that this image would have, if it were projected into equirectangular format while maintaining the same FullPanoWidthPixels. It is just a representation of the same angular offset that it represents in equirectangular projection in the Google Photo Sphere spec. Concretely, AngularOffsetFromTopDegrees = CroppedAreaTopPixels / PixelsPerDegree, where PixelsPerDegree is defined by FullPanoWidthPixels.

--- In cubestrip projection: This value has no relationship to the pixel dimensions of the image. It is just a representation of the same angular offset that it represents in equirectangular projection in the Google Photo Sphere spec. AngularOffsetFromTopDegrees = CroppedAreaTopPixels / PixelsPerDegree, where PixelsPerDegree is defined by FullPanoWidthPixels.

PoseHeadingDegrees
float

PosePitchDegrees
float

PoseRollDegrees
float

InitialViewHeadingDegrees
float

InitialViewPitchDegrees
float

InitialViewRollDegrees
float

This is not currently supported

InitialViewVerticalFOVDegrees
float

This is deprecated. Please use InitialVerticalFOVDegrees.

InitialVerticalFOVDegrees
float

You can set the intial vertical FOV of the image. You can set either this field or InitialHorizontalFOVDegrees.

InitialHorizontalFOVDegrees
float

You can set the intial horizontal FOV of the image. You can set either this field or InitialVerticalFOVDegrees.

PreProcessCropLeftPixels
int64

PreProcessCropRightPixels
int64

start_info
Object

Update the start_info field

type
enum{Unspecified, Born, Founded, Started, Opened, Created, Launched}

Required
date
Object

year
integer

month
integer

day
integer

store_location_descriptor
string

Update the store_location_descriptor field

temporary_status
enum {DIFFERENTLY_OPEN, TEMPORARILY_CLOSED, OPERATING_AS_USUAL, NO_DATA}

Update the temporary_status field

website
URL

Update the website field

zoom_scale_x
float

Cover photo zoom scale x

zoom_scale_y
float

Cover photo zoom scale y

Return Type

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

Error Codes

ErrorDescription
200Permissions error
100Invalid parameter
370Invalid call to update this page
371Invalid Page location update
210User not visible
375This Page doesn't have a location descriptor. Add one to continue.
320Photo edit failure
374Invalid store location descriptor update since this Page is not a location Page.
160Invalid geolocation type
368The action attempted has been deemed abusive or is otherwise disallowed
You can update a Page by making a POST request to /{page_id}/assigned_users.

Parameters

ParameterDescription
tasks
array<enum {MANAGE, CREATE_CONTENT, MODERATE, MESSAGING, ADVERTISE, ANALYZE, MODERATE_COMMUNITY, MANAGE_JOBS, PAGES_MESSAGING, PAGES_MESSAGING_SUBSCRIPTIONS, READ_PAGE_MAILBOXES, VIEW_MONETIZATION_INSIGHTS, MANAGE_LEADS, PROFILE_PLUS_FULL_CONTROL, PROFILE_PLUS_MANAGE, PROFILE_PLUS_FACEBOOK_ACCESS, PROFILE_PLUS_CREATE_CONTENT, PROFILE_PLUS_MODERATE, PROFILE_PLUS_MODERATE_DELEGATE_COMMUNITY, PROFILE_PLUS_MESSAGING, PROFILE_PLUS_ADVERTISE, PROFILE_PLUS_ANALYZE, PROFILE_PLUS_REVENUE, PROFILE_PLUS_MANAGE_LEADS, CASHIER_ROLE}>

Page permission tasks to assign this user

user
UID

Business user id or system user id

Required

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
200Permissions error
368The action attempted has been deemed abusive or is otherwise disallowed
You can update a Page by making a POST request to /{page_id}/page_whatsapp_number_verification.

Parameters

ParameterDescription
verification_code
string

The verification code which was sent to the WhatsApp number.

whatsapp_number
string

The WhatsApp number to be verified.

Required

Return Type

Struct {
error_message: string,
verification_status: enum,
whatsapp_number_type: int32,
whatsapp_display_number: string,
}

Error Codes

ErrorDescription
200Permissions error
100Invalid parameter

Deleting

This is only available to select developers. Please contact your Facebook Partner for more information.

You can dissociate a Page from a Page by making a DELETE request to /{page_id}/assigned_users.

Parameters

ParameterDescription
user
UID

Business scoped user id

Required

Return Type

Struct {
success: bool,
}

Error Codes

ErrorDescription
200Permissions error
100Invalid parameter
You can dissociate a Page from a Page by making a DELETE request to /{page_id}/locations.

Parameters

ParameterDescription
location_page_ids
array<location_page ID>

Array of Page IDs for the pages to delete

Required
store_numbers
array<int64>

Array of Store numbers for the pages to delete

Required

Return Type

Struct {
status: bool,
data: List [
Struct {
child_id: string,
success: bool,
}
],
}

Error Codes

ErrorDescription
371Invalid Page location update
200Permissions error
100Invalid parameter