# Instagram API: Get User ID & User Info

> Instagram API to get a user ID from a username, get user info by username or ID, and get posts by user — no login, no session cookie. One upAPI key.

These operations read public Instagram identity data without an Instagram login, and they answer the three lookups developers search for most. To get a user ID, send a username to Get User Profile: it returns the numeric Instagram id as instagramId alongside the full public profile — bio, follower and following counts, post count, verified and business-account status and the profile picture URL. To get user info from an id you already hold, Get User By Id starts from the numeric id instead of a handle. On the anonymous surface it can return identity only — the username and profile picture — and says so in its detailLevel field; a count Instagram does not disclose comes back as null, never as zero followers. Check Account answers a narrower question — does a username, email address or phone number belong to an existing Instagram account, and which recovery channels does it expose — which is the check to run before a profile lookup that would otherwise come back empty. To get posts by user, take the id from either lookup and pass it to Get User Posts, covered on the Instagram Post Scraper API page linked below. None of these needs an Instagram account, password or session cookie; every call authenticates with your upAPI key alone. Instagram serves a logged-out visitor a blank shell rather than a clean error when it refuses a read, so these operations classify that shell and raise a real error instead of quietly returning an empty profile — a change verified against production on 2026-09-10. The exact price and cache lifetime are on this page’s FAQ, generated from the same catalog the calls run against.

## Operations

- [Instagram Get User Profile](https://upapi.io/apis/social-media/instagram-get-user-profile) (15 units): Get full Instagram user profile (bio, stats, verified, business status). Works for public profiles without auth.
- [Instagram Get User By Id](https://upapi.io/apis/social-media/instagram-get-user-by-id) (15 units): Resolve an Instagram profile from a numeric user id, no login. Anonymous returns identity (username, profile picture) — see detailLevel.
- [Instagram Check Account](https://upapi.io/apis/social-media/instagram-check-account) (15 units): Check if a username/email/phone is linked to an Instagram account. Returns existence + recovery channels.

## Frequently asked questions

### How do I get an Instagram user ID from a username?

Send the username, without the @, to Instagram Get User Profile. The response carries the numeric Instagram id as instagramId next to the rest of the public profile, so one call gives you both the user ID and the user info.

### How do I get Instagram user info from a user ID?

Send the numeric id to Instagram Get User By Id. It returns the username and profile picture, and when Instagram discloses them also the bio, counts and business details. Its detailLevel field says whether you got only the identity or the full profile, and an undisclosed count is null rather than zero.

### How do I get Instagram posts by user?

Resolve the username to a numeric id with Get User Profile, then pass that id as userId to Instagram Get User Posts, which returns the account’s recent posts with engagement metrics and a nextMaxId cursor for the next page. It is part of the Instagram Post Scraper API cluster.

### What happens if the profile is private or does not exist?

Instagram answers a blocked or unknown read with a blank logged-out page rather than a clean 404, so upAPI classifies that shell and raises a real, typed error instead of returning an empty profile object that looks like a real (if boring) result.

### How much does this cost?

Every operation in this cluster costs 15 weighted units per call, drawn from your plan’s pooled monthly quota — see upapi.io/pricing for what a unit costs on each tier.

### How fresh is the data — is it cached?

Instagram Get User Profile is cached for 10 minutes; Instagram Get User By Id is cached for 5 minutes; Instagram Check Account is cached for 1 minute. A repeat call inside a cached window returns the cached response and is billed nothing.

Last updated 2026-10-20.
