/v1/user_profile"platform": "linkedin"LinkedIn User Profile API
One account.
The LinkedIn User Profile API returns a public LinkedIn account by handle or link: name and bio, in the same response format as every other SocialToAI call. One call costs 2 credits ($0.004 to $0.0067 depending on the pack); failed calls are free. Call it over HTTP or from your AI client over MCP. Last tested 2026-10-17.
Last updated:
Request and response
curl https://api.socialtoai.com/v1/user_profile \ -H "Authorization: Bearer $SOCIALTOAI_KEY" \ -H "Content-Type: application/json" \ -d '{ "platform": "linkedin", "username": "nasa" }'import osimport requestsresponse = requests.post( "https://api.socialtoai.com/v1/user_profile", headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"}, json={ "platform": "linkedin", "username": "nasa", },)print(response.json())# Connected over MCP? Ask in plain words.Look up this LinkedIn account: nasa# Your AI calls the user_profile tool with:{ "platform": "linkedin", "username": "nasa"}{ "platform": "linkedin", "status": "ok", "items": [ { "platform": "linkedin", "id": "…", "ref": "…", "approx": [], "type": "account", "username": "…", "name": "…", "url": "https://example.com/…", "bio": "…", "verified": null, "followers": null, "following": null, "posts_count": null } ], "unavailable": ["verified", "followers", "following", "posts_count"], "cost_credits": 2}null followersnull followingnull postsNames and text were removed from the sample; the numbers are as recorded.
3 parameters.
1 required.
Send them as a JSON body with POST. Your key goes in the Authorization header, never in the URL.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| platform | string | Required | — | Always "linkedin" on this page. |
| username | string | One of these | — | Company handle: the segment after /company/ in the page's link |
| url | string | One of these | — | Link to the company page, written linkedin.com/company/handle |
Where to get what you send.
usernameCompany handle: the segment after /company/ in the page's link (e.g. nasa)
No other interface of the platform returns it: take it from the web page or link as described above.
The fields of each item.
What LinkedIn cannot give is marked.
| Field | Type | Meaning |
|---|---|---|
| items[].username | string | The handle. |
| items[].name | string | The display name. |
| items[].url | string | A link to the profile. |
| items[].bio | string | The bio. |
| items[].verified | booleanalways null | Whether the account is verified. |
| items[].followers | integeralways null | Follower count. |
| items[].following | integeralways null | How many accounts it follows. |
| items[].posts_count | integeralways null | How many posts it has published. |
nullFields LinkedIn cannot giveRead null as “LinkedIn did not give this”, not as zero. These are always null on this call:
verifiedWhether the account is verified.followersFollower count.followingHow many accounts it follows.posts_countHow many posts it has published.
Every item also has platform, id, ref, approx and type; the response around the items is the same on every call. Response format
What to expect.
1 call per second per key, 5 after a purchase; going over is not charged. Rate limits
A failed call costs 0 credits and is never retried on its own. Error codes
Once connected over MCP, these questions use it.
Look up this LinkedIn account: nasa
2 creditsuser_profile {"platform":"linkedin","username":"nasa"}
These ready-made tools call it when they run.
account-watchWhat each one posted lately, and which posts beat its usual numbers
creator-cardTheir accounts on other platforms, the numbers on each, and how sure the match is
batch-statsOne row per link with its numbers as they are now. Links that no longer work are marked
The same call on other platforms.
All platforms and prices/v1/user_profile{ "platform": "linkedin", "username": "nasa" }2 creditsper call