> ## Documentation Index
> Fetch the complete documentation index at: https://docs.edges.run/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Get your first LinkedIn search results in under 2 minutes.

## What is Edges?

Edges is the API for LinkedIn automation and data enrichment. One API call to:

<CardGroup cols={4}>
  <Card title="Extract" icon="download">
    Profiles, posts, companies
  </Card>

  <Card title="Enrich" icon="sparkles">
    Add LinkedIn data to your SaaS or agent
  </Card>

  <Card title="Automate" icon="robot">
    Messages, invites, follows
  </Card>

  <Card title="Search" icon="magnifying-glass">
    Find leads at scale
  </Card>
</CardGroup>

<Tip>
  **No LinkedIn account setup required** — start with `identity_mode: "managed"` and upgrade later.
</Tip>

<Card title="Use our documentation MCP" icon="plug" href="/v1/mcp">
  Add Edges Documentation to your AI assistant or IDE thanks to our Model Context Protocol server. Best advices directly from the documentation into your IDE !
</Card>

***

## Try it now

Get your API key from [Developer Settings](https://app.edges.run/settings/developers), then run:

<CodeGroup>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://api.edges.run/v1/actions/linkedin-search-people/run/live \
    --header 'Accept: application/json' \
    --header 'Content-Type: application/json' \
    --header 'X-API-Key: YOUR_API_KEY' \
    --data '{
      "identity_mode": "managed",
      "input": {
        "linkedin_people_search_url": "https://www.linkedin.com/search/results/people/?keywords=software%20engineer"
      }
    }'
  ```

  ```typescript TypeScript SDK theme={null}
  import { Edges } from '@edgesrun/sdk';

  const ed = new Edges({ apiKey: process.env.EDGES_API_KEY! });

  const { data } = await ed.linkedin.searchPeople({
    identity_mode: "managed",
    input: {
      linkedin_people_search_url: "https://www.linkedin.com/search/results/people/?keywords=software%20engineer"
    }
  });

  console.log(data);
  ```
</CodeGroup>

<Check>
  **Success!** If you see an array of LinkedIn profiles, you're ready to build.
</Check>

### What you'll get back

```json theme={null}
[
  {
    "full_name": "John Doe",
    "linkedin_profile_url": "https://www.linkedin.com/in/johndoe",
    "job_title": "Senior Software Engineer",
    "company_name": "Tech Company",
    "headline": "Software Engineer | Full Stack Developer",
    "location": "San Francisco Bay Area"
  }
]
```

<Note>
  **Some fields depend on which account ran the action.** `connection_degree` describes the relationship between the profile and the LinkedIn account performing the search — so it is not returned in `managed` mode, where the action runs on an Edges-operated account rather than yours. Run the action with one of your own identities in `direct` mode if you need it.
</Note>

<Note>
  **Managed mode cost:** Using `identity_mode: "managed"` costs 1.5× standard credits but requires zero setup. Perfect for getting started.
</Note>

<Info>
  **Built-in protection:** Edges applies **Smart Limits** to protect LinkedIn accounts from restrictions automatically. [Learn more](/v1/linkedin/limits).
</Info>

***

## How it works

<Steps>
  <Step title="Choose an Action">
    Browse the [full action reference](/v1/api/actions-index) for LinkedIn, Sales Navigator, and data enrichment.
  </Step>

  <Step title="Pick an Identity Mode">
    Use `managed` (no setup), your users' accounts (`direct`), or rotate your accounts (`auto`).
  </Step>

  <Step title="Make the API call">
    Send a POST request with your input. Results return in real-time.
  </Step>

  <Step title="Process results">
    Each successful result consumes credits — [see how billing works](https://support.edges.run/en/articles/12398360-understanding-how-credits-are-billed).
  </Step>
</Steps>

***

## Identity modes explained

Most Actions require a LinkedIn account to execute. Edges gives you three options:

| Mode | Setup | Cost | Best for |
| - | - | - | - |
| `managed` | None | 1.5× credits | Getting started, and enrichment or search at volume |
| `direct` | Connect your users' accounts | Standard | User-specific outreach, personal accounts |
| `auto` | Connect your users' accounts | Standard | Spreading load across every account in your workspace |

<Accordion title="Using your own LinkedIn accounts">
  For production use or user-specific actions (sending messages, invitations):

  1. [Create an Identity](/v1/api/identities/create) to represent your user
  2. [Connect their LinkedIn](/v1/api/integrations/connect) via Chrome Extension or API
  3. Use `identity_ids: ["identity_uid"]` instead of `identity_mode: "managed"`

  **Full guide:** [Identity Modes](/v1/identities/modes)
</Accordion>

***

## Handling errors

The API uses consistent error responses across all endpoints:

```json theme={null}
{
  "error_label": "INVALID_INPUT",
  "error_scope": "input",
  "error_ref": "ERR-12345",
  "message": "The provided input is invalid.",
  "status_code": 400
}
```

| Status | Meaning |
| - | - |
| `200` | Success |
| `400` | Bad request — check your input |
| `401` | Invalid or missing API key |
| `424` | LinkedIn-specific error (check `error_label`) |
| `500` | Server error — [contact us](mailto:support@edges.run) |

<Tip>
  Use `error_label` and `error_scope` for programmatic error handling. See the full [Error Reference](/v1/error-reference).
</Tip>

***

## What's next?

<CardGroup cols={2}>
  <Card title="Explore Actions" icon="bolt" href="/v1/api/actions-index">
    Browse every LinkedIn, Sales Navigator, and enrichment action
  </Card>

  <Card title="TypeScript SDK" icon="code" href="/v1/sdk">
    Type-safe SDK with autocomplete for faster development
  </Card>

  <Card title="Async & Batch Processing" icon="clock" href="/v1/runs/overview">
    Process thousands of records with callbacks
  </Card>

  <Card title="Core Concepts" icon="book" href="/v1/core-concepts">
    Deep dive into Identities, Integrations, and Runs
  </Card>
</CardGroup>

***

## Need help?

* **Email:** [support@edges.run](mailto:support@edges.run)
* **Full API Reference:** [/v1/api/introduction](/v1/api/introduction)
* **Troubleshooting:** [FAQ & Common Issues](/v1/faq)
* **Ask your AI tools** about Edges — connect the [documentation MCP](/v1/mcp), or hand your coding agent the [agent skills](/v1/guides/agent-skills)

<Card title="Agent skill" icon="robot" href="https://github.com/edgesrun/linkedin-skills/blob/main/plugins/linkedin-skills/skills/edges-getting-started/SKILL.md" horizontal>
  `edges-getting-started` — ready-made instructions for coding agents calling this endpoint.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.