person_linkedin_enrich — Orange Slice capability

Outcome-priced capability. One price for the answer, whichever providers it took. Everything we expose, with prices: https://orangeslice.ai/llms.txt

Reads a person's LinkedIn profile from the B2B database — title, company, location, skills — in one indexed lookup rather than a scrape. One credit, billed only when the profile is found.

Price

$0.002, charged per hit

Billed only when the answer is found. A miss costs nothing.

The price is a property of the outcome, not of the work behind it. Whichever vendor serves this call, and whatever it costs us, the number above is the number quoted before the run and charged after it.

Measured reliability

  • Hit rate: 98% of runs resolve an answer.
  • Sample: 591 runs, measured 2026-09-01.

Use these to choose between entries that both fit. Do not use them to rule one out — a low hit rate is a fact about the world's data, not about whether the call is worth making, and under this pricing a miss is free.

Call it

CLI

orangeslice enrich person_linkedin_enrich --linkedin-url https://linkedin.com/in/satyanadella # name to profile in two hops: echo '{"name":"Jane Doe","company":"Stripe"}' \ | orangeslice enrich person_linkedin \ | orangeslice enrich person_linkedin_enrich

HTTP

curl -X POST 'https://orangeslice.ai/api/v1/run' \ -H 'Authorization: Bearer $ORANGESLICE_API_KEY' \ -H 'Content-Type: application/json' \ -d '{"capability":"person_linkedin_enrich","input":{"extended":"<boolean>","linkedinUrl":"<string>","username":"<string>"}}'

SDK

await services.person.linkedin.enrich({ extended: "…", linkedinUrl: "…", username: "…" });

Inputs

FieldTypeRequiredDescription
extendedbooleanNoInclude experience, education, certifications and more (default: false)
linkedinUrlstringNoLinkedIn profile URL
usernamestringNoLinkedIn profile slug/username (e.g., 'satyanadella')

Inputs may also be piped as NDJSON, one JSON object per line.

Output

{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "firstName": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "lastName": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "slug": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "headline": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "summary": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "company": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "location": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "countryCode": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "industry": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "skills": { "default": [], "type": "array", "items": { "type": "string" } }, "connections": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "followers": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "profilePic": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "linkedinUrl": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "twitterHandle": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "companyLinkedinUrl": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "domain": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "name", "firstName", "lastName", "slug", "headline", "summary", "title", "company", "location", "countryCode", "industry", "skills", "connections", "followers", "profilePic", "linkedinUrl", "twitterHandle", "companyLinkedinUrl", "domain" ], "additionalProperties": false }

The field that carries the answer is name. It is null — or empty — when nothing was found, which is how a miss is told from a hit without knowing anything else about this entry.

Before you run

  • Price it first. orangeslice enrich person_linkedin_enrich --dry-run returns the exact dollar cost and spends nothing.
  • Large runs need approval. Above the spend-gate threshold a run exits 7 until it carries a plan token, and only a dry run mints one.
  • Scopes: enrich
  • Permitted uses: research, outreach, export

Exit codes

0 ok · 2 bad input · 3 auth · 4 not found · 5 provider · 6 rate limited · 7 spend gate, nothing billed · 8 timeout · 9 a third-party account needs connecting