AccessToken is required on every operation. Provide either AccessToken (direct token string) or CredentialId (a saved BizFirst credential). This is not repeated in every table — assume it is always required.
Business/Creator account required. The Instagram Graph API only works with Business or Creator accounts that have a connected Facebook Page. Personal accounts will receive OAuthException errors on most operations.
Resource: auth — 3 Operations
auth / tokenExchange
Exchange a Meta OAuth2 authorization code for a short-lived access token.
| Property | Required | Description |
Code | Required | The OAuth authorization code returned by Meta after the user grants permission. |
AppId | Required | Your Meta App ID from the Facebook Developer Console. |
AppSecret | Required | Your Meta App secret. Store this in BizFirst Credentials Manager, never in plain text. |
RedirectUri | Required | The redirect URI registered in your Meta App settings — must match exactly. |
auth / tokenRefresh
Exchange a short-lived (1-hour) token for a long-lived (60-day) token.
| Property | Required | Description |
AccessToken | Required | The short-lived access token to refresh. |
auth / me
Retrieve account information for the current access token — used to verify a token is valid and retrieve the account's user ID.
| Property | Required | Description |
AccessToken | Required | Valid access token to introspect. |
Resource: media — 4 Operations
media / imagePublish
Upload and publish a single image post. The image must be hosted at a publicly accessible URL.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
ImageUrl | Required | Publicly accessible URL of the image to post. Supported formats: JPEG, PNG. Minimum resolution: 320x320px. |
Caption | Optional | Post caption text. Supports hashtags and user mentions. Maximum 2,200 characters. |
LocationId | Optional | Facebook Page location ID to tag the post with a location. |
media / reelsPublish
Publish a Reel video. The video file must be hosted at a publicly accessible URL.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
VideoUrl | Required | Publicly accessible URL of the video file. Must be MP4 format, up to 15 minutes. |
Caption | Optional | Caption text for the Reel. Supports hashtags and mentions. |
ShareToFeed | Optional | Boolean. When true, the Reel also appears on the main feed grid. Default: false. |
CoverUrl | Optional | Publicly accessible URL for the Reel's cover image thumbnail. |
media / storiesPublish
Publish an image or video Story. Stories are automatically removed after 24 hours.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
MediaUrl | Required | Publicly accessible URL of the image or video to publish as a Story. Images: JPEG/PNG. Videos: MP4, up to 60 seconds. |
media / carouselPublish
Create a carousel post with between 2 and 10 images. All images must be hosted at publicly accessible URLs.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
MediaUrls | Required | Array of publicly accessible image URLs. Minimum 2, maximum 10. All images must use the same aspect ratio. |
Caption | Optional | Caption applied to the carousel post. Supports hashtags and mentions. |
Resource: comments — 5 Operations
comments / list
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
MediaId | Required | The ID of the media post whose comments to retrieve. |
Limit | Optional | Integer. Maximum number of comments to return per page. Default: 20. |
comments / hide
Show or hide a specific comment. Hiding removes it from public view without deleting it.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
CommentId | Required | The ID of the comment to hide or show. |
Hidden | Required | Boolean. true to hide, false to make visible again. |
comments / delete
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
CommentId | Required | The ID of the comment to permanently delete. |
comments / privateReply
Send a private direct message reply to a user who commented on your post.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
CommentId | Required | The ID of the comment to reply to. The commenter will receive the message as a DM. |
Message | Required | Text content of the private reply message. |
comments / toggle
Enable or disable commenting on a specific media post.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
MediaId | Required | The ID of the media post to update. |
CommentsEnabled | Required | Boolean. true to enable comments, false to disable. |
Resource: hashtag — 2 Operations
hashtag / search
Look up a hashtag by name to get its hashtagId for use in hashtag/media.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
Hashtag | Required | Hashtag to look up, without the # prefix (e.g. bizfirstai). |
hashtag / media
Retrieve posts using a specific hashtag. Returns top posts or recent posts depending on the media type selected.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
HashtagId | Required | The hashtag ID returned by hashtag/search. |
MediaType | Required | Enum: top_media (most popular posts) or recent_media (most recent posts). |
Limit | Optional | Integer. Maximum number of media items to return. |
Resource: messaging — 1 Operation
messaging / send
Send a direct message to a user via Instagram Messaging. The recipient must have messaged your account first (24-hour messaging window applies).
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
RecipientId | Required | Instagram-scoped user ID (IGSID) of the message recipient. |
MessageText | Required | Text content of the message to send. |
Resource: user — 2 Operations
user / get
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
UserId | Required | Instagram user ID to look up. |
user / media
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |
UserId | Required | Instagram user ID whose media to retrieve. |
Limit | Optional | Integer. Number of media items per page. Default: 12. |
After | Optional | Cursor string from a previous response's paging.cursors.after field for pagination. |
Resource: page — 1 Operation
page / account
Retrieve the connected Facebook Page details for the Instagram account. Useful to confirm the account is properly linked.
| Property | Required | Description |
AccessToken | Required | Valid Instagram Graph API access token. |