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.
API key authentication - use your Zernio API key as a Bearer token
In: header
Path Parameters
Instagram account ID
Instagram-scoped user id (IGSID) from a webhook payload
Query Parameters
Bypass the cache and re-query Meta
Response Body
application/json
application/json
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.accounts.getInstagramFollowStatus({ path: { accountId: 'account_abc123', userId: 'user_abc123', },});console.log(data);{
"userId": "1312733120229708",
"accountId": "6977a34e77637c5c857c816c",
"isFollower": true,
"isFollowedByAccount": false,
"followerCount": 25,
"isVerified": false,
"username": "to.bias8262",
"name": "Tobi Ma",
"unavailableReason": null
}{
"error": "string",
"type": "invalid_request_error",
"code": "string",
"param": "string",
"platform": "string",
"platformError": {},
"details": {}
}{
"error": "Unauthorized"
}{
"error": "Not found"
}Get follower stats GET
Returns follower count history and growth metrics for connected social accounts. Requires analytics add-on subscription. Follower counts are refreshed once per day.
Get Slack account settings GET
Returns the connected Slack channel details and the default message identity (name and avatar shown as the author on every post, with Slack's APP badge). The identity applies to messages only; the app's own Slack profile is global and cannot be changed per workspace.