Facebook — Pages
Get Page details — facebook.get_page_details
Reads a Facebook Page's profile: name, category, about, fan count and link. Pass fields (comma separated) to request more. Use before posting to confirm the Page.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_show_list, pages_read_engagement |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
fields | string | no | Comma-separated Graph fields to return, e.g. "id,name"; empty uses the defaults. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
id | string | |
name | string | |
category | string | |
about | string | |
fan_count | integer | |
link | string |
Get Page insights — facebook.get_page_insights
Reads Page insights metrics (e.g. page_impressions, page_post_engagements). metric is required, comma separated; period is day, week, days_28 or lifetime.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | read_insights, pages_read_engagement |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
metric | string | yes | Comma-separated metric names, e.g. "page_impressions,page_post_engagements". |
period | string | no | Aggregation period of the metric values. One of: day, week, days_28, month, lifetime, total_over_range. |
since | string | no | Start of the time range: Unix time or ISO 8601 date, e.g. "2026-01-31". |
until | string | no | End of the time range: Unix time or ISO 8601 date, e.g. "2026-02-28". |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].name | string | |
data[].period | string | |
data[].values | array | |
paging | object | |
paging.cursors | object |
Get Page photos — facebook.get_page_photos
Lists photos of a Page. type is uploaded (default), tagged or profile. Returns photo ids and image URLs; supports paging with limit and after.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_show_list, pages_read_engagement |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
type | string | no | Which photos to list: uploaded by the Page, tagged with it, or profile photos. One of: uploaded, tagged, profile. |
fields | string | no | Comma-separated Graph fields to return, e.g. "id,name"; empty uses the defaults. |
limit | integer | no | Max items per page (1-100). Min 1. Max 100. |
after | string | no | Cursor for the next page, from paging.cursors.after of the previous call. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].name | string | |
data[].created_time | string | |
data[].link | string | |
paging | object | |
paging.cursors | object |
Get Page posts — facebook.get_page_posts
Lists posts published on a Page's feed, newest first. Filter with since/until (unix time or date string); supports paging. Use get_post for one post's details.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_read_engagement, pages_read_user_content |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
fields | string | no | Comma-separated Graph fields to return, e.g. "id,name"; empty uses the defaults. |
since | string | no | Start of the time range: Unix time or ISO 8601 date, e.g. "2026-01-31". |
until | string | no | End of the time range: Unix time or ISO 8601 date, e.g. "2026-02-28". |
limit | integer | no | Max items per page (1-100). Min 1. Max 100. |
after | string | no | Cursor for the next page, from paging.cursors.after of the previous call. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].message | string | |
data[].created_time | string | |
data[].permalink_url | string | |
paging | object | |
paging.cursors | object |
Get Page videos — facebook.get_page_videos
Lists videos uploaded to a Page with id, title, description and source link. Supports paging with limit and after.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_show_list, pages_read_engagement |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
fields | string | no | Comma-separated Graph fields to return, e.g. "id,name"; empty uses the defaults. |
limit | integer | no | Max items per page (1-100). Min 1. Max 100. |
after | string | no | Cursor for the next page, from paging.cursors.after of the previous call. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].title | string | |
data[].description | string | |
data[].created_time | string | |
paging | object | |
paging.cursors | object |
Get Page roles — facebook.get_page_roles
Lists people with a role on a Page and their tasks (MANAGE, CREATE_CONTENT, MODERATE, ADVERTISE, ANALYZE). Only returns people outside a business.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_manage_metadata |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
limit | integer | no | Max items per page (1-100). Min 1. Max 100. |
after | string | no | Cursor for the next page, from paging.cursors.after of the previous call. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].name | string | |
data[].is_active | boolean | |
data[].tasks | array of string | |
paging | object | |
paging.cursors | object |
Get tagged posts — facebook.get_page_tagged_posts
Lists posts in which the Page is tagged by other people or Pages. Supports paging; use get_post for full detail of one result.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_read_engagement, pages_read_user_content |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
fields | string | no | Comma-separated Graph fields to return, e.g. "id,name"; empty uses the defaults. |
limit | integer | no | Max items per page (1-100). Min 1. Max 100. |
after | string | no | Cursor for the next page, from paging.cursors.after of the previous call. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].message | string | |
data[].created_time | string | |
data[].permalink_url | string | |
paging | object | |
paging.cursors | object |
List Page stories — facebook.list_page_stories
Lists Page stories. status filters by PUBLISHED, ARCHIVED or similar; since/until bound the time range. Supports paging.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_read_engagement, pages_read_user_content |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
status | string | no | Story status filter: PUBLISHED or ARCHIVED. |
since | string | no | Start of the time range: Unix time or ISO 8601 date, e.g. "2026-01-31". |
until | string | no | End of the time range: Unix time or ISO 8601 date, e.g. "2026-02-28". |
limit | integer | no | Max items per page (1-100). Min 1. Max 100. |
after | string | no | Cursor for the next page, from paging.cursors.after of the previous call. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].post_id | string | |
data[].status | string | |
data[].creation_time | string | |
data[].media_id | string | |
data[].url | string | |
paging | object | |
paging.cursors | object |
Search Pages — facebook.search_pages
Searches public Facebook Pages by keyword q and returns id, name and link. Requires Page Public Content Access on the app.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_show_list, pages_read_engagement |
Input
| Field | Type | Required | Description |
|---|---|---|---|
q | string | yes | Search keyword, e.g. "coffee hanoi". |
fields | string | no | Comma-separated Graph fields to return, e.g. "id,name"; empty uses the defaults. |
limit | integer | no | Max items per page (1-100). Min 1. Max 100. |
after | string | no | Cursor for the next page, from paging.cursors.after of the previous call. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].name | string | |
data[].link | string | |
data[].location | object | |
paging | object | |
paging.cursors | object |
List video thumbnails — facebook.list_video_thumbnails
Lists thumbnails of a Page video (id, uri, width, height, is_preferred). Use to pick the thumbnail before updating a video.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_show_list, pages_read_engagement |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page that owns the video; only picks which Page token is used. From facebook.list_managed_pages. |
video_id | string | yes | Video id. From facebook.get_page_videos. |
limit | integer | no | Max items per page (1-100). Min 1. Max 100. |
after | string | no | Cursor for the next page, from paging.cursors.after of the previous call. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
data | array of object | |
data[].id | string | |
data[].uri | string | |
data[].width | integer | |
data[].height | integer | |
data[].is_preferred | boolean | |
paging | object | |
paging.cursors | object |
Update Page settings — facebook.update_page_settings
Updates a Page's public profile: about, description, phone, website, emails. Waits for human approval; once approved the new text is visible publicly on the Page.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| WRITE | high | yes | no | pages_manage_metadata |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
about | string | no | Short About text shown on the Page. |
description | string | no | Longer Page description text. |
phone | string | no | Public phone number, e.g. "+84 912 345 678". |
website | string | no | Website URL, e.g. "https://example.com". |
emails | array of string | no | Public email addresses; replaces the current list. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
success | boolean |
Assign Page tasks — facebook.assign_page_task
Grants a user tasks on a Page (MANAGE, CREATE_CONTENT, MODERATE, ADVERTISE, ANALYZE, MESSAGING). Waits for human approval; it changes who can act on the Page.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| WRITE | high | yes | no | pages_manage_metadata, business_management |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
user | string | yes | Business-scoped user id or system user id to grant tasks to. |
tasks | array of string | yes | Tasks to grant on the Page, e.g. ["MODERATE", "ANALYZE"]. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
success | boolean |
Remove Page tasks — facebook.remove_page_task
Removes a user's tasks from a Page. Waits for human approval; the user loses access to the Page.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| WRITE | high | yes | no | pages_manage_metadata, business_management |
Input
| Field | Type | Required | Description |
|---|---|---|---|
page_id | string | yes | Page id; also picks which connected Page token is used. From facebook.list_managed_pages. |
user | string | yes | Business-scoped user id or system user id whose Page tasks are removed. |
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
success | boolean |
List managed Pages — facebook.list_managed_pages
Lists every Page the connected user manages (id, name, category, tasks), following all result pages. Page access tokens are never returned.
| Side effect | Risk | Needs approval | Idempotent | Scopes |
|---|---|---|---|---|
| NONE | low | no | yes | pages_show_list, pages_read_engagement |
Input
No input.
Extra fields: ignored.
Output
| Field | Type | Description |
|---|---|---|
pages | array of object | |
pages[].id | string | |
pages[].name | string | |
pages[].category | string | |
pages[].tasks | array of string |