Graph API
The Graph API is the primary way to get data into and out of the Facebook platform. It's an HTTP-based API that apps can use to programmatically query data, post new stories, manage ads, upload photos, and perform a wide variety of other tasks.
The Graph API is named after the idea of a "social graph" — a representation of the information on Facebook. It's composed of nodes, edges, and fields. Typically you use nodes to get data about a specific object, use edges to get collections of objects on a single object, and use fields to get data about a single object or each object in a collection. Throughout our documentation, we may refer to both a node and edge as an "endpoint". For example, "send a GET request to the User endpoint".
Here are some of the key features of Graph API:
Batch Requests The Facebook Graph API Batch Requests guide explains how to pass instructions for several operations in a single HTTP request and specify dependencies between related operations.
Field Expansion The Facebook Graph API Field Expansion guide explains more advanced API requests including field expansion, limiting results, nested requests, and pagination.
Upload Files The Facebook Graph API Upload Files guide explains how to upload files and use the uploaded media in other API calls.