OXYGENOXYGEN
← All integrations
Facebook logo

Facebook

Read pages, posts, and engagement.

SocialOAuth43 endpoints

Endpoints

OperationMethod & pathEffectLatencyRateCost
FACEBOOK_ASSIGN_PAGE_TASK
Assigns tasks/roles to a business-scoped user or system user for a specific Facebook Page. Important: This action requires a business-scoped user ID or system user ID from Facebook Business Manager. Regular Facebook user IDs cannot be used. The page must also be managed through Facebook Business Manager for this action to work. Required permissions: business_management, pages_manage_metadata
POST /composio/facebook/facebook_assign_page_taskexternal_sendmanaged
FACEBOOK_CREATE_COMMENT
Creates a comment on a Facebook post or replies to an existing comment.
POST /composio/facebook/facebook_create_commentexternal_sendmanaged
FACEBOOK_CREATE_PHOTO_ALBUM
Creates a new photo album on a Facebook Page. Note: This endpoint requires the 'pages_manage_posts' permission or equivalent permissions to be granted to your Facebook application. This action is publicly visible on the Page; confirm with the user before calling.
POST /composio/facebook/facebook_create_photo_albumexternal_sendmanaged
FACEBOOK_CREATE_PHOTO_POST
Creates a photo post on a Facebook Page. Requires an image to be provided via either 'url' (publicly accessible image URL) or 'photo' (local image file upload). This action is specifically for posting images with optional captions, not text-only posts. Returns a composite post_id (PageID_PostID); use this for follow-up operations, not the photo/media id alone.
POST /composio/facebook/facebook_create_photo_postexternal_sendmanaged
FACEBOOK_CREATE_POST
Creates a new text or link post on a Facebook Page. Requires `pages_manage_posts` permission and manage-level Page role on the target Page. For image posts use FACEBOOK_CREATE_PHOTO_POST; for video posts use FACEBOOK_CREATE_VIDEO_POST — media fields are not supported here. Returns a composite post ID in `PageID_PostID` format, required for FACEBOOK_GET_POST retrieval.
POST /composio/facebook/facebook_create_postexternal_sendmanaged
FACEBOOK_CREATE_VIDEO_POST
Creates a video post on a Facebook Page. Requires a Page access token with `pages_manage_posts` scope and manage-level permissions on the target page.
POST /composio/facebook/facebook_create_video_postexternal_sendmanaged
FACEBOOK_DELETE_COMMENT
Deletes a Facebook comment. Requires a Page Access Token with appropriate permissions for comments on Page-owned content. The page_id parameter helps ensure the correct page token is used for authentication.
POST /composio/facebook/facebook_delete_commentexternal_sendmanaged
FACEBOOK_DELETE_POST
Permanently deletes a Facebook Page post. Deletion is irreversible — deleted posts cannot be recovered. For bulk deletions, keep throughput to ~1 delete/second to avoid Graph API rate limits.
POST /composio/facebook/facebook_delete_postexternal_sendmanaged
FACEBOOK_GET_COMMENT
Retrieves details of a specific Facebook comment.
GET /composio/facebook/facebook_get_commentnonemanaged
FACEBOOK_GET_COMMENTS
Retrieves comments from a Facebook post or comment (for replies). This endpoint requires appropriate permissions: - For page-owned posts: A Page Access Token with 'pages_read_engagement' permission - The API automatically swaps user tokens for page tokens when available API Version: Uses v23.0 which was released May 2025.
GET /composio/facebook/facebook_get_commentsnonemanaged
FACEBOOK_GET_CONVERSATION_MESSAGES
Retrieves messages from a specific conversation.
GET /composio/facebook/facebook_get_conversation_messagesnonemanaged
FACEBOOK_GET_CURRENT_USER
Validates the access token and retrieves the authenticated user's own profile via /me. Cannot fetch arbitrary users by name or ID.
GET /composio/facebook/facebook_get_current_usernonemanaged
FACEBOOK_GET_MESSAGE_DETAILS
Retrieves details of a specific message sent or received by the Page.
GET /composio/facebook/facebook_get_message_detailsnonemanaged
FACEBOOK_GET_PAGE_CONVERSATIONS
Retrieves a list of conversations between users and the Page.
GET /composio/facebook/facebook_get_page_conversationsnonemanaged
FACEBOOK_GET_PAGE_DETAILS
Fetches details about a specific Facebook Page.
GET /composio/facebook/facebook_get_page_detailsnonemanaged
FACEBOOK_GET_PAGE_INSIGHTS
Retrieves analytics and insights for a Facebook Page. Returns metrics like impressions, page views, fan counts, and engagement data. Empty objects (`{}`) in results indicate missing data, not zero values. High-volume calls risk Graph API rate limits (error codes 4/613).
GET /composio/facebook/facebook_get_page_insightsnonemanaged
FACEBOOK_GET_PAGE_PHOTOS
Retrieves photos from a Facebook Page. CDN-based URLs (including `source`) are time-limited and expire; download and persist images promptly if long-term access is needed.
GET /composio/facebook/facebook_get_page_photosnonemanaged
FACEBOOK_GET_PAGE_POSTS
Retrieves posts from a Facebook Page. Endpoint choice: Uses /{page_id}/feed instead of /posts or /published_posts because: - /feed returns all content on page timeline (page's posts + visitor posts + tagged posts) - /posts returns only posts created by the page itself - /published_posts returns only published posts by the page (excludes scheduled/unpublished) The /feed endpoint provides the most comprehensive view of page activity. Pagination: follow paging.cursors.after or paging.next across multiple calls until no next cursor exists. Throttling: high-volume pagination can trigger Graph API errors 4 and 613; use backoff between requests. API Version: Uses v23.0 (released May 2025). v20.0 and earlier will be deprecated by Meta. See: https://developers.facebook.com/docs/graph-api/changelog
GET /composio/facebook/facebook_get_page_postsnonemanaged
FACEBOOK_GET_PAGE_ROLES
Retrieves a list of people and their tasks/roles on a Facebook Page. The connected account must have management access to the target Page; otherwise the response may be empty or incomplete. Returned role types include MANAGE and CREATE_CONTENT — verify these before calling tools like FACEBOOK_UPDATE_PAGE_SETTINGS. Recently changed roles may take time to propagate; retry if role data appears stale after an update.
GET /composio/facebook/facebook_get_page_rolesnonemanaged
FACEBOOK_GET_PAGE_TAGGED_POSTS
Retrieves posts where a Facebook Page is tagged or mentioned. Use when monitoring brand mentions or tracking posts that tag your Page but don't appear on your Page's own feed.
GET /composio/facebook/facebook_get_page_tagged_postsnonemanaged
FACEBOOK_GET_PAGE_VIDEOS
Retrieves videos from a Facebook Page.
GET /composio/facebook/facebook_get_page_videosnonemanaged
FACEBOOK_GET_POST
Retrieves details of a specific Facebook post.
GET /composio/facebook/facebook_get_postnonemanaged
FACEBOOK_GET_POST_INSIGHTS
Retrieves analytics and insights for a specific Facebook post. Returns metrics like impressions, clicks, and engagement data. Very new posts may return empty metric values; allow a short delay before querying and treat absent fields as partial data.
GET /composio/facebook/facebook_get_post_insightsnonemanaged
FACEBOOK_GET_POST_REACTIONS
Retrieves reactions (like, love, wow, etc.) for a Facebook post. Very recent posts may return empty or partial reactions data; treat missing fields as incomplete coverage, not an error.
GET /composio/facebook/facebook_get_post_reactionsnonemanaged
FACEBOOK_GET_SCHEDULED_POSTS
Retrieves scheduled and unpublished posts for a Facebook Page. Results are cursor-paginated; follow pagination cursors to retrieve all results beyond the limit. When searching for posts near a specific time, filter to a narrow (~±5 minutes) window. Use this tool to check for existing entries before scheduling new posts to avoid duplicates.
GET /composio/facebook/facebook_get_scheduled_postsnonemanaged
FACEBOOK_GET_USER_PAGES
DEPRECATED: Use FACEBOOK_LIST_MANAGED_PAGES instead. Retrieves Facebook Pages the user manages (excludes personal profiles, groups, and non-Page entities); an empty `data` array means no manageable Pages exist. Requires `pages_show_list` scope; missing scopes yield empty `data` or OAuthException code 200. Results paginate ~100 items per page — follow `paging.cursors.after` or `next` until exhausted.
GET /composio/facebook/facebook_get_user_pagesnonemanaged
FACEBOOK_LIKE_POST_OR_COMMENT
Adds a LIKE reaction to a Facebook post or comment. Note: Due to API limitations, only LIKE reactions can be added programmatically. This action is user-visible and irreversible — confirm with the user before calling.
POST /composio/facebook/facebook_like_post_or_commentexternal_sendmanaged
FACEBOOK_LIST_MANAGED_PAGES
Retrieves a list of Facebook Pages that the user manages (not personal profiles), including page details, access tokens, and tasks. Requires `pages_show_list` or `pages_read_engagement` OAuth scopes; missing scopes silently return empty results rather than an error. An empty `data` array means the user manages no Pages. Results are paginated via `paging.cursors`; follow `paging.next` until absent to retrieve all Pages when count exceeds `limit`. Graph API throttling (error codes 4, 17, 613) can occur during pagination — use exponential backoff.
GET /composio/facebook/facebook_list_managed_pagesnonemanaged
FACEBOOK_MARK_MESSAGE_SEEN
Marks a user's message as seen by the Page, visibly updating the read status in the user's conversation. Note: This action requires an active messaging session with the user. Facebook's messaging policy requires that users have messaged the Page within the last 24 hours for sender actions to work.
POST /composio/facebook/facebook_mark_message_seenexternal_sendmanaged
FACEBOOK_PUBLISH_SCHEDULED_POST
Publishes a previously scheduled or unpublished Facebook post immediately. This action takes a scheduled or unpublished post and publishes it immediately by setting is_published to true. The post must have been previously created with published=false or with a scheduled_publish_time. Requirements: - The post must exist and be in an unpublished/scheduled state - The user must have admin access to the page that owns the post - The app must have pages_manage_posts permission
POST /composio/facebook/facebook_publish_scheduled_postexternal_sendmanaged
FACEBOOK_REMOVE_PAGE_TASK
Removes a user's tasks/access from a specific Facebook Page. Caller must have admin-level rights on the Page. Operates on one page_id at a time; repeat for each page if removing from multiple pages. Partial access may remain if only some tasks are revoked.
POST /composio/facebook/facebook_remove_page_taskexternal_sendmanaged
FACEBOOK_RESCHEDULE_POST
Changes the scheduled publish time of an unpublished Facebook post. This action updates the scheduled_publish_time of a previously scheduled post. The post must have been created with published=false and a scheduled_publish_time.
POST /composio/facebook/facebook_reschedule_postexternal_sendmanaged
FACEBOOK_SEARCH_PAGES
Searches for Facebook Pages based on a query string. Returns pages matching the search criteria with requested fields. DEPRECATION WARNING: The /pages/search endpoint was deprecated by Facebook in 2019 and is now ONLY available to Workplace by Meta apps. Standard Facebook apps will receive Error #10 (permission error) regardless of which permissions or features have been granted. For Workplace apps only - requires one of: - 'pages_read_engagement' permission - 'Page Public Content Access' feature - 'Page Public Metadata Access' feature Standard Facebook apps should use alternative methods to discover pages, such as: - Direct page ID lookup via /{page-id} endpoint - User's managed pages via /me/accounts endpoint Reference: https://developers.facebook.com/docs/apps/review/feature#reference-PAGES_ACCESS. Results include only Facebook Pages; personal profiles, groups, and other entity types are excluded.
GET /composio/facebook/facebook_search_pagesnonemanaged
FACEBOOK_SEND_MEDIA_MESSAGE
Sends a media message (image, video, audio, or file) from the Page to a user.
POST /composio/facebook/facebook_send_media_messageexternal_sendmanaged
FACEBOOK_SEND_MESSAGE
Sends a text message from a Facebook Page (not personal profiles) to a user via Messenger. Requires explicit user confirmation before calling, as this action delivers a message to a real end user.
POST /composio/facebook/facebook_send_messageexternal_sendmanaged
FACEBOOK_TOGGLE_TYPING_INDICATOR
Shows or hides the typing indicator for a user in Messenger.
POST /composio/facebook/facebook_toggle_typing_indicatorexternal_sendmanaged
FACEBOOK_UNLIKE_POST_OR_COMMENT
Removes a like from a Facebook post or comment.
POST /composio/facebook/facebook_unlike_post_or_commentexternal_sendmanaged
FACEBOOK_UPDATE_COMMENT
Updates an existing Facebook comment. IMPORTANT: This action requires a Page Access Token. The comment must belong to a post on a Page that you manage. Use the page_id parameter to ensure the correct page token is used, especially if you manage multiple pages.
POST /composio/facebook/facebook_update_commentexternal_sendmanaged
FACEBOOK_UPDATE_PAGE_SETTINGS
Updates settings for a specific Facebook Page. Requires the authenticated user to have MANAGE and CREATE_CONTENT tasks for the target page; verify roles via FACEBOOK_GET_PAGE_ROLES. Not all fields (about, description, general_info, etc.) are available for every Page category.
POST /composio/facebook/facebook_update_page_settingsexternal_sendmanaged
FACEBOOK_UPDATE_POST
Updates an existing Facebook Page post.
POST /composio/facebook/facebook_update_postexternal_sendmanaged
FACEBOOK_UPLOAD_PHOTO
DEPRECATED: Use FACEBOOK_CREATE_PHOTO_POST instead. Uploads a photo file directly to a Facebook Page. Supports local file upload up to 10MB.
POST /composio/facebook/facebook_upload_photoexternal_sendmanaged
FACEBOOK_UPLOAD_PHOTOS_BATCH
Uploads multiple photo files in batch to a Facebook Page or Album. Uses Facebook's batch API for efficient multi-photo upload. Maximum 50 photos per batch.
POST /composio/facebook/facebook_upload_photos_batchexternal_sendmanaged
FACEBOOK_UPLOAD_VIDEO
DEPRECATED: Use CreateVideoPost instead. Uploads a video file directly to a Facebook Page. Supports local file upload. For large videos (>100MB), uses resumable upload. After upload completes, the video enters a processing/pending state; do not reference or schedule it until processing finishes.
POST /composio/facebook/facebook_upload_videoexternal_sendmanaged