{
"type": "linkedin-refresh",
"url": "https://www.linkedin.com/in/satyanadella",
"publicIdentifier": "satyanadella",
"accessible": true,
"profileState": "accessible",
"firstName": "Satya",
"lastName": "Nadella",
"currentCompany": {
"name": "Microsoft",
"slug": "microsoft",
"linkedInUrl": "https://www.linkedin.com/company/microsoft",
"linkedInId": "1035"
},
"currentSchool": null,
"companyState": "public",
"photo": "https://media.licdn.com/dms/image/v2/C5603AQHHUuOSlRVA1w/profile-displayphoto-shrink_200_200/profile-displayphoto-shrink_200_200/0/1579726625398?e=1790208000&v=beta&t=ajencz2W_D6lC1DmoaoTr27lg7urm55muP4JOR6-dwU",
"photoState": "public",
"tookMs": 201
}
{
"type": "linkedin-profile",
"url": "linkedin.com/in/satyanadella",
"tookMs": 800,
"accessible": true,
"profile": {
"id": "satyanadella",
"name": "Satya Nadella",
"firstName": "Satya",
"lastName": "Nadella",
"headline": "Chairman and CEO at Microsoft",
"currentTitle": null,
"titleSource": null,
"currentCompany": "Microsoft",
"companyState": "public",
"about": "As chairman and CEO of Microsoft, I define my mission and that of my company as…",
"followerCount": 12152382,
"connectionsCount": null,
"location": {
"linkedinText": "Redmond, Washington, United States",
"countryCode": "US",
"parsed": {
"text": "Redmond, Washington, United States",
"countryCode": "US",
"regionCode": null,
"country": "United States",
"countryFull": "United States",
"state": "Washington",
"city": "Redmond"
}
},
"experience": [
{
"position": null,
"location": "Greater Seattle Area",
"companyName": "Microsoft",
"companyLinkedinUrl": "https://www.linkedin.com/company/microsoft/",
"companyUniversalName": "microsoft",
"duration": null,
"description": null,
"experienceGroupId": null,
"startDate": null,
"endDate": null,
"companyLogo": {
"url": "https://media.licdn.com/dms/image/v2/D560BAQH32RJQCl3dDQ/company-logo_100_100/B56ZYQ0mrGGoAU-/0/1744038948046/microsoft_logo?e=2147483647&v=beta&t=rr_7_bFRKp6umQxIHErPOZHtR8dMPIYeTjlKFdotJBY",
"sizes": [
{
"url": "https://media.licdn.com/dms/image/v2/D560BAQH32RJQCl3dDQ/company-logo_100_100/B56ZYQ0mrGGoAU-/0/1744038948046/microsoft_logo?e=2147483647&v=beta&t=rr_7_bFRKp6umQxIHErPOZHtR8dMPIYeTjlKFdotJBY",
"width": 100,
"height": 100
}
]
},
"domain": "news.microsoft.com",
"companyIndustry": "Software Development",
"companySize": "10,001+ employees",
"companyHeadquarters": "Redmond, Washington",
"companyLinkedInId": "1035"
},
{
"position": null,
"location": null,
"companyName": "WAVE PROFESSIONAL CLINICAL COUNSELORS INC.",
"companyLinkedinUrl": "https://www.linkedin.com/company/wave-professional-clinical-counselors-inc.",
"companyUniversalName": "wave-professional-clinical-counselors-inc.",
"duration": null,
"description": null,
"experienceGroupId": null,
"startDate": null,
"endDate": null,
"companyLogo": {
"url": "https://media.licdn.com/dms/image/v2/C4D0BAQEQxk9y2rk7Hw/company-logo_100_100/company-logo_100_100/0/1631316692276?e=2147483647&v=beta&t=itdoVXP3gnqtQ7Grar4B3YoPyw-Ors9bKMZlZpb0QcY",
"sizes": [
{
"url": "https://media.licdn.com/dms/image/v2/C4D0BAQEQxk9y2rk7Hw/company-logo_100_100/company-logo_100_100/0/1631316692276?e=2147483647&v=beta&t=itdoVXP3gnqtQ7Grar4B3YoPyw-Ors9bKMZlZpb0QcY",
"width": 100,
"height": 100
}
]
},
"companyLinkedInId": "58189149",
"companyNameSource": "logo_match",
"domain": null
},
{
"position": null,
"location": null,
"companyName": "Fred Hutch",
"companyLinkedinUrl": "https://www.linkedin.com/company/fredhutch",
"companyUniversalName": "fredhutch",
"duration": null,
"description": null,
"experienceGroupId": null,
"startDate": null,
"endDate": null,
"companyLogo": {
"url": "https://media.licdn.com/dms/image/v2/D4D0BAQGF4eOou62nvQ/company-logo_100_100/company-logo_100_100/0/1664795263764/fredhutch_logo?e=2147483647&v=beta&t=vZYRCTo_jFF7soE3B-ivjfAjlkEjW8nXSsukKDK2Obg",
"sizes": [
{
"url": "https://media.licdn.com/dms/image/v2/D4D0BAQGF4eOou62nvQ/company-logo_100_100/company-logo_100_100/0/1664795263764/fredhutch_logo?e=2147483647&v=beta&t=vZYRCTo_jFF7soE3B-ivjfAjlkEjW8nXSsukKDK2Obg",
"width": 100,
"height": 100
}
]
},
"companyLinkedInId": "7158",
"companyNameSource": "logo_match",
"domain": "fredhutch.org"
}
],
"experienceState": "restricted",
"education": [
{
"schoolName": "The University of Chicago Booth School of Business",
"schoolLinkedinUrl": "https://www.linkedin.com/school/universityofchicagoboothschoolofbusiness/",
"schoolSlug": "universityofchicagoboothschoolofbusiness",
"schoolId": "8398",
"degree": null,
"fieldOfStudy": null,
"startDate": {
"year": 1994,
"text": "1994"
},
"endDate": {
"year": 1996,
"text": "1996"
},
"period": "1994 - 1996",
"description": null,
"insights": null,
"schoolLogo": null,
"schoolLinkedInId": "8398"
}
],
"skills": [],
"languages": [],
"honorsAndAwards": [],
"certifications": [],
"courses": [],
"volunteering": [],
"organizations": [],
"publications": [],
"projects": [],
"recommendations": [],
"recommendersCount": null,
"influencer": true,
"topVoice": true,
"creator": true,
"website": "https://snscratchpad.com/",
"photo": "https://media.licdn.com/dms/image/v2/C5603AQHHUuOSlRVA1w/profile-displayphoto-shrink_200_200/profile-displayphoto-shrink_200_200/0/1579726625398?e=2147483647&v=beta&t=Rr7WT9uBM0byOij0oT_KirejIMVE4HK4r8NGIp0zjdI",
"photoState": "public",
"bannerImage": "https://media.licdn.com/dms/image/v2/D5616AQFVwYcBLAcPqQ/profile-displaybackgroundimage-shrink_200_800/B56Z6tkWeBKAAQ-/0/1781028448390?e=2147483647&v=beta&t=Usipj8cce75EDwFagEMZrrKjllc8qtxKNoi-E6jBPi4",
"memberId": "19186432",
"memberIdentifier": "19186432",
"linkedInIdentifier": "urn:li:member:19186432",
"linkedinUrl": "https://www.linkedin.com/in/satyanadella",
"publicIdentifier": "satyanadella",
"peopleAlsoViewed": [
{
"name": "Tony Bates",
"publicIdentifier": "tony-bates-679227a5",
"url": "https://www.linkedin.com/in/tony-bates-679227a5"
},
{
"name": "Charles Phillips",
"publicIdentifier": "charlesphillips1",
"url": "https://www.linkedin.com/in/charlesphillips1"
},
{
"name": "Neil Barua",
"publicIdentifier": "neilbarua",
"url": "https://www.linkedin.com/in/neilbarua"
}
],
"currentCompanyDomain": "news.microsoft.com",
"currentCompanyIndustry": "Software Development",
"currentCompanySize": "10,001+ employees",
"currentCompanyHeadquarters": "Redmond, Washington",
"city": "Redmond",
"state": "Washington",
"country": "United States",
"countryCode": "US",
"coverPhoto": "https://media.licdn.com/dms/image/v2/D5616AQFVwYcBLAcPqQ/profile-displaybackgroundimage-shrink_200_800/B56Z6tkWeBKAAQ-/0/1781028448390?e=2147483647&v=beta&t=Usipj8cce75EDwFagEMZrrKjllc8qtxKNoi-E6jBPi4",
"followers": 12152382,
"connections": null,
"headlineSource": "badge",
"currentCompanyId": "1035",
"currentSchoolId": "8398"
}
}
The champion who bought from you is now at a new company with a new budget. The record you hold still names the old one. By the time a database refresh catches it, someone else has called.
CrustAPI checks the public profile the moment you ask and returns the current company with its numeric id, in 0.4 seconds. Compare it with the company you hold and you know who moved. Ten thousand at a time, results to your webhook.
You hear first. Cheaper. Fresher. Easier.
We read the page the moment you ask. Not a copy from last month.
0.4 seconds a row. One bill. Nothing to babysit.
One profile in the playground, or ten thousand in a batch with a webhook. Paste the addresses you already hold.
For every row: the name, the current company with its numeric id and the profile state. A company that differs from your record means they moved. Ready for your CRM, your alerts or your model.
| Field | What comes back |
|---|---|
| publicIdentifier | satyanadella |
| firstName | Satya |
| lastName | Nadella |
| profileState | accessible |
| currentCompany.name | Microsoft |
| currentCompany.linkedInId | 1035 |
| + the company address and slug, and the numeric member id with member=true | |
Send the whole list weekly or monthly. Only the rows that changed need a full profile read. Ask for member=true once and you have a permanent id that survives renames.
| Ask for | What comes back |
|---|---|
| a batch with a webhook | up to 10,000 rows, results posted to you |
| member=true | LinkedIn’s permanent numeric member id |
| profile | the full profile for the rows that moved |
| + company, jobs, posts and people search | |
You get the rows you want. Right today. For less.
The moment you ask. Every profile on your list, checked live, with the current company and its numeric id.
LinkedIn changes its pages all the time. We keep the read working through every change, so you never run, patch or babysit a scraper.
Company names paired with numeric ids. Public readability and profile URL status included. Rows that did not change cost the same, rows that could not be read cost nothing.
You pay only when data comes back. Empty results cost nothing. Report a wrong result and the money comes back.
Stuck on a field, a filter or a weird result? Email support@crustapi.com and a data expert answers within a day. Not a bot.
Plug in our MCP server. Your agent does the rest, paying per result.
→
MCP
Pay as you go. One price per check, every field included, and you pay only when the profile comes back. Larger deposits get lower rates for those funds until they are spent.
| Checks | Cost | Rate |
|---|---|---|
| 1,000 | $1.96 | $1.96 per 1,000, pay as you go |
| 25K | $49 | $1.96 per 1,000 with a $49 deposit |
| 100K | $149 | $1.49 per 1,000 with a $149 deposit |
| 500K | $549 | $1.10 per 1,000 with a $549 deposit |
| 2.5M | $1,999 | $0.80 per 1,000 with a $1,999 deposit |
| 10M | $6,500 | $0.65 per 1,000 with a $6,500 deposit |
| 50M | $27,500 | $0.55 per 1,000 with a $27,500 deposit |
| 100M | $50,000 | $0.50 per 1,000 with a $50,000 deposit |
| 250M | $100,000 | $0.40 per 1,000 with a $100,000 deposit |
| More | Custom | Ongoing feeds, managed delivery, or volume below the ladder. Tell us what you need. |
$6 free every month, no card. Empty results cost nothing. Your paid balance never expires.
| Field | What it holds |
|---|---|
| publicIdentifier | the slug you sent |
| accessible | whether the profile is public |
| profileState | public readability and profile URL status |
| firstName | first name |
| lastName | last name |
| currentCompany | name, slug, address and numeric id |
| memberIdentifier | the permanent numeric id, with member=true |
Create a free account. No credit card required.
Paste a LinkedIn profile address, or a list of them.
Add member=true once to get the permanent id.
Download the list as a spreadsheet, use your API key, or tell your AI tool to pull it.
In code it is one line:
curl "https://crustapi.com/v1/linkedin?type=refresh&url=linkedin.com/in/satyanadella" \ -H "x-api-key: YOUR_KEY"
| Parameter | What it does | Example |
|---|---|---|
| type | refresh for a job-change check. profile for the full record. | refresh |
| url | The profile address, or just the username. | linkedin.com/in/satyanadella |
| member | Also return the permanent numeric member id. | true |
One request that checks a public LinkedIn profile and returns the current company and its numeric id, live. Compare it with what you hold and you know who moved. 0.4 seconds a row, ten thousand rows a batch, with no login.
Send the list as a batch with a webhook. Up to 10,000 profiles a request; results are posted to you when the batch finishes. Run it weekly or monthly.
They come back flagged, restricted or not resolvable, and are never billed. You keep the row and know why it is empty.
0.4 seconds a row. That is the median a customer sees, measured through crustapi.com on the day this page was built. A batch of 10,000 runs in the background and posts to your webhook.
$1.96 for every 1,000 checks, with lower rates for larger individual deposits. Private, deleted and empty rows cost nothing. $6 free every month, no card.
We read the public pages LinkedIn shows anyone, logged out, and never use accounts, cookies or fake profiles. That is the distinction that ended the vendors who did. Public, logged-out collection has repeatedly defeated computer-fraud and contract claims. Check your own use case. We are not lawyers.
Profiles, companies, jobs, posts and more. One account, one bill.