Skip to content

Instantly share code, notes, and snippets.

@shaikshahid
Created June 13, 2016 04:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save shaikshahid/2ea5753bd0b13b05a946d0c5ea68da17 to your computer and use it in GitHub Desktop.
Save shaikshahid/2ea5753bd0b13b05a946d0c5ea68da17 to your computer and use it in GitHub Desktop.
Facebook/api.raml
#%RAML 0.8
title: Facebook
version: v2.0
baseUri: https://graph.facebook.com/{version}
securitySchemes:
- oauth_2_0: !include securitySchemes/oauth_2_0.raml
schemas:
- group: !include schemas/group-schema.json
- permissions: !include schemas/permissions-schema.json
- page: !include schemas/page-schema.json
- order: !include schemas/order-schema.json
- user: !include schemas/user-schema.json
- error: !include schemas/error-schema.json
- album: !include schemas/album-schema.json
- photos: !include schemas/photos-schema.json
- likes: !include schemas/likes-schema.json
- comments: !include schemas/comments-schema.json
- id: !include schemas/id-schema.json
- reviews: !include schemas/reviews-schema.json
- success: !include schemas/success-schema.json
- payment: !include schemas/payment-schema.json
- achievement: !include schemas/achievement-schema.json
- application: !include schemas/application-schema.json
- achievements: !include schemas/achievements-schema.json
- create-account: !include schemas/create-account-schema.json
- test-user-app: !include schemas/test-user-app-schema.json
- banned-users: !include schemas/banned-users-schema.json
- groups: !include schemas/groups-schema.json
- currencies: !include schemas/currencies-schema.json
- roles: !include schemas/roles-schema.json
- staticresources: !include schemas/staticresources-schema.json
- subscriptions: !include schemas/subscriptions-schema.json
- scores: !include schemas/scores-schema.json
- domain: !include schemas/domain-schema.json
- event: !include schemas/event-schema.json
- user-invites: !include schemas/user-invites-schema.json
- attending: !include schemas/attending-schema.json
- video: !include schemas/video-schema.json
- friendlist: !include schemas/friendlist-schema.json
- members: !include schemas/members-schema.json
- group-members: !include schemas/group-members-schema.json
- offer: !include schemas/offer-schema.json
- user-admins: !include schemas/user-admins-schema.json
- note: !include schemas/note-schema.json
- albums: !include schemas/albums-schema.json
- users: !include schemas/users-schema.json
- events: !include schemas/events-schema.json
- conversation: !include schemas/conversation-schema.json
- messages: !include schemas/messages-schema.json
- conversations: !include schemas/conversations-schema.json
- child-brands: !include schemas/child-brands-schema.json
- insight: !include schemas/insight-schema.json
- insights: !include schemas/insights-schema.json
- posts: !include schemas/posts-schema.json
- links: !include schemas/links-schema.json
- pages: !include schemas/pages-schema.json
- milestone: !include schemas/milestone-schema.json
- milestones: !include schemas/milestones-schema.json
- notes: !include schemas/notes-schema.json
- offers: !include schemas/offers-schema.json
- photo: !include schemas/photo-schema.json
- tags: !include schemas/tags-schema.json
- postPhoto: !include schemas/postPhoto-schema.json
- questions: !include schemas/questions-schema.json
- settings: !include schemas/settings-schema.json
- status-messages: !include schemas/status-messages-schema.json
- tabs: !include schemas/tabs-schema.json
- videos: !include schemas/videos-schema.json
- ratings: !include schemas/ratings-schema.json
- question: !include schemas/question-schema.json
- votes: !include schemas/votes-schema.json
- status: !include schemas/status-schema.json
- thread: !include schemas/thread-schema.json
- participants: !include schemas/participants-schema.json
- invited: !include schemas/invited-schema.json
- picture: !include schemas/picture-schema.json
- activities: !include schemas/activities-schema.json
- applications: !include schemas/applications-schema.json
- requests: !include schemas/requests-schema.json
- apprequest: !include schemas/apprequest-schema.json
- friendlists: !include schemas/friendlists-schema.json
- user-groups: !include schemas/user-groups-schema.json
- threads: !include schemas/threads-schema.json
- locations: !include schemas/locations-schema.json
- notifications: !include schemas/notifications-schema.json
- payments: !include schemas/payments-schema.json
- pictures: !include schemas/pictures-schema.json
- pokes: !include schemas/pokes-schema.json
- object: !include schemas/object-schema.json
- books: !include schemas/books-schema.json
- article: !include schemas/article-schema.json
- link: !include schemas/link-schema.json
- message: !include schemas/message-schema.json
- groupDoc: !include schemas/groupDoc-schema.json
- achievementType: !include schemas/achievementType-schema.json
- urlObj: !include schemas/urlObj-schema.json
- place_tag: !include schemas/place_tag-schema.json
- openGraphCreateResponse: !include schemas/openGraphCreateResponse-schema.json
resourceTypes:
- getInsightsType: !include resourceTypes/getInsightsType.raml
- idReturned: !include resourceTypes/idReturned.raml
- successReturned: !include resourceTypes/successReturned.raml
- openGraphAction: !include resourceTypes/openGraphAction.raml
- attendingUserType: !include resourceTypes/attendingUserType.raml
- base: !include resourceTypes/base.raml
- articlesType: !include resourceTypes/articlesType.raml
- booksType: !include resourceTypes/booksType.raml
- postsType: !include resourceTypes/postsType.raml
- openGraphObject: !include resourceTypes/openGraphObject.raml
- attendingType: !include resourceTypes/attendingType.raml
traits:
- offsetPageable: !include traits/offsetPageable.raml
- timePageable: !include traits/timePageable.raml
- hasFields: !include traits/hasFields.raml
- cursorPageable: !include traits/cursorPageable.raml
securedBy: [ oauth_2_0 ]
/:
type: base
get:
description: Represents an external URL as it relates to the Facebook social graph - shares and comments from the URL on Facebook, and any Open Graph objects associated with the URL.
queryParameters:
id:
required: true
example: http%3A%2F%2Fwww.imdb.com%2Ftitle%2Ftt2015381%2F
responses:
200:
body:
application/json:
schema: urlObj
example: !include examples/urlObj-example.json
/{achievement_id}:
type: base
description: An achievement created by a Game.
get:
description: Returns an achievement object.
responses:
200:
body:
application/json:
schema: achievement
/{album_id}:
type: base
description: A photo album.
get:
description: Retrieve a photo album.
responses:
200:
body:
application/json:
schema: album
example: !include examples/album-example.json
/photos:
type: idReturned
post:
description: You can add photos to an album by issuing an HTTP POST request
body:
multipart/form-data:
formParameters:
url:
description: The URL of a photo that is already uploaded to the internet. Either this or source is required, but both should not be used together.
example: url=%7Bimage-url%7D
source:
description: The photo, encoded as form data. Either this or url field is required, but both should not be used together.
example: source=%7Bimage-data%7D
get:
description: Retrieve the photos contained in this album.
responses:
200:
body:
application/json:
schema: photos
example: !include examples/photos-example.json
/comments:
type: idReturned
post:
description: You can comment on an Album by issuing an HTTP POST request
body:
multipart/form-data:
formParameters:
message:
description: The updated comment text.
required: true
example: message=This+is+a+test+comment
attachment_id:
description: An optional ID of a unpublished photo (see no_story field in /{user_id}/photos) uploaded to Facebook to include as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
attachment_url:
description: The URL of an image to include as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
source:
description: A photo, encoded as form data, to use as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
get:
description: Retrieve the comments made on this album.
responses:
200:
body:
application/json:
schema: comments
example: !include examples/comments-example.json
/likes:
type: successReturned
post:
description: You can like an Album by issuing an HTTP POST request.
body:
multipart/form-data:
responses:
200:
description: If successful true, otherwise an error message.
delete:
description: |
You can unlike an album by issuing an HTTP DELETE request.
get:
description: Retrieve the likes made on this album.
responses:
200:
body:
application/json:
schema: likes
example: !include examples/likes-example.json
/picture:
type: base
get:
description: "Retrieve the album's cover photo, the first picture uploaded to an album becomes the cover photo for the album."
responses:
302:
description: "HTTP 302 redirect to URL of the album's cover picture"
/{checkin_id}:
description: A single visit to a location. Deprecated in favour of Posts with locations attached.
/comments:
type: idReturned
post:
description: You can comment on a checkin by issuing an HTTP POST request
body:
multipart/form-data:
formParameters:
message:
description: The updated comment text.
required: true
example: message=This+is+a+test+comment
attachment_id:
description: An optional ID of a unpublished photo (see no_story field in /{user_id}/photos) uploaded to Facebook to include as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
attachment_url:
description: The URL of an image to include as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
source:
description: A photo, encoded as form data, to use as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
/likes:
type: successReturned
post:
description: You can like a checkin.
body:
multipart/form-data:
delete:
description: You can unlike an checkin.
/{comment_id}:
type: successReturned
description: A comment published on any other node.
get:
description: |
Read a comment.
responses:
200:
body:
application/json:
schema: comments
example: !include examples/comments-example.json
delete:
description: Delete a comment posted by that user.
/{domain_id}:
type: base
description: A web domain claimed within Facebook Insights.
get:
description: Retrieve a web site domain within the Graph API.
responses:
200:
body:
application/json:
schema: domain
example: !include examples/domain-example.json
/insights:
type: getInsightsType
get:
description: Determined both by the object (Page, App, Post, Domain) being queried and the metric that is being looked up. All available metrics are listed below.
/{metric_name}:
type: base
get:
description: Retrieve an object (Page, App, Post, Domain) by metric name.
queryParameters:
period:
description: Change the period (from now) over which the metric has been collected. Valid values for each metric are listed below.
enum:
- lifetime
- month
- day
- week
example: period=lifetime
breakdown:
description: Usuable only with the application_mobile_app_installs metric to show a breakdown of installs by a specific grouping.
enum:
- gender_age
- locale
- country
responses:
200:
body:
application/json:
schema: insights
/{event_id}:
type: successReturned
description: An event.
get:
description: |
Retrieve an event by ID.
queryParameters:
fields:
description: Common parameter
enum:
- id
- picture
- location
- end_time
- ticket_uri
- description
- name
- privacy
- owner
- start_time
- venue
- updated_time
example: fields=id,name,picture
responses:
200:
body:
application/json:
schema: event
/feed:
type: successReturned
description: "This event's wall."
post:
description: You can create a link, post or status message by issuing an HTTP POST request to the EVENT_ID/feed connection.
body:
multipart/form-data:
formParameters:
link:
description: Link URL
required: true
message:
description: Message content
picture:
description: Post thumbnail image (can only be used if link is specified)
name:
description: Post name (can only be used if link is specified)
caption:
description: Post caption (can only be used if link is specified)
description:
description: Post description (can only be used if link is specified)
actions:
description: Post actions
get:
description: "Get the feed of posts (including status updates) and links published to this event's wall."
responses:
200:
/invited:
type: base
description: All of the users who have been invited to this event.
get:
description: You can read the list of invitees for an event by issuing an HTTP GET to /EVENT_ID/invited
responses:
200:
body:
application/json:
schema: invited
/{USER_ID}:
type: successReturned
get:
description: You can check whether a specific user has been invited to an event by issuing an HTTP GET to /EVENT_ID/invited/USER_ID
queryParameters:
summary:
type: boolean
count:
description: Total number of invitees (the sum of the other four fields)
type: integer
noreply_count:
description: "Total number of invitees that haven't yet replied"
type: integer
attending_count:
description: Total number of invitees that are attending
type: integer
declined_count:
description: Total number of invitees that are not attending
type: integer
maybe_count:
description: "Total number of invitees that have not yet rsvp'ed"
responses:
200:
body:
application/json:
schema: invited
delete:
description: You can un-invite a user from an event.
/attending:
type: attendingType
description: All of the users who are attending this event.
get:
description: "You can see which users are 'attending' an event. This returns a list of all users who responded 'yes' to the event."
post:
description: "You can RSVP the user as 'attending' an Event."
/{USER_ID}:
type: attendingUserType
get:
description: "You can check if a specific user responded 'yes' to an event."
/maybe:
type: attendingType
description: "All of the users who have been responded 'Maybe' to their invitation to this event."
get:
description: "You can see which users have replied 'maybe' to an event."
post:
description: "You can RSVP the user as a 'maybe' for an Event."
/{USER_ID}:
type: attendingUserType
get:
description: "You can check if a specific user responded 'maybe' to an event."
/declined:
type: attendingType
description: All of the users who declined their invitation to this event.
get:
description: "You can see which users are declined an event (i.e. responded 'no')."
post:
description: "You can RSVP the user as 'declined' for an Event."
/{USER_ID}:
type: attendingUserType
get:
description: "You can check if a specific user responded 'no' to an event. When checking a single user, an empty data will be returned if the user did not respond 'no' to the event."
/noreply:
type: attendingType
description: All of the users who have been not yet responded to their invitation to this event.
get:
description: You can see which users have not replied to an event. This returns a list of all users who have not replied to the event.
/{USER_ID}:
type: attendingUserType
get:
description: You can check if a specific user has not replied to an event. When checking a single user, an empty data will be returned if the user did reply to the event.
/photos:
type: idReturned
get:
description: You can read the photos published to an event by issuing an HTTP GET request to /EVENT_ID/photos with a user access_token.
responses:
200:
body:
application/json:
schema: photos
example: !include examples/photos-example.json
post:
description: "You can post photos to an Event's Wall."
body:
multipart/form-data:
formParameters:
url:
description: The URL of a photo that is already uploaded to the internet. Either this or source is required, but both should not be used together.
example: url=%7Bimage-url%7D
source:
description: The photo, encoded as form data. Either this or url field is required, but both should not be used together.
example: source=%7Bimage-data%7D
/videos:
type: base
description: The videos uploaded to an event.
get:
description: You can read the videos published to an event by issuing an HTTP GET request to /EVENT_ID/videos with a user access_token.
responses:
200:
body:
application/json:
schema: invited
/picture:
type: successReturned
description: "The event's profile picture."
get:
description: "Returns an HTTP 302 redirect to URL of the event's profile picture."
responses:
302:
post:
description: You can add a profile picture to an event.
body:
multipart/form-data:
formParameters:
source:
description: Picture content
delete:
description: "You can delete an event's profile picture."
/{achievement_type_id}:
type: base
get:
description: |
View any achievement type created by that app.
responses:
200:
body:
application/json:
schema: achievementType
example: !include examples/achievementType-example.json
/{friendlist_id}:
type: successReturned
description: A grouping of friends created by someone on Facebook.
get:
description: "A user access token with read_friendlists permission is required to view any of that person's friend lists."
responses:
200:
body:
application/json:
schema: friendlist
/members:
type: successReturned
get:
description: |
View the members of any of the current person's friend lists.
responses:
200:
body:
application/json:
schema: members
example: !include examples/members-example.json
post:
description: You can add people to a friend list using this edge, while the /{user_id}/friendlists edge will let you create new friend lists.
body:
multipart/form-data:
formParameters:
members:
description: A comma-separated list of IDs of friends to add to the list.
required: true
example: members=%7Buser-id-1%7D%2C+%7Buser-id-2%7D
delete:
description: You can remove people from a list by using this edge, while you can delete lists themselves using the /{friendlist_id} node.
body:
multipart/form-data:
formParameters:
members:
description: A comma-separated list of IDs of friends to remove from the list.
required: true
/{group_id}:
type: successReturned
description: A Facebook group.
get:
description: Retrive the group by ID.
responses:
200:
body:
application/json:
schema: group
example: !include examples/group-example.json
post:
description: Applications can set the cover photo for a group.
body:
multipart/form-data:
formParameters:
cover_url:
description: "The url for the cover photo. The image will be downloaded and added to the group's album and then used as a cover photo."
required: true
/events:
type: idReturned
get:
description: All events that belong to a group.
responses:
200:
body:
application/json:
schema: events
/feed:
type: postsType
post:
description: "Users can post a link on the Group's wall."
/members:
type: base
get:
description: Applications can get the list of members that belong to a group.
responses:
200:
body:
application/json:
schema: invited
/{USER_ID}:
type: successReturned
post:
description: Applications can invite users to a group.
body:
multipart/form-data:
formParameters:
from:
description: The ID of the user doing the inviting.
delete:
description: Users can be removed from a group.
/admins/{USER_ID}:
type: successReturned
post:
description: A member of a group can be promoted to admin. The user must be a member of the group. The user will receive a notification that they have been made an admin for the group.
delete:
description: An admin of a group can be demoted to user by issuing a DELETE request to /GROUP_ID/admins/USER_ID with an app access_token.
/docs:
get:
description: Retrieve a list of Group docs.
responses:
200:
/files:
get:
description: Retrieve the files uploaded to this group.
responses:
200:
/{link_id}:
type: successReturned
description: A link shared on Facebook.
get:
description: Retrive a link shared on a wall.
responses:
200:
body:
application/json:
schema: link
example: !include examples/link-example.json
delete:
description: An app can delete a link if it published.
/{message_id}:
type: base
description: A Facebook message.
get:
description: Retrive an individual message in the Facebook messaging system.
responses:
200:
body:
application/json:
schema: message
/{milestone_id}:
type: successReturned
description: A Facebook Page milestone.
get:
description: Reading a milestone.
responses:
200:
body:
application/json:
schema: milestone
delete:
description: You can delete an existing milestone.
post:
description: Update an existing milestone.
/{note_id}:
type: base
description: A note shared on Facebook.
get:
description: Read a Note you need.
responses:
200:
body:
application/json:
schema: note
/comments:
type: idReturned
post:
description: You can comment on an note.
body:
multipart/form-data:
formParameters:
message:
description: The updated comment text.
required: true
example: message=This+is+a+test+comment
attachment_id:
description: An optional ID of a unpublished photo (see no_story field in /{user_id}/photos) uploaded to Facebook to include as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
attachment_url:
description: The URL of an image to include as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
source:
description: A photo, encoded as form data, to use as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
/likes:
type: successReturned
post:
description: You can like a Note.
delete:
description: You can unlike a Note.
/{object_id}:
type: base
description: A set of likes on a particular object. This represents the general structure that applies to multiple types of nodes.
get:
description: You can retrieve an individual object instance.
responses:
200:
body:
application/json:
schema: object
example: !include examples/object-example.json
delete:
description: Deleting an object by ID
/comments:
type: idReturned
description: ""
get:
description: The same permissions required to view the parent object are required to view comments on that object.
queryParameters:
filds:
description: |
|Property Name|Description|Type|
|---|---|---|
|order|Order in which comments were returned. + ranked indicates the most interesting comments are sorted first. + chronological indicates comments are sorted by the oldest comments first.|enum{chronological, ranked}|
|total_count|The count of comments on this node. It is important to note that this value is changed depending on the filter modifier being used (where comment replies are available): if filter is stream then total_count will be a count of all comments (including replies) on the node.if filter is toplevel then total_count will be a count of all top-level comments on the node. total_count can be greater than or equal to the actual number of comments returned due to privacy or deletion|int32|
summary:
description: Shows a summary of metadata about the comments on the object. Importantly this metadata includes order which indicates how the comments are being sorted.
type: boolean
filter:
description: "This determines which comments are returned when comment replies are available. It can be either:"
enum: [ stream , toplevel ]
responses:
200:
body:
application/json:
schema: comments
post:
description: You can comment on an object by issuing an HTTP POST request
body:
multipart/form-data:
formParameters:
message:
description: The updated comment text.
required: true
example: message=This+is+a+test+comment
attachment_id:
description: An optional ID of a unpublished photo (see no_story field in /{user_id}/photos) uploaded to Facebook to include as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
attachment_url:
description: The URL of an image to include as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
source:
description: A photo, encoded as form data, to use as a photo comment. One of attachment_url, attachment_id, message or source must be provided when publishing.
/likes:
type: successReturned
get:
description: Retrive an array of User objects representing each of the people who liked the object
queryParameters:
total_count:
description: Total number of people who liked
type: integer
responses:
200:
body:
application/json:
schema: likes
example: !include examples/likes-example.json
post:
description: You can add new likes to any object.
delete:
description: You can delete likes using this edge.
/insights/{metric_name}:
type: base
get:
description: Retrieve an object (Page, App, Post, Domain) by metric name.
queryParameters:
period:
description: Change the period (from now) over which the metric has been collected. Valid values for each metric are listed below.
enum:
- lifetime
- month
- day
- week
example: period=lifetime
breakdown:
description: Usuable only with the application_mobile_app_installs metric to show a breakdown of installs by a specific grouping.
enum:
- gender_age
- locale
- country
responses:
200:
body:
application/json:
schema: insights
/sharedposts:
type: base
description: This reference describes the /sharedposts edge that is common to multiple Graph API nodes. The structure and operations are the same for each node.
get:
description: |
View the post after privacy settings are taken into account.
responses:
200:
body:
application/json:
schema: posts
example: !include examples/posts-example.json
/{offer_id}:
type: base
description: An offer published by a Page.
get:
description: To read an offer object, issue an HTTP GET request to /OFFER_ID.
responses:
200:
body:
application/json:
schema: offer
/{page_id}:
type: base
description: A Facebook Page.
get:
description: Reading the page by ID.
responses:
200:
body:
application/json:
schema: page
/admins:
type: base
description: "A list of the Page's Admins."
get:
description: This returns an array of User objects.
responses:
200:
body:
application/json:
schema: user-admins
example: !include examples/user-admins-example.json
/{user_id}:
type: base
get:
description: This returns an User object.
responses:
200:
body:
application/json:
schema: user
/albums:
type: idReturned
description: The photo albums the Page has uploaded.
post:
description: You can create an empty album of a page by issuing an HTTP Post request
body:
multipart/form-data:
formParameters:
name:
description: The name of the Page.
message:
about:
description: Information about the Page
example: about=Test+about+text
company_overview:
description: The company overview. Applicable to Companies
cover:
description:
description: The description of the Page
general_info:
description: General information provided by the Page
hours:
description: Indicates the opening hours for this location.
is_permanently_closed:
type: boolean
mission:
description: The company mission. Applicable to Companies
parking:
description: Information about the parking available at a place.
phone:
description: Phone number provided by a Page
website:
description: "The URL of the Page's website"
get:
description: Reading this endpoint returns an array of Album objects with the same fields as that node.
responses:
200:
body:
application/json:
schema: albums
example: !include examples/albums-example.json
/blocked:
type: successReturned
description: A list of users blocked from the Page.
get:
description: Retrieve the list of people blocked from viewing this Page.
responses:
200:
body:
application/json:
schema: users
post:
description: You can publish to this edge to block people from a Page.
body:
multipart/form-data:
formParameters:
user:
description: The user ID of the person to be blocked. This field is required.
required: true
delete:
description: You can delete on this edge to remove someone from the blocked list for that Page.
body:
multipart/form-data:
formParameters:
user:
description: The user ID of the person to be unblocked. This field is required.
required: true
/{user_id}:
type: base
get:
description: |
You can also append a person's user id or username to the edge in order to directly determine whether that person is blocked by the page.
responses:
200:
body:
application/json:
schema: user
/checkins:
type: base
description: Check-ins made to this Page by people.
get:
description: The checkins made to this Page by a person or their friends.
/conversations:
type: base
description: "A list of the Page's conversations."
get:
description: |
Reading this endpoint returns an array of Conversation objects with the same fields as that node.
responses:
200:
body:
application/json:
schema: invited
/events:
type: successReturned
description: The events the Page has created.
get:
description: Retrieve the events this Page has created.
responses:
200:
body:
application/json:
schema: invited
/feed:
type: postsType
description: "The Page's wall."
get:
description: Return an array of Post objects.
post:
description: You can create links, status messages, or posts by using this edge.
/global_brand_children:
type: base
description: Expose information of all children Pages.
get:
description: Reading this endpoint returns an array of Page objects representing each of the child brands.
responses:
200:
body:
application/json:
schema: invited
/insights:
type: getInsightsType
description: "The Page's Insights data"
get:
description: Retreive an array of Insights objects. See the Insights documentation for more information.
/{metric_name}:
type: base
get:
description: Retreive an array of Insights objects by metric name.
queryParameters:
period:
description: Change the period (from now) over which the metric has been collected. Valid values for each metric are listed below.
enum:
- lifetime
- month
- day
- week
example: period=lifetime
breakdown:
description: Usuable only with the application_mobile_app_installs metric to show a breakdown of installs by a specific grouping.
enum:
- gender_age
- locale
- country
responses:
200:
body:
application/json:
schema: insights
/links:
type: base
description: "The Page's posted links."
get:
description: |
Return an array of Link objects.
responses:
200:
body:
application/json:
schema: invited
/locations:
type: successReturned
description: The location Pages that are children of this Page.
get:
description: |
Retrieve an array of Page objects, each representing an individual location for the business.
responses:
200:
body:
application/json:
schema: invited
post:
description: You can add or update an existing location-based Page to this list by publishing on this edge
body:
multipart/form-data:
formParameters:
main_page_id:
description: The ID for the Facebook Page that is the parent of all the locations. This is a required field.
store_number:
description: An arbitrary, developer-defined ID for this location, usually used to link back to an internal database of locations. This is a required field.
type: integer
location_page_id:
description: The ID of the Facebook Page you would like to add as a location. If this field is not included, you must instead specify location, place_topics, and phone fields to create a new location Page.
location:
description: This defines the location for this page. This is required if location_page_id is not specified. The dictionary must include the keys street (street address), latitude, and longitude. It also must include either city_id or all of city, state, and country (but state is optional if the address is not in the U.S.). The zip field is also optional unless it is a U.S. address. Please see later in this document for information about generating a city id.
place_topics:
description: Place topics for this location. This is required if location_page_id is not specified. Use an array of IDs sourced from the placetopic search endpoint.
type: integer
phone:
description: Phone number for this location. This is required if location_page_id is not specified.
hours:
page_username:
description: Vanity URL for this location - this has to be an unused vanity URL - you should check by querying /{page-username} and looking for existing objects with this name.
permanently_closed:
description: Is this location permanently closed?
type: boolean
is_franchise:
description: Is this a franchise location?
type: boolean
ignore_warnings:
description: Whether to disable any warnings (not errors) that result from this API call, such as latitude and longitude not matching street address.
type: boolean
delete:
description: "You can remove a location page from a parent's list of locations by deleting on this edge"
body:
multipart/form-data:
formParameters:
main_page_id:
description: ID of the main Facebook Page for this location.
store_number:
description: Developer-defined ID for this location.
location_page_id:
description: Facebook-defined ID for this location.
/milestones:
type: idReturned
description: "A list of the Page's milestones."
get:
description: |
Retrieve an array of Milestone objects.
responses:
200:
body:
application/json:
schema: invited
post:
description: You can create Page milestones by using this edge.
body:
multipart/form-data:
formParameters:
title:
description: The title of the milestone.
example: title=Final+Episode+Aired
description:
description: The description of the milestone.
example: description=The+big+finale+was+today%21
start_time:
description: The start time of the milestone. This will also be used for the end_time value (these two fields are always the same).
example: start_time=2013-09-29T21%3A00%3A00%2B0500
/notes:
type: idReturned
description: "The Page's notes."
get:
description: Return an array of Note objects.
responses:
200:
body:
application/json:
schema: invited
post:
description: Publishing an note.
body:
multipart/form-data:
formParameters:
message:
description: The main body of the note. This is a required field.
example: message=This+is+a+test+message
subject:
description: The title of the note. This is a required field. Can accept basic HTML styling tags such as <strong> or <ul>.
example: subject=This+is+a+test+note
/offers:
type: idReturned
description: The offers created by this Page
get:
description: Return an array of Offer objects.
responses:
200:
body:
application/json:
schema: offers
post:
description: You can create offers by using this edge.
body:
multipart/form-data:
formParameters:
title:
description: The title of the offer. This field is required.
expiration_time:
description: The expiration time of the offer (used when displaying the offer). This field is required.
terms:
description: Terms and conditions of the offer.
image_url:
description: "The URL for the offer's image. Either image_url or image parameter should be specified, but not both."
image:
description: The image for the offer. Either image_url or image parameter should be specified, but not both.
claim_limit:
description: The maximum number of times the offer can be claimed
type: integer
coupon_type:
description: "The type of offer: in_store_only, in_store_and_online or online_only"
enum:
- in_store_only
- in_store_and_online
- online_only
qrcode:
description: "QR code - alphanumeric with limited punctuation: $ % * + - . / "
barcode:
description: 12-character UPC-A or 13-character EAN-13 barcode (alphanumeric)
redemption_link:
description: The URL where the offer may be redeemed
redemption_code:
description: A code to enter on your website to receive the discount or promotion (50 characters max)
published:
description: Whether a post is published. Default is published
type: boolean
scheduled_publish_time:
description: Time when the page post should go live, this should be between 10 mins and 6 months from the time of publishing the post.
reminder_time:
description: Time before the expiration_time of the offer when the user receives a notification that the offer is about to expire
/picture:
type: successReturned
description: "The Page's profile picture."
get:
description: Retrieve a picture.
queryParameters:
redirect:
description: The picture edge is a special case, as when requested, it will by default return the picture itself and not a JSON response. To return a JSON response, you need to set redirect=false as a request attribute. This is how to return the fields below.
type: boolean
default: 1
example: redirect=0
type:
description: You use this to get a pre-specified size of picture.
enum:
- normal
- square
- small
- large
example: type=normal
height:
description: Restrict the picture height to this size in pixels.
type: integer
width:
description: Restrict the picture width to this size in pixels. When height and width are both used, the image will be scaled as close to the dimensions as possible and then cropped down.
type: integer
responses:
200:
body:
application/json:
schema: picture
post:
description: Publishing a picture.
body:
multipart/form-data:
formParameters:
url:
description: The URL of a photo that is already uploaded to the internet. Either this or source is required, but both should not be used together.
example: url=%7Bimage-url%7D
source:
description: The photo, encoded as form data. Either this or url field is required, but both should not be used together.
example: source=%7Bimage-data%7D
/photos:
type: base
description: The photos the Page is tagged in.
get:
description: |
Return an array of Photo objects.
responses:
200:
body:
application/json:
schema: photos
example: !include examples/photos-example.json
post:
description: Publishing photos to Facebook
body:
multipart/form-data:
formParameters:
url:
description: The URL of a photo that is already uploaded to the internet. Either this or source is required, but both should not be used together.
example: url=%7Bimage-url%7D
source:
description: The photo, encoded as form data. Either this or url field is required, but both should not be used together.
example: source=%7Bimage-data%7D
message:
description: The description of the photo, used as the accompanying status message in any feed story.
place:
description: Page ID of a place associated with the Photo
no_story:
description: "If set to true, this will suppress the feed story that is automatically generated on a Page's profile when it uploads a photo using your app."
type: boolean
targeting:
description: Object that limits the audience for this content. Anyone not in these demographics will not be able to view this content. This will not override any Page-level demographic restrictions that may be in place.
feed_targeting:
description: Object that controls news feed targeting for this content. Anyone in these groups will be more likely to see this content, those not will be less likely, but may still see it anyway. Any of the targeting fields shown here can be used, none are required.
age_max:
age_min:
cities:
college_majors:
college_networks:
id:
countries:
education_statuses:
genders:
scheduled_publish_time:
description: Time when this post should go live, this can be any date between ten minutes and six months from the time of the API call.
responses:
200:
body:
application/json:
schema: postPhoto
example: !include examples/postPhoto-example.json
/uploaded:
type: base
description: The photos the Page has uploaded.
get:
description: Shows all photos that were published to Facebook by this page.
responses:
200:
body:
application/json:
schema: photos
example: !include examples/photos-example.json
/promotable_posts:
type: base
description: "The Page's own posts, a derivative of /feed that includes unpublished and scheduled posts"
get:
description: Shows only the posts that can be boosted (includes unpublished and scheduled posts).
responses:
200:
body:
application/json:
schema: invited
/questions:
type: base
description: "The Page's questions."
get:
description: Return an array of Question objects.
responses:
200:
body:
application/json:
schema: invited
/settings:
type: successReturned
description: Controllable settings for this page.
post:
description: You can adjust Page settings by using this edge
body:
multipart/form-data:
formParameters:
setting:
description: The name of the setting
enum:
- USERS_CAN_TAG_PHOTOS
- USERS_CAN_MESSAGE
- USERS_CAN_POST
- USERS_CAN_POST_PHOTOS
- SHOW_RECENT_POSTS_BY_OTHERS
- PLATFORM_OPTOUTS_CAN_POST
example: setting=USERS_CAN_POST_VIDEOS
value:
description: Whether the setting is enabled or not.
type: boolean
example: value=0
get:
description: Reading a sattings.
responses:
200:
body:
application/json:
schema: invited
/statuses:
type: base
description: The feed of status messages published by this page.
get:
description: |
Retrieve an array of Status Message objects.
responses:
200:
body:
application/json:
schema: invited
/tabs:
type: successReturned
description: The apps that this Page has added as tabs.
get:
description: Get apps that this Page has added as tabs.
responses:
200:
body:
application/json:
schema: invited
post:
description: Add apps as a tab using this edge
body:
multipart/form-data:
formParameters:
app_id:
description: ID of the app that you want to add as a tab.
example: app_id=%7Bapp-id%7D
/app_{app_id}:
type: successReturned
delete:
description: You can remove tabs using this edge
post:
description: You can update tabs by using this edge ({app_id} is the ID of the app in the tab that you want to update)
body:
multipart/form-data:
formParameters:
position:
description: Order in which the tab will appear on the profile. Must be after permanent tabs and less than the number of installed tabs. Index starts at 0
type: integer
default: 0
example: position=3
custom_name:
description: "Name to be used for the tab. If this is set to an empty string, the tab will use the application's default tab name."
example: custom_name=Newtabname
is_non_connection_landing_tab:
description: Set this tab as the default landing tab for users who have not liked and are not admins of the Page. If provided, value must be true.
type: boolean
custom_image_url:
description: URL for an image to be used as a custom icon for this Page app. Note that either custom_image_url or custom_image can be set, but not both.
custom_image:
description: The name of an image file to be used as a custom icon for this Page app. Note that either custom_image_url or custom_image can be set, but not both.
/tagged:
type: postsType
description: The photos, videos, and posts in which the Page has been tagged. A derivative of /feeds
get:
description: Shows only the posts that this page was tagged in
/videos:
type: base
description: The videos the Page has uploaded.
get:
description: Shows all videos this page is tagged in.
responses:
200:
body:
application/json:
schema: invited
/uploaded:
type: base
get:
description: |
Shows all videos that were published to Facebook by this page.
Return an array of Video objects.
responses:
200:
body:
application/json:
schema: invited
/ratings:
type: base
description: Various Page settings controlling who can post content to that Page, or send messages, etc.
get:
description: Read a ratings.
responses:
200:
body:
application/json:
schema: picture
/posts:
get:
description: Retrieve the feed of posts (including status updates) and links published by this page, or by others on this page.
responses:
200:
/{payment_id}:
type: base
description: Details of a payment made via Facebook.
get:
description: Retrieve the payment details using the payment_id.
responses:
200:
body:
application/json:
schema: payment
example: !include examples/payment-example.json
/dispute:
type: successReturned
post:
description: Whenever a transaction is disputed, you may set the status of a dispute from pending to resolved.
body:
multipart/form-data:
formParameters:
reason:
description: "The reason you are setling this dispute. This parameter is required and must be set to one of the following: GRANTED_REPLACEMENT_ITEM, DENIED_REFUND, BANNED_USER. Providing any value other than those enumerated here will result in an error."
enum:
- BANNED_USER
- GRANTED_REPLACEMENT_ITEM
- DENIED_REFUND
/refunds:
type: successReturned
post:
description: You may refund any amount less than or equal to the refundable_amount returned, and make additional refunds as long as the refundable_amount is greater than zero.
body:
multipart/form-data:
formParameters:
currency:
description: The three-letter ISO code of the currency in which the refund amount is specified; it must be the same as the currency in which the original purchase was denominated.
amount:
description: The amount to refund
reason:
description: "The reason you are refunding this order. This is optional but if specified must be one of the following: MALICIOUS_FRAUD, FRIENDLY_FRAUD, CUSTOMER_SERVICE. Providing any value other than those enumerated here will result in an error"
enum:
- FRIENDLY_FRAUD
- CUSTOMER_SERVICE
- MALICIOUS_FRAUD
/{photo_id}:
type: successReturned
description: A photo published to Facebook.
get:
description: Reading a photo.
responses:
200:
body:
application/json:
schema: photo
example: !include examples/photo-example.json
delete:
description: You can delete photos using this edge
/tags:
description: Get likes
get:
description: Get the list of people tagged in a photo.
responses:
200:
post:
description: You can add tags to a photo using this edge.
responses:
200:
/comments:
get:
description: Get comments.
responses:
200:
post:
description: Publish a comment.
responses:
200:
/likes:
get:
description: Get a likes.
responses:
200:
post:
description: You can add new likes to any object as below
responses:
200:
delete:
description: You can delete likes using this edge.
responses:
200:
/{post_id}:
type: successReturned
description: A post published to Facebook.
delete:
description: You can delete a post as long as your application created the post.
/comments:
type: idReturned
get:
description: |
Retrieve an array of objects containing id, from, message and created_time fields.
responses:
200:
body:
application/json:
schema: comments
example: !include examples/comments-example.json
post:
description: You can write comments to post.
body:
multipart/form-data:
formParameters:
message:
description: Comment text
required: true
/insights:
type: getInsightsType
get:
description: |
Retrieve an array of Insights objects. See the Insights documentation for more information.
/{metric_name}:
type: base
get:
description: Retrieve an array of Insights objects by metric name.
queryParameters:
period:
description: Change the period (from now) over which the metric has been collected. Valid values for each metric are listed below.
enum:
- lifetime
- month
- day
- week
example: period=lifetime
breakdown:
description: Usuable only with the application_mobile_app_installs metric to show a breakdown of installs by a specific grouping.
enum:
- gender_age
- locale
- country
responses:
200:
body:
application/json:
schema: insights
/likes:
type: successReturned
delete:
description: You can unlike a post.
post:
description: You can like a Post.
/{question_id}:
description: |
A question published by a Page.
Questions have been deprecated for pages and users. This documentation exists only for historical reasons. You can still read the data from old questions, but you can't create new ones.
/options:
type: idReturned
get:
description: |
Retrieve the options available as answers to the question.
responses:
200:
body:
application/json:
schema: picture
post:
description: Questions that the current user has asked
body:
multipart/form-data:
formParameters:
option:
description: Description of option
/votes:
type: base
get:
description: |
Return an array of objects containing the id and name of users who have voted for this specific option
responses:
200:
body:
application/json:
schema: votes
/{status_id}:
type: base
description: A status message or post published to Facebook.
get:
description: Retrieve a status message on the Facebook Page.
responses:
200:
body:
application/json:
schema: picture
delete:
description: Delete a status message on the Facebook Page.
/{thread_id}:
type: base
description: A message thread in Facebook Messages.
get:
description: The Thread object returns.
responses:
200:
body:
application/json:
schema: picture
/former_participants:
type: base
get:
description: Retrieve a list of former thread participants who have unsubscribed from the thread.
responses:
200:
body:
application/json:
schema: participants
/messages:
type: base
get:
description: Retrieve a list of the message objects contained in this thread.
responses:
200:
body:
application/json:
schema: messages
/participants:
type: base
get:
description: Retrieve a list of the thread participants
responses:
200:
body:
application/json:
schema: participants
/senders:
type: base
get:
description: Retrieve a list of participants who have sent a message in the thread
responses:
200:
body:
application/json:
schema: participants
/tags:
type: base
get:
description: Retrieve a thread tags.
responses:
200:
body:
application/json:
schema: tags
/{user_id}:
type: base
description: A person using Facebook.
get:
description: All events that belong to a user.
responses:
200:
body:
application/json:
schema: user
/accounts:
type: base
description: The Facebook pages of which the current user is an administrator.
get:
description: Retrieve the Facebook Pages of which this person is an admin.
responses:
200:
body:
application/json:
schema: page
example: !include examples/page-example.json
/achievements:
type: idReturned
description: The achievements for the user.
post:
description: You can post an achievement for a user.
body:
multipart/form-data:
formParameters:
achievement:
description: The unique URL of the type of achievement that the person will receive. This is required.
required: true
delete:
description: You can delete an achievement for a player.
body:
multipart/form-data:
formParameters:
achievement:
description: The unique URL of the type of achievement you want to delete. This is required.
example: achievement=%7Burl-of-achievement-to-delete%7D
get:
description: Reading this endpoint returns an array of Achievement objects with the same fields as that node.
responses:
200:
body:
application/json:
schema: achievements
/activities:
type: base
description: "The activities listed on the user's profile."
get:
description: Reading this endpoint returns an array of Page objects (which represent each of the activities)
responses:
200:
body:
application/json:
schema: activities
/adaccounts:
type: base
description: The advertising accounts to which the current user has access.
get:
is: [ hasFields ]
description: To read information about an ad account. And specify any of the following fields. Only id is returned by default.
responses:
200:
body:
application/json:
schema: page
example: !include examples/page-example.json
/albums:
type: idReturned
description: The photo albums this user has created.
get:
description: Reading this endpoint returns an array of Album objects with the same fields as that node.
responses:
200:
body:
application/json:
schema: albums
example: !include examples/albums-example.json
post:
description: Publishing an album.
body:
multipart/form-data:
formParameters:
name:
description: The name given to the album. This field is required.
example: name=%7Balbum-name%7D
message:
description: The description of the album, which will show up in news feed stories as the status message.
example: message=%7Balbum-description%7D
privacy:
description: Privacy settings for the album
example: privacy=%7Bprivacy-settings%7D
/applications/developer:
type: base
description: List of applications for this developer.
get:
description: |
Reading this endpoint returns an array of Application objects with the same fields as that node.
responses:
200:
body:
application/json:
schema: applications
/apprequests:
type: base
description: "The user's outstanding requests from an app."
get:
description: Retrieve an array of request objects.
responses:
200:
body:
application/json:
schema: requests
post:
description: Publishing a request.
body:
multipart/form-data:
formParameters:
message:
description: A UTF-8 string which describes the request. This field is required.
required: true
example: message=This+is+a+test+message
responses:
200:
body:
application/json:
schema: apprequest
/books:
type: base
description: "The books listed on the user's profile."
get:
description: Reading this endpoint returns an array of Page objects (which represent each of the books)
responses:
200:
body:
application/json:
schema: activities
/checkins:
type: base
description: The places that the user has checked-into.
get:
description: |
View someone's checkins.
/events:
type: idReturned
description: The events this user is attending.
get:
description: |
View this person's events.
responses:
200:
body:
application/json:
schema: events
/attending:
type: attendingUserType
description: The events this user is attending.
get:
description: "Return an array of objects with the name, id, and rsvp_status fields. When checking a single user, an empty data will be returned if the user did not respond 'yes' to the event."
/maybe:
type: attendingUserType
description: "The events this user has RSVP'd as maybe."
get:
description: "Return an array of objects with the name, id, and rsvp_status fields. When checking a single user, an empty data will be returned if the user did not respond 'maybe' to the event."
/declined:
type: attendingUserType
description: The events this user has declined.
get:
description: "This returns a list of all users who responded 'no' to the event"
/not_replied:
get:
description: "Returns the events that the person has not yet RSVP'd."
responses:
200:
/created:
get:
description: Returns the events that the person has created.
responses:
200:
/family:
type: base
description: "The user's family relationships"
get:
description: |
Permissions
A user access token with user_relationships permission is required to retrieve the current user's family.
A user access token with friends_relationships permission is required to retrieve the family of any of the current user's friends.
Fields
An array of User objects
responses:
200:
body:
application/json:
schema: users
/feed:
type: postsType
description: The posts and links published by this person or others on their profile.
get:
description: Return an array of Post objects.
queryParameters:
with:
description: Restrict the list of posts to only those with location attached.
enum: [ location ]
example: with=location
filter:
description: Retrieve only posts that match a particular stream filter. Valid filters to be used here can be retrieved using the FQL stream_filter table.
post:
description: A user access token with publish_actions permission can be used to publish new posts.
body:
multipart/form-data:
formParameters:
message:
description: The main body of the post, otherwise called the status message. Either link or message must be supplied.
example: message=This+is+a+test+message
link:
description: The URL of a link to attach to the post. Either link or message must be supplied. Additional fields associated with link are shown below.
/friendlists:
type: base
description: "The user's friend lists."
get:
description: |
Permissions
A user access token with read_friendlists permission is required to view the current person's friend lists.
Fields
An array of Friendlist objects.
responses:
200:
body:
application/json:
schema: friendlists
/friendrequests:
type: base
description: "The user's incoming friend requests."
get:
description: Reading a requests
responses:
200:
body:
application/json:
schema: requests
/friends:
type: base
description: "The user's friends."
get:
description: |
View the current person's friends.
responses:
200:
body:
application/json:
schema: users
/{user_b_id}:
type: base
get:
description: |
You can append another person's id or username to the edge in order to determine whether that person is friends with the root node user.
responses:
200:
body:
application/json:
schema: user
/games:
type: base
description: Games the user has added to the Arts and Entertainment section of their profile.
get:
description: |
View the current person's non-public liked games.
responses:
200:
body:
application/json:
schema: pages
/groups:
type: base
description: The Groups that the user belongs to.
get:
description: |
Retreive person's groups.
responses:
200:
body:
application/json:
schema: user-groups
example: !include examples/user-groups-example.json
/home:
type: base
description: "The user's news feed."
get:
description: |
View that person's news feed.
queryParameters:
with:
description: Use location to retrieve only posts with a location attached.
enum: [ location ]
filter:
description: Retrieve only posts that match a particular stream filter. Valid filters to be used here can be retrieved using the FQL stream_filter table.
responses:
200:
body:
application/json:
schema: posts
/inbox:
type: base
description: "The Threads in this user's inbox."
get:
description: |
View that person's inbox.
responses:
200:
body:
application/json:
schema: threads
/interests:
type: base
description: "The interests listed on the user's profile."
get:
description: |
Reading this endpoint returns an array of Page objects (which represent each of the interests)
responses:
200:
body:
application/json:
schema: activities
/likes:
type: base
description: All the pages this user has liked.
get:
description: |
Reading this endpoint returns an array of Page objects
responses:
200:
body:
application/json:
schema: activities
/{page_id}:
type: base
get:
description: You can append a page id to the edge in order to determine whether that page is liked by the root node user
responses:
200:
body:
application/json:
schema: page
/links:
type: postsType
description: This is a duplicate of the /feeds edge which only shows posts of type link published by the user themselves.
get:
description: Retrieve a links.
post:
description: Publishing a link.
/locations:
type: base
description: A feed of posts and photos that include location information and in which this person has been tagged.
get:
description: |
Retrieve an array of Post and Photo objects with one additional field type.
responses:
200:
body:
application/json:
schema: locations
example: !include examples/locations-example.json
/movies:
type: base
description: "The movies listed on the user's profile."
get:
description: |
Reading this endpoint returns an array of Page objects (which represent each of the movies) with the following additional fields created_time.
responses:
200:
body:
application/json:
schema: activities
/music:
type: base
description: "The music listed on the user's profile."
get:
description: |
Reading this endpoint returns an array of Page objects (which represent each music artists) with the following additional fields created_time.
responses:
200:
body:
application/json:
schema: activities
example: !include examples/activities-example.json
/notes:
type: idReturned
description: "The user's notes."
get:
description: |
Retrieve an array of Note objects.
responses:
200:
body:
application/json:
schema: notes
post:
description: Publishing a note.
body:
multipart/form-data:
formParameters:
message:
description: The main body of the note. This is a required field.
required: true
example: message=This+is+a+test+message
subject:
description: The title of the note. This is a required field.
required: true
example: subject=This+is+a+test+note
/notifications:
type: successReturned
description: App notifications for the user.
get:
description: |
Retrieve an array of Notification objects.
responses:
200:
body:
application/json:
schema: notifications
post:
description: |
Generate new app to user notifications.
body:
multipart/form-data:
formParameters:
href:
description: "The relative path that someone clicking on the notification will be directed to. This is will be appended to the app's canvas URL."
example: href=%2Ftesturl%3Fparam1%3Dvalue1
template:
description: The message text of the notification. This can be formatted according to special text templating. Maximum of 180 characters.
example: template=This+is+a+test+message
/outbox:
type: base
description: "The messages in this user's outbox."
get:
description: |
Retrieve an array of Thread objects.
responses:
200:
body:
application/json:
schema: threads
/payment_transactions:
type: base
description: The Facebook Payments orders the user placed with an application.
get:
is: [ timePageable ]
description: |
Retrieve an array of Payment objects.
queryParameters:
request_id:
description: To retrieve the payment details using the request_id
example: request_id=YOUR_REQUEST_ID
filds:
description: |
|Name|Description|Permissions|Returns|
|---|---|---|---|
|id|The payment ID|A valid app access_token|string|
|user|The consumer's first and last name along with their user id|A valid app access_token|Object containing name and id parameters|
|product|The URL of the og:product object ordered|A valid app access_token|string|
|quantity|The quantity of the product contained in the order|A valid app access_token|integer|
|request_id|The unique, optional app-created identifier passed into the JS function (255 character maximum)|A valid app access_token|string|
|application|The app associated with this payment|A valid app access_token|Object containing name, namespace and id parameters|
|actions|The type, status, amount, currency, time_created and time_updated for a Payment.type can have the following values: charge, refund, chargeback, chargeback reversal, decline as described here status can have the following values: inited, processing, completed, failed as described here|A valid app access_token|Array of objects containing type, status, amount, currency, time_created and time_updated parameters|
|items|The items associated with the payment containing type, product and quantity|A valid app access_token|Object containing type, product and quantity parameters|
|country|Buyer's ISO Country Code for tax purposes|A valid app access_token|string|
|created_time|The time the Payment was originally created|A valid app access_token|string|
|payout_foreign_exchange_rate|Exchange rate used to calculate payout amount which is remitted in USD|A valid app access_token|double|
|disputes|Contains the information related to a dispute, including the user_comment and user_email which is provided by the consumer when the dispute is initiated. Additionally contains the current status of the dispute, the time the dispute was created an an resolution reason, if available.|A valid app access_token|Object containing user_comment, time_created, user_email, status and reason parameters|
|test|Optional parameter that shows up when a payment is made by a payment tester listed in the app's dashboard|This represents a transaction that has not been charged to the consumer's payment intsrument||
responses:
200:
body:
application/json:
schema: payments
example: !include examples/payments-example.json
/permissions:
type: base
description: The permissions that user has granted the application.
get:
description: The call must be made with either a user access token or your app access token. The call will return a JSON string containing the permission names which have been granted to the app
responses:
200:
body:
application/json:
schema: permissions
example: !include examples/permissions-example.json
/photos:
type: base
description: Photos the user (or friend) is tagged in.
get:
description: |
Retrieve an array of Photo objects.
responses:
200:
body:
application/json:
schema: photos
example: !include examples/photos-example.json
/uploaded:
type: base
description: Similar to /photos except shows all photos this person has uploaded.
get:
description: Reading a photos uploaded.
responses:
200:
body:
application/json:
schema: photos
example: !include examples/photos-example.json
/pokes:
type: base
description: "The user's pokes."
get:
description: |
A user access token with read_mailbox permission is required to see pokes for that person.
responses:
200:
body:
application/json:
schema: pokes
/questions:
type: base
description: "The user's questions."
get:
description: Return an array of Question objects.
responses:
200:
body:
application/json:
schema: questions
/scores:
type: successReturned
description: "The scores this person has received from Facebook Games that they've played."
get:
description: |
Retrieve all scores that person's friends have received from other apps.
responses:
200:
body:
application/json:
schema: scores
post:
description: |
You can publishing scores for the person.
body:
multipart/form-data:
formParameters:
score:
description: The score that you want to set for this person.
type: integer
required: true
example: score=3444
delete:
description: You can delete the score this person has received from your app only.
/statuses:
type: postsType
description: This is a duplicate of the /feeds edge which only shows status update posts published by the user themselves.
get:
description: Retrieve the statuses.
/subscribedto:
type: base
description: "People you're subscribed to."
get:
description: |
Retrieve an array of User objects that represent each followed person.
responses:
200:
body:
application/json:
schema: users
/subscribers:
type: base
description: "The user's subscribers."
get:
description: |
Retrieve an array of User objects that represent each follower.
responses:
200:
body:
application/json:
schema: users
/tagged:
type: postsType
description: This is a duplicate of the /feeds edge which only shows posts in which the user is tagged.
get:
description: Shows posts in which the person is tagged.
post:
description: To publish new posts.
/television:
type: base
description: "The television listed on the user's profile."
get:
description: |
Reading this endpoint returns an array of Page objects (which represent each of the TV shows) .
responses:
200:
body:
application/json:
schema: activities
/videos:
type: idReturned
description: The videos this user has been tagged in.
get:
description: |
Retreive the videos this user has been tagged in.
responses:
200:
body:
application/json:
schema: videos
post:
description: Videos must be encoded as multipart/form-data and published to graph-video.facebook.com instead of the regular Graph API URL.
body:
multipart/form-data:
formParameters:
source:
description: he video, encoded as form data. This field is required.
required: true
example: source=%7Bvideo-data%7D
description:
description: The description of the video, used as the accompanying status message in any feed story.
title:
description: The title of the video.
/uploaded:
type: base
description: Similar to /videos except shows all videos this person has uploaded.
get:
description: shows all videos that were published to Facebook by this person.
responses:
200:
body:
application/json:
schema: videos
/mutualfriends/{user_id_b}:
type: base
description: The mutual friends between two users.
get:
description: |
Retrieve an array of User objects each representing a mutual friend.
responses:
200:
body:
application/json:
schema: users
/posts:
type: postsType
get:
description: Shows posts published by the person themselves.
/tagged_places:
type: base
get:
description: A list of tags of this person at a place in a photo, video, post, status or link.
/picture:
type: base
description: "The user's profile picture."
get:
description: "Retrieve the person's profile picture."
queryParameters:
url:
description: The URL of the profile photo.
is_silhouette:
description: "Indicates whether the profile photo is the default 'silhouette' picture, or has been replaced."
type: boolean
height:
description: Picture height in pixels. height and width are only returned when specified as modifiers.
example: height=200
width:
description: Picture height in pixels. height and width are only returned when specified as modifiers.
example: width=200
redirect:
example: redirect=0
type:
example: type=normal
responses:
200:
body:
application/json:
schema: pictures
/books.quotes:
description: An action representing someone quoting from a book.
post:
description: Create a books.quotes object.
body:
application/x-www-form-urlencoded:
formParameters:
body:
displayName: body
description: The text of the quotation
required: true
example: Some Arbitrary String
book:
displayName: book
description: An object representing the book
required: true
example: http://samples.ogp.me/344468272304428
responses:
200:
body:
application/json:
get:
description: Retreive all books.quotes objects.
responses:
200:
body:
application/json:
/books.rates:
description: An action representing someone rating a book.
post:
description: Create a books.rates object.
body:
application/x-www-form-urlencoded:
formParameters:
book:
displayName: book
description: An object representing the book
required: true
example: http://samples.ogp.me/344468272304428
"rating:value":
displayName: "rating:value"
description: The value of the rating given to the book
required: true
example: 3.1415926535
"rating:scale":
displayName: "rating:scale"
description: The highest value possible in the rating scale
required: true
example: 42
"rating:normalized_value":
displayName: "rating:normalized_value"
description: Deprecated
review_link:
displayName: review_link
description: Link to the landing page for the review if one exists.
review_text:
displayName: review_text
description: The text content of the review
responses:
200:
body:
application/json:
get:
description: Retreive all books.rates objects.
responses:
200:
body:
application/json:
/books.reads:
description: An action representing someone reading a book.
post:
description: Create a books.reads object.
body:
application/x-www-form-urlencoded:
formParameters:
book:
displayName: book
description: The object representing the book
required: true
example: http://samples.ogp.me/344468272304428
"progress:timestamp":
displayName: "progress:timestamp"
description: Time of a change in progress towards finishing the book
required: true
example: 1407351164
"progress:percent_complete":
displayName: "progress:percent_complete"
description: Percentage progress towards finishing the book
required: true
example: 3.1415926535
responses:
200:
body:
application/json:
get:
description: Retreive all books.reads objects.
responses:
200:
body:
application/json:
/books.wants_to_read:
description: An action representing someone wanting to read a book.
post:
description: Create a books.wants_to_read object.
body:
application/x-www-form-urlencoded:
formParameters:
book:
displayName: book
description: The object representing the book
required: true
example: http://samples.ogp.me/344468272304428
responses:
200:
body:
application/json:
get:
description: Retreive all books.wants_to_read objects.
responses:
200:
body:
application/json:
/fitness.bikes:
description: An action representing someone cycling a course.
post:
description: Create a fitness.bikes object.
body:
application/x-www-form-urlencoded:
formParameters:
course:
displayName: course
description: An object representing the course
required: true
example: http://samples.ogp.me/136756249803614
responses:
200:
body:
application/json:
get:
description: Retreive all fitness.bikes objects.
responses:
200:
body:
application/json:
/fitness.runs:
description: An action representing someone running a course.
post:
description: Create a fitness.runs object.
body:
application/x-www-form-urlencoded:
formParameters:
course:
displayName: course
description: An object representing the course
required: true
example: http://samples.ogp.me/136756249803614
responses:
200:
body:
application/json:
get:
description: Retreive all fitness.runs objects.
responses:
200:
body:
application/json:
/fitness.walks:
description: An action representing someone walking a course.
post:
description: Create a fitness.walks object.
body:
application/x-www-form-urlencoded:
formParameters:
course:
displayName: course
description: An object representing the course
required: true
example: http://samples.ogp.me/136756249803614
responses:
200:
body:
application/json:
get:
description: Retreive all fitness.walks objects.
responses:
200:
body:
application/json:
/games.achieves:
description: An action representing someone reaching a game achievement.
post:
description: Create a games.achieves object.
body:
application/x-www-form-urlencoded:
formParameters:
achievement:
displayName: achievement
description: An object representing the achievement
required: true
example: http://samples.ogp.me/161147604019932
importance:
displayName: importance
description: The importance of the achievement
responses:
200:
body:
application/json:
get:
description: Retreive all games.achieves objects.
responses:
200:
body:
application/json:
/games.celebrate:
description: An action representing someone celebrating a victory in a game.
post:
description: Create a games.celebrate object.
body:
application/x-www-form-urlencoded:
formParameters:
victory:
displayName: victory
description: An object representing victory in the game
required: true
example: http://samples.ogp.me/500426766634310
responses:
200:
body:
application/json:
get:
description: Retreive all games.celebrate objects.
responses:
200:
body:
application/json:
/games.passes:
description: "An action representing someone passing friends' scores in a game."
post:
description: Create a games.passes object.
body:
application/x-www-form-urlencoded:
formParameters:
game:
displayName: game
description: An object representing the game
required: true
example: http://samples.ogp.me/163382137069945
passed_users:
displayName: passed_users
description: The user IDs and scores of any passed friends
required: true
example: Some Arbitrary String
score:
displayName: score
description: "The user's score"
required: true
example: 42
target_score:
displayName: target_score
description: The highest score in the game by a friend
target_user:
displayName: target_user
description: The user ID of the friend with the target score
responses:
200:
body:
application/json:
get:
description: Retreive all games.passes objects.
responses:
200:
body:
application/json:
/music.listens:
description: An action representing someone listening to a song, album, radio station, playlist or musician
post:
description: Create a music.listens object.
body:
application/x-www-form-urlencoded:
formParameters:
album:
displayName: album
description: An object representing an album
required: true
example: http://samples.ogp.me/461258347226565
musician:
displayName: musician
description: An object representing a musician
required: true
example: http://samples.ogp.me/390580850990722
paused:
displayName: paused
description: Whether the audio is paused or not
playlist:
displayName: playlist
description: An object representing a playlist
required: true
example: http://samples.ogp.me/461258467226553
radio_station:
displayName: radio_station
description: An object representing a radio station
required: true
example: http://samples.ogp.me/461258533893213
song:
displayName: song
description: An object representing a song
required: true
example: http://samples.ogp.me/461258627226537
via_user:
displayName: via_user
description: The ID of anyone whom the user discovered this audio from
responses:
200:
body:
application/json:
get:
description: Retreive all music.listens objects.
responses:
200:
body:
application/json:
/music.playlists:
description: An action representing someone creating a playlist.
post:
description: Create a music.playlists object.
body:
application/x-www-form-urlencoded:
formParameters:
playlist:
displayName: playlist
description: An object representing the playlist
required: true
example: http://samples.ogp.me/461258467226553
responses:
200:
body:
application/json:
get:
description: Retreive all music.playlists objects.
responses:
200:
body:
application/json:
/news.publishes:
description: An action representing someone publishing a news article.
post:
description: Create a news.publishes object.
body:
application/x-www-form-urlencoded:
formParameters:
article:
displayName: article
description: An object representing the article
required: true
example: http://samples.ogp.me/434264856596891
responses:
200:
body:
application/json:
get:
description: Retreive all news.publishes objects.
responses:
200:
body:
application/json:
/news.reads:
description: An action representing someone reading a news article.
post:
description: Create a news.reads object.
body:
application/x-www-form-urlencoded:
formParameters:
article:
displayName: article
description: An object representing the article
required: true
example: http://samples.ogp.me/434264856596891
responses:
200:
body:
application/json:
get:
description: Retreive all news.reads objects.
responses:
200:
body:
application/json:
/og.follows:
description: An action representing someone following a Facebook user
post:
description: Create a og.follows object.
body:
application/x-www-form-urlencoded:
formParameters:
profile:
displayName: profile
description: An object representing the profile of the user
required: true
example: http://samples.ogp.me/390580850990722
responses:
200:
body:
application/json:
get:
description: Retreive all og.follows objects.
responses:
200:
body:
application/json:
/og.likes:
description: An action representing someone liking any object.
post:
description: Create a og.likes object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: The object that was liked
required: true
example: http://samples.ogp.me/226075010839791
responses:
200:
body:
application/json:
get:
description: Retreive all og.likes objects.
responses:
200:
body:
application/json:
/places.saves:
description: An action representing someone saving a place.
post:
description: Create a places.saves object.
body:
application/x-www-form-urlencoded:
formParameters:
generic_place:
displayName: generic_place
description: Place
required: true
example: http://samples.ogp.me/304328139642010
story_type:
displayName: story_type
description: For internal use only
responses:
200:
body:
application/json:
get:
description: Retreive all places.saves objects.
responses:
200:
body:
application/json:
/video.rates:
description: An action representing someone rating a movie, TV show, episode or another piece of video content.
post:
description: Create a video.rates object.
body:
application/x-www-form-urlencoded:
formParameters:
episode:
displayName: episode
description: An object representing an episode of a show
required: true
example: http://samples.ogp.me/335419676534648
movie:
displayName: movie
description: An object representing a movie
required: true
example: http://samples.ogp.me/453907197960619
other:
displayName: other
description: An object representing any other type of video
required: true
example: http://samples.ogp.me/467235199955838
"rating:value":
displayName: "rating:value"
description: The value of the rating given
required: true
example: 3.1415926535
"rating:scale":
displayName: "rating:scale"
description: The highest value possible in the rating scale
required: true
example: 42
"rating:normalized_value":
displayName: "rating:normalized_value"
description: Deprecated
review_link:
displayName: review_link
description: Link to the landing page for the review if one exists.
review_text:
displayName: review_text
description: The text content of the review
tv_show:
displayName: tv_show
description: An object representing a TV show
required: true
example: http://samples.ogp.me/413802348663468
responses:
200:
body:
application/json:
get:
description: Retreive all video.rates objects.
responses:
200:
body:
application/json:
/video.wants_to_watch:
description: An action representing someone wanting to watch video content.
post:
description: Create a video.wants_to_watch object.
body:
application/x-www-form-urlencoded:
formParameters:
airing_end_time:
displayName: airing_end_time
description: Time the video ends
airing_id:
displayName: airing_id
description: ID of the airing of this video
airing_start_time:
displayName: airing_start_time
description: Time the video starts
episode:
displayName: episode
description: An object representing an episode of a show
required: true
example: http://samples.ogp.me/335419676534648
movie:
displayName: movie
description: An object representing a movie
required: true
example: http://samples.ogp.me/453907197960619
other:
displayName: other
description: An object representing any general video content
required: true
example: http://samples.ogp.me/467235199955838
tv_show:
displayName: tv_show
description: An object representing a TV show
required: true
example: http://samples.ogp.me/413802348663468
responses:
200:
body:
application/json:
get:
description: Retreive all video.wants_to_watch objects.
responses:
200:
body:
application/json:
/video.watches:
description: An action representing someone watching video content.
post:
description: Create a video.watches object.
body:
application/x-www-form-urlencoded:
formParameters:
episode:
displayName: episode
description: An object representing an episode
required: true
example: http://samples.ogp.me/335419676534648
movie:
displayName: movie
description: An object representing a movie
required: true
example: http://samples.ogp.me/453907197960619
tv_episode:
displayName: tv_episode
description: An object representing a TV episode
required: true
example: http://samples.ogp.me/335419676534648
tv_show:
displayName: tv_show
description: An object representing a TV show
required: true
example: http://samples.ogp.me/413802348663468
video:
displayName: video
description: An object representing any other type of video content
required: true
example: http://samples.ogp.me/467235199955838
responses:
200:
body:
application/json:
get:
description: Retreive all video.watches objects.
responses:
200:
body:
application/json:
/objects:
/article:
description: This object represents an article on a website. It is the preferred type for blog posts and news stories.
post:
description: Create a article object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"article\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Article\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all article objects.
responses:
200:
body:
application/json:
/book:
description: This object type represents a book or publication. This is an appropriate type for ebooks, as well as traditional paperback or hardback books. Do not use this type to represent magazines
post:
description: Create a book object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"book\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Book\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all book objects.
responses:
200:
body:
application/json:
/books.author:
description: This object type represents a single author of a book.
post:
description: Create a books.author object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"books.author\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Neal Stephenson\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"og:description\":\"Neal Stepheson is the author of some very long, very good books. \",\"books:gender\":\"Male\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all books.author objects.
responses:
200:
body:
application/json:
/books.book:
description: This object type represents a book or publication. This is an appropriate type for ebooks, as well as traditional paperback or hardback books
post:
description: Create a books.book object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: |
"{\"fb:app_id\":\"302184056577324\",\"og:type\":\"books.book\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Snow Crash\",\"og:image\":\"http:\/\/en.wikipedia.org\/wiki\/File:Snowcrash.jpg\",\"og:description\":\"In reality, Hiro Protagonist delivers pizza for Uncle Enzo's CosoNostra Pizza Inc., but in the Metaverse he's a warrior prince. Plunging headlong into the enigma of a new computer virus that's striking down hackers everywhere, he races along the neon-lit streets on a search-and-destroy mission for the shadowy virtual villain threatening to bring about infocalypse. Snow Crash is a mind-altering romp through a future America so bizarre, so outrageous -- you'll recognize it immediately.\",\"books:isbn\":\"0553380958\",\"books:rating:value\":\"Sample Rating: value\",\"books:rating:scale\":\"Sample Rating: scale\",\"books:author\":\"http:\/\/samples.ogp.me\/344562145628374\"}"
responses:
200:
body:
application/json:
get:
description: Retreive all books.book objects.
responses:
200:
body:
application/json:
/books.genre:
description: This object type represents the genre of a book or publication.
post:
description: Create a books.genre object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"books.genre\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Genre\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"books:canonical_name\":\"Sample Canonical Name\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all books.genre objects.
responses:
200:
body:
application/json:
/business.business:
description: This object type represents a place of business that has a location, operating hours and contact information.
post:
description: Create a business.business object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"business.business\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Business\",\"og:image\":\"https:\/\/fbstatic-a.akamaihd.net\/images\/devsite\/attachment_blank.png\",\"business:contact_data:street_address\":\"Sample Contact data: Street Address\",\"business:contact_data:locality\":\"Sample Contact data: Locality\",\"business:contact_data:postal_code\":\"Sample Contact data: Postal Code\",\"business:contact_data:country_name\":\"Sample Contact data: Country Name\",\"place:location:latitude\":\"Sample Location: Latitude\",\"place:location:longitude\":\"Sample Location: Longitude\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all business.business objects.
responses:
200:
body:
application/json:
/fitness.course:
description: "This object type represents the user's activity contributing to a particular run, walk, or bike course."
post:
description: Create a fitness.course object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"fitness.course\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Course\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"fitness:custom_unit_energy:value\":\"Sample Total Custom-Unit Energy: Value\",\"fitness:custom_unit_energy:units\":\"Sample Total Custom-Unit Energy: Units\",\"fitness:distance:value\":\"Sample Distance: Value\",\"fitness:distance:units\":\"Sample Distance: Units\",\"fitness:duration:value\":\"Sample Duration: Value\",\"fitness:duration:units\":\"Sample Duration: Units\",\"fitness:metrics:custom_unit_energy:value\":\"Sample Metrics: Custom-Unit Energy: Value\",\"fitness:metrics:custom_unit_energy:units\":\"Sample Metrics: Custom-Unit Energy: Units\",\"fitness:metrics:distance:value\":\"Sample Metrics: Distance: Value\",\"fitness:metrics:distance:units\":\"Sample Metrics: Distance: Units\",\"fitness:metrics:location:latitude\":\"Sample Metrics: Location: Latitude\",\"fitness:metrics:location:longitude\":\"Sample Metrics: Location: Longitude\",\"fitness:metrics:speed:value\":\"Sample Metrics: Speed: Value\",\"fitness:metrics:speed:units\":\"Sample Metrics: Speed: Units\",\"fitness:metrics:pace:value\":\"Sample Metrics: Pace: Value\",\"fitness:metrics:pace:units\":\"Sample Metrics: Pace: Units\",\"fitness:pace:value\":\"Sample Pace: Value\",\"fitness:pace:units\":\"Sample Pace: Units\",\"fitness:speed:value\":\"Sample Speed: Value\",\"fitness:speed:units\":\"Sample Speed: Units\",\"fitness:splits:values:value\":\"Sample Splits: Values: Value\",\"fitness:splits:values:units\":\"Sample Splits: Values: Units\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all fitness.course objects.
responses:
200:
body:
application/json:
/fitness.unit:
description: This object type represents a custom unit of measurement.
post:
description: Create a fitness.unit object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"fitness.unit\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Unit\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all fitness.unit objects.
responses:
200:
body:
application/json:
/game:
description: This is an unsupported object type
post:
description: Create a game object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"game\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Game\",\"og:image\":\"http:\/\/static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all game objects.
responses:
200:
body:
application/json:
/game.achievement:
description: "This object type represents a specific achievement in a game. An app must be in the 'Games' category in App Dashboard to be able to use this object type. Every achievement has a `game:points` value associate with it. This is not related to the points the user has scored in the game, but is a way for the app to indicate the relative importance and scarcity of different achievements: * Each game gets a total of 1,000 points to distribute across its achievements * Each game gets a maximum of 1,000 achievements * Achievements which are scarcer and have higher point values will receive more distribution in Facebook's social channels. For example, achievements which have point values of less than 10 will get almost no distribution. Apps should aim for between 50-100 achievements consisting of a mix of 50 (difficult), 25 (medium), and 10 (easy) point value achievements Read more on how to use achievements in [this guide](/docs/howtos/achievements/)."
post:
description: Create a game.achievement object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"game.achievement\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Game Achievement\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"game:points\":\"Sample Points\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all game.achievement objects.
responses:
200:
body:
application/json:
/game.stat_type:
description: ""
post:
description: Create a game.stat_type object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"game.stat_type\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Stat\",\"og:image\":\"https:\/\/fbstatic-a.akamaihd.net\/images\/devsite\/attachment_blank.png\",\"game:stat_number_format\":\"Sample Stat Number Format\",\"game:display_format_type\":\"Sample Display Format Type\",\"game:is_bigger_better\":\"true\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all game.stat_type objects.
responses:
200:
body:
application/json:
/music.album:
description: This object type represents a music album; in other words, an ordered collection of songs from an artist or a collection of artists. An album can comprise multiple discs.
post:
description: Create a music.album object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"music.album\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Album\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"music:song:url\":\"Sample Song: URL\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all music.album objects.
responses:
200:
body:
application/json:
/music.musician:
description: This object type represents a musician or band. It is a subclass of the profile object type.
post:
description: Create a music.musician object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"music.musician\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Musician\",\"og:image\":\"https:\/\/fbstatic-a.akamaihd.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all music.musician objects.
responses:
200:
body:
application/json:
/music.playlist:
description: This object type represents a music playlist, an ordered collection of songs from a collection of artists.
post:
description: Create a music.playlist object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"music.playlist\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Music Playlist\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"music:song:url\":\"Sample Song: URL\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all music.playlist objects.
responses:
200:
body:
application/json:
/music.radio_station:
description: "This object type represents a 'radio' station of a stream of audio. The audio properties should be used to identify the location of the stream itself."
post:
description: Create a music.radio_station object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"music.radio_station\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Radio Station\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all music.radio_station objects.
responses:
200:
body:
application/json:
/music.song:
description: This object type represents a single song.
post:
description: Create a music.song object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"music.song\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Song\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"music:album:url\":\"Sample Album: URL\",\"music:preview_url:url\":\"Sample Preview URL: URL\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all music.song objects.
responses:
200:
body:
application/json:
/object:
description: This type represents a generic object, and can be used for objects that are not of a common type, nor of a defined custom type.
post:
description: Create a object object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"object\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Object\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all object objects.
responses:
200:
body:
application/json:
/place:
description: This object type represents a place - such as a venue, a business, a landmark, or any other location which can be identified by longitude and latitude.
post:
description: Create a place object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"place\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Place\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"place:location:latitude\":\"Sample Location: Latitude\",\"place:location:longitude\":\"Sample Location: Longitude\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all place objects.
responses:
200:
body:
application/json:
/product:
description: This object type represents a product. This includes both virtual and physical products, but it typically represents items that are available in an online store.
post:
description: Create a product object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"product\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Product\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"product:original_price:amount\":\"Sample Original Price: \",\"product:original_price:currency\":\"Sample Original Price: \",\"product:pretax_price:amount\":\"Sample Pre-tax Price: \",\"product:pretax_price:currency\":\"Sample Pre-tax Price: \",\"product:price:amount\":\"Sample Price: \",\"product:price:currency\":\"Sample Price: \",\"product:shipping_cost:amount\":\"Sample Shipping Cost: \",\"product:shipping_cost:currency\":\"Sample Shipping Cost: \",\"product:weight:value\":\"Sample Weight: Value\",\"product:weight:units\":\"Sample Weight: Units\",\"product:shipping_weight:value\":\"Sample Shipping Weight: Value\",\"product:shipping_weight:units\":\"Sample Shipping Weight: Units\",\"product:sale_price:amount\":\"Sample Sale Price: \",\"product:sale_price:currency\":\"Sample Sale Price: \",\"product:sale_price_dates:start\":\"Sample Sale Price Dates: Start\",\"product:sale_price_dates:end\":\"Sample Sale Price Dates: End\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all product objects.
responses:
200:
body:
application/json:
/product.group:
description: This object type represents a group of product items.
post:
description: Create a product.group object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"product.group\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Group\",\"og:image\":\"https:\/\/fbstatic-a.akamaihd.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all product.group objects.
responses:
200:
body:
application/json:
/product.item:
description: This object type represents a product item.
post:
description: Create a product.item object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"product.item\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Item\",\"og:image\":\"https:\/\/fbstatic-a.akamaihd.net\/images\/devsite\/attachment_blank.png\",\"product:retailer_item_id\":\"Sample Retailer Product Item ID\",\"product:price:amount\":\"Sample Price: \",\"product:price:currency\":\"Sample Price: \",\"product:shipping_cost:amount\":\"Sample Shipping Cost: \",\"product:shipping_cost:currency\":\"Sample Shipping Cost: \",\"product:shipping_weight:value\":\"Sample Shipping Weight: Value\",\"product:shipping_weight:units\":\"Sample Shipping Weight: Units\",\"product:sale_price:amount\":\"Sample Sale Price: \",\"product:sale_price:currency\":\"Sample Sale Price: \",\"product:sale_price_dates:start\":\"Sample Sale Price Dates: Start\",\"product:sale_price_dates:end\":\"Sample Sale Price Dates: End\",\"product:availability\":\"Sample Availability\",\"product:condition\":\"Sample Condition\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all product.item objects.
responses:
200:
body:
application/json:
/profile:
description: "This object type represents a person. While appropriate for celebrities, artists, or musicians, this object type can be used for the profile of any individual. The `fb:profile_id` field associates the object with a Facebook user."
post:
description: Create a profile object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"profile\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Profile\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all profile objects.
responses:
200:
body:
application/json:
/quick_election.election:
description: This object type represents an election
post:
description: Create a quick_election.election object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"quick_election.election\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Election\",\"og:image\":\"https:\/\/fbstatic-a.akamaihd.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all quick_election.election objects.
responses:
200:
body:
application/json:
/restaurant.menu:
description: "This object type represents a restaurant's menu. A restaurant can have multiple menus, and each menu has multiple sections."
post:
description: Create a restaurant.menu object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"restaurant.menu\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Menu\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"restaurant:restaurant\":\"Sample Restaurant\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all restaurant.menu objects.
responses:
200:
body:
application/json:
/restaurant.menu_item:
description: "This object type represents a single item on a restaurant's menu. Every item belongs within a menu section."
post:
description: Create a restaurant.menu_item object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"restaurant.menu_item\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Menu Item\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"restaurant:section\":\"Sample Section\",\"restaurant:variation:price:amount\":\"Sample Variation: Price: \",\"restaurant:variation:price:currency\":\"Sample Variation: Price: \"}'
responses:
200:
body:
application/json:
get:
description: Retreive all restaurant.menu_item objects.
responses:
200:
body:
application/json:
/restaurant.menu_section:
description: "This object type represents a section in a restaurant's menu. A section contains multiple menu items."
post:
description: Create a restaurant.menu_section object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"restaurant.menu_section\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Menu Section\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"restaurant:menu\":\"Sample Menu\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all restaurant.menu_section objects.
responses:
200:
body:
application/json:
/restaurant.restaurant:
description: This object type represents a restaurant at a specific location.
post:
description: Create a restaurant.restaurant object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"restaurant.restaurant\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Restaurant\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"og:description\":\"This place rocks\",\"restaurant:contact_info:street_address\":\"1601 Willow Rd.\",\"restaurant:contact_info:locality\":\"Menlo Park\",\"restaurant:contact_info:region\":\"California\",\"restaurant:contact_info:postal_code\":\"94025\",\"restaurant:contact_info:country_name\":\"United States\",\"restaurant:contact_info:email\":\"brian@example.com\",\"restaurant:contact_info:phone_number\":\"212-555-1234\",\"restaurant:contact_info:website\":\"http:\/\/www.facebook.com\",\"place:location:latitude\":\"37.484828\",\"place:location:longitude\":\"-122.148283\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all restaurant.restaurant objects.
responses:
200:
body:
application/json:
/video.episode:
description: This object type represents an episode of a TV show and contains references to the actors and other professionals involved in its production. An episode is defined by us as a full-length episode that is part of a series. This type must reference the series this it is part of.
post:
description: Create a video.episode object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"video.episode\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample TV Episode\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"video:actor:id\":\"Sample Actor: ID\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all video.episode objects.
responses:
200:
body:
application/json:
/video.movie:
description: This object type represents a movie, and contains references to the actors and other professionals involved in its production. A movie is defined by us as a full-length feature or short film. Do not use this type to represent movie trailers, movie clips, user-generated video content, etc.
post:
description: Create a video.movie object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"video.movie\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Movie\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"video:actor:id\":\"Sample Actor: ID\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all video.movie objects.
responses:
200:
body:
application/json:
/video.other:
description: This object type represents a generic video, and contains references to the actors and other professionals involved in its production. For specific types of video content, use the `video.movie` or `video.tv_show` object types. This type is for any other type of video content not represented elsewhere (eg. trailers, music videos, clips, news segments etc.)
post:
description: Create a video.other object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"video.other\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Video\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"video:actor:id\":\"Sample Actor: ID\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all video.other objects.
responses:
200:
body:
application/json:
/video.tv_show:
description: This object type represents a TV show, and contains references to the actors and other professionals involved in its production. For individual episodes of a series, use the `video.episode` object type. A TV show is defined by us as a series or set of episodes that are produced under the same title (eg. a television or online series)
post:
description: Create a video.tv_show object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"video.tv_show\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample TV Show\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\",\"video:actor:id\":\"Sample Actor: ID\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all video.tv_show objects.
responses:
200:
body:
application/json:
/website:
description: This object type represents a website. It is a simple object type and uses only common Open Graph properties. For specific pages within a website, the `article` object type should be used.
post:
description: Create a website object.
body:
application/x-www-form-urlencoded:
formParameters:
object:
displayName: object
description: ""
required: true
example: '{\"fb:app_id\":\"302184056577324\",\"og:type\":\"website\",\"og:url\":\"Put your own URL to the object here\",\"og:title\":\"Sample Website\",\"og:image\":\"https:\/\/s-static.ak.fbcdn.net\/images\/devsite\/attachment_blank.png\"}'
responses:
200:
body:
application/json:
get:
description: Retreive all website objects.
responses:
200:
body:
application/json:
/{video_id}:
type: base
description: A video published to Facebook.
get:
description: Retreive a Video.
responses:
200:
body:
application/json:
schema: video
/comments:
type: idReturned
post:
description: You can comment on a Video by issuing an HTTP POST request to VIDEO_ID/comments with the publish_stream permission and following parameters.
body:
multipart/form-data:
formParameters:
message:
description: Comment text
required: true
/likes:
type: successReturned
post:
description: You can like a Video by issuing an HTTP POST request to VIDEO_ID/likes with the publish_stream permission. No parameters necessary.
delete:
description: You can unlike a Video by issuing an HTTP DELETE request to VIDEO_ID/like with the publish_stream permission.
/sharedposts:
type: base
get:
description: |
View the post after privacy settings are taken into account.
/{order_id}:
type: idReturned
post:
description: You can update properties an existing order by issuing a HTTP POST request to /ORDER_ID with the list of parameters you wish to update.
body:
multipart/form-data:
formParameters:
status:
description: A string representing the status you want the order to move to. You can only update it to one of settled or refunded.
message:
description: a message to associate with the update of the order, required when moving from a disputed status to settled or refunded.
params:
description: "optional JSON-encoded dictionary {'comment' => {string}}"
get:
description: If you issue a HTTP GET request to /ORDER_ID and if the order in question has been refunded by Facebook, then there you will see the refund_reason_code which explains why the order was refunded by Facbook with one of values below. See more information about why Facebook refunds orders in the Chargebacks and disputes doc.
responses:
200:
body:
application/json:
schema: order
example: !include examples/order-example.json
/bgolub:
type: base
get:
queryParameters:
fields:
example: fields=id,name,picture
/{request_id}:
type: base
get:
delete:
/{TEST_USER_ID}:
type: successReturned
delete:
description: You can delete an existing test user like any other object in the graph.
queryParameters:
access_token:
example: access_token=TEST_USER_ACCESS_TOKEN (OR) APP_ACCESS_TOKEN
post:
description: |
You can change a test user's password by simply issuing a POST request with a password parameter to the test user ID in the Graph API.
Parameters password and name: both optional parameters. This request can be used to change the name and/or password of an existing test user.
queryParameters:
password:
example: password=NEW_PASSWORD
name:
example: name=NEW_NAME
access_token:
example: access_token=APP_ACCESS_TOKEN
/friends/{TEST_USER_2_ID}:
type: successReturned
post:
description: You can use the API to make friends connections for a test user with other test users of that app. We provide an API for creating a friend request as well as for accepting a friend request. This enables developers to create several friend connections between test users via the API itself, without having to log-in as the test user to accept requests.
queryParameters:
access_token:
example: access_token=TEST_USER_1_ACCESS_TOKEN
/{conversation_id}:
type: base
get:
description: |
Reading of conversation.
Permissions
A page access token with read_page_mailboxes permission can be used to view any conversation that Page is involved with.
A user access token with read_mailbox permission can be used to view any conversation that person is involved with if they are a developer of the app making the request.
responses:
200:
body:
application/json:
schema: apprequest
/messages:
type: idReturned
get:
description: Reading this endpoint returns an array of Message objects.
responses:
200:
body:
application/json:
schema: apprequest
post:
description: Pages can only reply to a message - they cannot initiate a conversation. Also, a Page can only respond twice to a particular message, the other party will have to respond before they can reply again.
body:
multipart/form-data:
formParameters:
message:
description: The text of reply. This field is required.
required: true
/{group_doc_id}:
type: base
description: Represents a doc within a Facebook group. The /{group_doc_id} node returns a single doc.
get:
description: |
Reading
Permissions
Any valid access token if the group is public (i.e. the group's privacy setting is OPEN)
user_groups permission to retrieve docs from any groups that the session user is a member of.
App and game groups require an app access token to retrieve any docs.
responses:
200:
body:
application/json:
example: !include examples/posts-example.json
/{app_link_host_id}:
type: successReturned
description: An individual app link host object created by an app. An app link host is basically a wrapper for a group of different app links. Read more about what app links are at our applinks.org site.
get:
description: |
Reading
Permissions
Any valid access token is required.
post:
description: |
Updating
Facebook apps can update app links using this edge
Permissions
An app access token is required to update app link hosts belonging to that app.
body:
application/x-www-form-urlencoded:
formParameters:
name:
example: name=Updated+Name
android:
example: android=%5B%5D
web:
example: web=%7B%22should_fallback%22%3A+true%7D
delete:
description: |
Deleting
Facebook apps can delete app links using this edge
Permissions
An app access token is required to delete app link hosts belonging to that app.
/{app_id}:
type: successReturned
description: A Facebook app.
get:
description: Public fields are viewable without any access token.
responses:
200:
body:
application/json:
schema: application
post:
description: |
An app access token is required to update these fields for that app.
body:
multipart/form-data:
formParameters:
app_domains:
description: Domains and subdomains this app can use.
auth_dialog_data_help_url:
description: The URL of a special landing page that helps users of an app begin publishing Open Graph activity
auth_dialog_headline:
description: One line description of an app that appears in the Auth Dialog
"auth_dialog_perms_explanation ":
description: The text to explain why an app needs additional permissions that appears in the Auth Dialog
auth_referral_default_activity_privacy:
description: The default privacy setting selected for Open Graph activities in the Auth Dialog
enum:
- EVERYONE
- SELF
- NONE
- ALL_FRIENDS
example: auth_referral_default_activity_privacy=NONE
"auth_referral_enabled ":
description: Indicates whether Authenticated Referrals are enabled.
type: boolean
auth_referral_extended_perms:
description: Extended permissions that a user can choose to grant when Authenticated Referrals are enabled.
"auth_referral_friend_perms ":
description: Basic friends permissions that a user must grant when Authenticated Referrals are enabled.
"auth_referral_user_perms ":
description: Basic user permissions that a user must grant when Authenticated Referrals are enabled
"auth_referral_response_type ":
description: The format that an app receives the Auth token from the Auth Dialog in
enum: [ token , code ]
"canvas_fluid_height ":
description: Indicates whether app uses fluid or settable height values for Canvas
type: boolean
"canvas_fluid_width ":
description: Indicates whether app uses fluid or fixed width values for Canvas
type: boolean
"canvas_url ":
description: The non-secure URL from which Canvas app content is loaded.
"contact_email ":
description: Email address listed for users to contact developers.
"deauth_callback_url ":
description: URL that is pinged whenever a user removes the app
migrations:
description: Migrations settings for this app.
"mobile_web_url ":
description: URL to which Mobile users will be directed when using the app.
namespace:
description: The namespace for the app.
page_tab_default_name:
description: The title of the app when used in a Page Tab
"page_tab_url ":
description: The non-secure URL from which Page Tab app content is loaded.
"privacy_policy_url ":
description: The URL that links to a Privacy Policy for the app.
"restrictions ":
description: Demographic restrictions set for this app.
secure_canvas_url:
description: The secure URL from which Canvas app content is loaded.
"secure_page_tab_url ":
description: The secure URL from which Page Tab app content is loaded.
"server_ip_whitelist ":
description: App requests must originate from this comma-separated list of IP addresses
"social_discovery ":
description: Indicates whether app usage stories show up in the Ticker or News Feed.
type: boolean
"terms_of_service_url ":
description: URL to Terms of Service which is linked to in Auth Dialog.
"user_support_email ":
description: Main contact email for this app.
"user_support_url ":
description: URL of support for users of an app shown in Canvas footer.
"website_url ":
description: URL of a website that integrates with this app.
/achievements:
type: successReturned
post:
description: |
A developer may update the custom properties of an achievement registration with the same achievement parameter value, but with an updated custom registration property value.
body:
multipart/form-data:
formParameters:
achievement:
description: Unique URL to the achievement
required: true
display_order:
description: Order of achievement as shown in achievement stories UI (low to high). For example, a display order of 100 is displayed in the UI before 200. We use this value to surface achievements according to the order the developer has specified. Make sure value is unique and increments in the correct order for your achievements
type: integer
get:
description: You can get all achievements for an app. This will return an array of achievement objects
responses:
200:
body:
application/json:
schema: achievements
delete:
description: You can un-register an achievement for a game.
body:
multipart/form-data:
formParameters:
achievement:
description: Unique URL to the achievement
required: true
/accounts/test-users:
type: base
post:
description: You can create a test account for an application by issuing an HTTP POST request to APP_ID/accounts/test-users with an application access token
body:
multipart/form-data:
formParameters:
installed:
description: Install app for the test user upon creation
type: boolean
example: installed=true
name:
description: A name for the test user. The specified name will also be used in the email address assigned to the test user.
example: name=FULL_NAME
locale:
example: locale=en_US
permissions:
description: List of extended permissions app granted for the new test user if installed is true
example: permissions=read_stream
access_token:
required: true
example: access_token=APP_ACCESS_TOKEN
uid:
description: User id of the existing test user
example: uid=TEST_USER_ID
responses:
200:
body:
application/json:
schema: create-account
example: !include examples/create-account-example.json
get:
description: You can access the test users associated with an app by making a GET request to the Graph API with the app access token.
queryParameters:
access_token:
required: true
example: access_token=APP_ACCESS_TOKEN
responses:
200:
body:
application/json:
schema: test-user-app
example: !include examples/test-user-app-example.json
/banned:
type: successReturned
get:
description: You can retrieve a list of banned users for an app by issuing an HTTP GET request to APP_ID/banned with an application access token (i.e. a token created using the app secret, not an application Page access token as described above).
queryParameters:
app_access_token:
description: App Access Token This kind of access token is needed to modify and read the app settings. It can also be used to publish Open Graph actions. It is generated using a pre-agreed secret between the app and Facebook and is then used during calls that change app-wide settings. You obtain an app access token via a server-to-server call.
required: true
responses:
200:
body:
application/json:
schema: banned-users
post:
description: You can ban a user for an app by issuing an HTTP POST request to APP_ID/banned?uid=USER_ID1,USER_ID2 with an application access token.
body:
multipart/form-data:
formParameters:
uid:
description: User ID of user account
required: true
example: uid=USER_ID1,USER_ID2
app_access_token:
required: true
/{USER_ID}:
type: base
get:
description: You can test if a given user is banned for an app by issuing an HTTP GET request to APP_ID/banned/USER_ID with an application access token (i.e. a token created using the app secret, not an application Page access token as described above).
responses:
200:
body:
application/json:
schema: user
/groups:
type: idReturned
get:
description: Applications can get all the groups that belong to an application by issuing a GET request to /APP_ID/groups with an app access_token.
queryParameters:
access_token:
required: true
responses:
200:
body:
application/json:
schema: groups
example: !include examples/groups-example.json
post:
description: Applications create a group issuing a POST request to /APP_ID/groups with an app access_token. Optionally, a user can be set as an admin of a group with the manage_groups permission.
body:
multipart/form-data:
formParameters:
access_token:
required: true
manage_groups:
name:
description: name
required: true
description:
description: A description for the group
privacy:
description: The privacy setting for the group
enum:
- open
- secret
- closed
default: closed
admin:
description: The user ID of the admin for the group
/{GROUP_ID}:
type: successReturned
delete:
description: Applications delete a group. If the group has no members, the group will be irreversibly deleted. If the group has members, the group will no longer be associated with the application and become a normal Facebook Group.
queryParameters:
app_access_token:
required: true
/payment_currencies:
type: successReturned
post:
description: To map an Open Graph currency object to your app, issue an HTTP POST request to APP_ID/payment_currencies with an app access token.
body:
multipart/form-data:
formParameters:
currency_url:
description: "The URL of an Open Graph fbpayments:currency object"
required: true
get:
description: "To get the list of currencies mapped to your application, issue an HTTP GET request to APP_ID/payment_currencies with an app access token. The first currency listed will be treated as your app's default currency."
queryParameters:
app_access_token:
responses:
200:
body:
application/json:
schema: currencies
delete:
description: To remove a currency association from your app, make an HTTP DELETE request to APP_ID/payment_currencies with an app access token.
queryParameters:
app_access_token:
required: true
currency_url:
description: "The URL of an Open Graph fbpayments:currency object"
required: true
/roles:
type: successReturned
get:
description: You can retrieve a list of all users who have a role defined for an application by issuing an HTTP GET request to APP_ID/roles with an app access token.
responses:
200:
body:
application/json:
schema: roles
post:
description: You can define a role for a user by issuing an HTTP POST request to APP_ID/roles with a user access token for an administrator of the app
body:
multipart/form-data:
formParameters:
user_access_token:
user:
description: User ID to have a role added to the app
role:
description: "Role the user should assume, one of 'administrators', 'developers', 'testers' or 'insights users'"
delete:
description: You can remove a defined user role from an app by issuing an HTTP DELETE request to /APP_ID/roles with a user access token for an administrator of the app
queryParameters:
user_access_token:
user:
description: User ID whose role should be removed
/subscriptions:
type: successReturned
get:
description: You can set up a subscription by issuing an HTTP POST request to APP_ID/subscriptions with an application page access token
responses:
200:
body:
application/json:
schema: subscriptions
post:
description: You can set up a subscription by issuing an HTTP POST request to APP_ID/subscriptions with an application page access token
body:
multipart/form-data:
formParameters:
page_access_token:
required: true
object:
description: Object to monitor - user, permissions, or page
required: true
enum:
- page
- permissions
- user
fields:
description: List of properties for the object to monitor
required: true
callback_url:
description: A callback URL that Facebook will post subscription updates to
required: true
verify_token:
description: Token sent in the verification request
delete:
description: You can delete subscriptions by issuing an HTTP DELETE request to APP_ID/subscriptions with an application access token.
queryParameters:
app_access_token:
object:
description: Object to monitor - user, permissions, or page. If no object is specified all subscriptions are deleted
enum:
- page
- permissions
- user
/translations:
type: idReturned
post:
description: You can upload application strings for translation by issuing an HTTP POST request to APP_ID/translations with an application access token.
body:
multipart/form-data:
formParameters:
canvas_url:
required: true
example: canvas_url=Test+about+text
delete:
description: You can delete a translation string by issuing an HTTP DELETE request to APP_ID/translations with an application access token.
queryParameters:
native_hashes:
description: An array of native hashes. The native hash is a unique identifier of the native string and a description and is generated by the Translations application
required: true
/scores:
type: successReturned
get:
description: You can read the scores for the user and their friends for your app. This returns the list of scores for the user and their friends who have a uthorized the app. You can use this api to create leaderboard for the user and their friends.
queryParameters:
"access_token ":
required: true
responses:
200:
body:
application/json:
schema: scores
delete:
description: "You can delete all the scores for your app. This will reset the scores for your app. Use this if you'd like to periodically reset your game's scores and leaderboards."
queryParameters:
"access_token ":
/reviews:
type: base
get:
description: Getting the reviews of the App Dashboard.
responses:
200:
body:
application/json:
schema: reviews
example: !include examples/reviews-example.json
/staticresources:
type: base
get:
description: Gets usage statistics for the static resources used by your Canvas IFrame application. These statistics are collected for the purpose of flushing some of them to the browser early, to improve application performance.
responses:
200:
body:
application/json:
schema: staticresources
/insights:
type: getInsightsType
get:
description: The endpoint used is determined both by the object (Page, App, Post, Domain) being queried.
/{metric_name}:
type: base
get:
description: The endpoint used is determined both by the object (Page, App, Post, Domain) by metric name.
queryParameters:
period:
description: Change the period (from now) over which the metric has been collected. Valid values for each metric are listed below.
enum:
- lifetime
- month
- day
- week
example: period=lifetime
breakdown:
description: Usuable only with the application_mobile_app_installs metric to show a breakdown of installs by a specific grouping.
enum:
- gender_age
- locale
- country
responses:
200:
body:
application/json:
schema: insights
/act_{ad_account_id}:
type: base
get:
description: Read information about an ad account, make an HTTP GET call.
responses:
200:
body:
application/json:
post:
description: To update the below fields of an ad account, make an HTTP POST call.
/{connection_name}:
type: base
get:
description: "An Ad Account object has connections to other information. To query an account's connections, make an HTTP GET call"
responses:
200:
body:
application/json:
documentation:
- title: Headline
content: !include docs/api/headline.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment