Instagram Following
Instagram Following
Overview
List the accounts an Instagram account follows — the "following" list — as one page of short profiles per call (handle, display name, privacy and verification flags, profile URL). Repeat next_cursor back as cursor for the next page; null means the end of the list.
Fetched pages are cached for 24 hours and shared across the platform — a second request for the same page within that window answers instantly and is charged the lower cached price.
When to use
- Snowball-style lead sourcing: start from an industry hub or competitor and walk the accounts it pays attention to — hubs tend to follow their peers, partners and venues.
- Map the network of a good lead to find neighbouring accounts worth a profile lookup.
[!NOTE]
When no account exists for the handle the run completes successfully with found: false and is not charged. Private accounts complete with found: true and restricted: true, also at no charge. Genuine errors of the data service (auth, rate limit, 5xx) still fail the run and are refunded.
The list carries no email addresses, phone numbers or follower details beyond the short profile. Call instagram_profile with a returned username for bio, website and public contact fields.
Endpoint
Output
Paging
Each call returns one page. To get the next page, pass the value of next_cursor back as cursor. A null cursor means the list is fully read. Pages are priced individually, so page only as deep as you need.
Pricing
This enrichment costs 2 credits for a freshly fetched page. A page served from the cache (at most 24 hours old) is charged the lower cached tier. Pages without accounts and runs ending with found: false or restricted: true are free.
Examples
Playground
States
| State |
Description |
queued |
Request accepted; waiting to be picked up by a worker. |
processing |
Worker is actively running the enrichment. |
completed |
Enrichment finished and results are available in output. |
failed |
Enrichment failed; reason is in error. Credits are refunded for failures unless otherwise noted. |
Errors
| Error |
When it happens |
What to do |
invalid_input |
username is not a valid handle or profile URL, user_id is not numeric, or cursor is malformed. |
Pass a handle like natgeo or a profile URL; repeat next_cursor verbatim. |
not_found |
The lookup completed but no account exists for the handle or id. |
No action — the run costs nothing. |
restricted |
The account is private or its following list cannot be read. |
No action — the run costs nothing. |
rate_limited |
The data service throttled the request. |
Retry with backoff. |
provider_error |
The data service returned an unexpected error. |
Retry; if persistent, contact support. |
503 endpoint_unavailable |
The endpoint is currently not configured or temporarily disabled. Nothing is reserved or charged. |
Retry later; if persistent, contact support. |