# LinkedIn data in JavaScript and Node.js. Pay per record.

> Call the LinkedIn data API from Node.js or the browser's server side with fetch: profiles, companies, posts and jobs. Pay per record.

Canonical: https://apiforagents.dev/integrations/javascript · Updated 2026-10-16

fetch is all it takes, in Node.js, Deno, Bun or a serverless function. Keep the key on the server.

- Works with: JavaScript and Node.js
- Price: from $0.001 / record
- Free to start: $0.10
- Setup: No SDK

## The client

node · fetch:

```javascript
const BASE = "https://apiforagents.dev";

export async function linkedin(op, params) {
  const r = await fetch(`${BASE}/v1/linkedin`, {
    method: "POST",
    headers: { Authorization: `Bearer ${process.env.AFA_KEY}`, "Content-Type": "application/json" },
    body: JSON.stringify({ op, ...params }),
  });
  const body = await r.json();
  if (!r.ok) throw new Error(`${body.error}: ${body.error_description}`);
  return body; // read body.coverage and body.notes before body.data
}

const { data, cost } = await linkedin("companies", { subjects: ["microsoft"] });
console.log(data.companies[0].employeesCount, "employees; charged", cost.usd);
```

> **Never in the browser** The key spends your balance. Call the API from your server or a serverless function, never from code that ships to a browser.

## Questions

### Where do I get a key?

Two ways. A person signs in at https://apiforagents.dev and makes an API key under Console, API keys. Or the agent signs itself up with one POST to https://apiforagents.dev/agent/identity, exchanges the identity for a token, and starts on $0.10 free; a person claims it later with a six-digit code to top up.

### What does a call cost?

LinkedIn profiles are $0.004 and companies $0.004 each, posts, comments, reactions and ads $0.002, jobs $0.001. Pay as you go from $5, nothing monthly. Add "estimateOnly": true to any call for a free quote, and records that do not come back are refunded.

## Why API for Agents

- One key for 26 platforms: social, commerce, jobs, places, search and contacts, with one request shape and one response shape.
- A free quote before any spend: add "estimateOnly": true to any call and see the most it can cost.
- Pay per record in US dollars. No subscription, nothing expires, top-ups from $5.
- $0.10 free to try, no card. An AI agent can sign itself up in one request; a person claims it later.
- Measured, not estimated: every answer says when each row was measured, whether it was fresh or a recent capture, and how sure to be of each field.
- Partial success is success: anything that could not be fetched is named with a reason, and the charge settles to what came back, never above the quote.
- Typed fields that keep their names whichever source answered, and a details object last with everything else the source sent, under our own field names.
- Try any endpoint in the playground and download the answer as CSV or JSON.

## Start

The playground runs any endpoint by hand: pick a platform and what you want from it, fill a short form named in plain words (or press Use sample input), see the free quote on the Run button, run it, then read the answer as a table or JSON and download it as CSV or JSON. The same call is written out as cURL, Python and Node while you type. Open it at https://apiforagents.dev/dashboard/run (sign in first).

Agents register at https://apiforagents.dev/auth.md (one POST, $0.10 free). People: https://apiforagents.dev/docs#start. Prices: https://apiforagents.dev/pricing.md
