v2

latestOpenAPI 3.1.02026-08-075421692.0 MB
Accounts

Check whether an Instagram user follows the account

Resolves the follow relationship between an Instagram user and the connected account, plus their public profile counters.

userId is the Instagram-scoped id (IGSID) Meta gives you on a webhook: sender.id on message.received, comment.author.id on comment.received.

Meta only answers for people who have MESSAGED the account. Commenting grants no consent, so a commenter who has never DMed you is unresolvable - that is a platform rule, not a limitation of this endpoint. When it cannot be resolved the response is still 200 with isFollower: null and an unavailableReason, because "unknown" is a normal state to branch on:

  • consent_required - the user has never messaged this account.
  • dm_access_disabled - the account owner turned off Instagram Direct API access.
  • not_messageable - the id is not a messaging-scoped id.
  • error - a transient Graph API failure.

To gate a comment automation on this, use the automation's audience rules instead of calling this per comment - they run the same lookup only on comments that actually match a keyword, and can ask the commenter to confirm with one tap.

Answers are cached briefly per (account, user). Pass refresh=true right after asking someone to follow, so a follow from a moment ago is visible.

get/v1/accounts/{accountId}/follow-status/{userId}

Path parameters

accountIdstring required

Instagram account ID

userIdstring required

Instagram-scoped user id (IGSID) from a webhook payload

Query parameters

refreshboolean

Bypass the cache and re-query Meta

Response

Follow status (fields are null when Meta would not resolve it)

userIdstring required
accountIdstring required
isFollowerboolean nullable required

The user follows this account. Null = unknown, never "no".

isFollowedByAccountboolean nullable

This account follows the user.

followerCountinteger nullable
isVerifiedboolean nullable
usernamestring nullable
namestring nullable
unavailableReason'consent_required' | 'dm_access_disabled' | 'not_messageable' | 'error' | 'null' nullable

Why the follow relationship could not be resolved. Null when it was.