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

# LinkedIn Data - Fetch Profiles, Posts, and Automate Engagement

> Fetch LinkedIn profiles, retrieve posts, like and comment on content via the OutX API. A Proxycurl alternative powered by real browser sessions.

<script type="application/ld+json">
  {`{
    "@context": "https://schema.org",
    "@type": "WebAPI",
    "name": "OutX LinkedIn API",
    "url": "https://api.outx.ai/linkedin-agent",
    "description": "Direct LinkedIn API proxy - fetch profiles, get posts, like and comment on LinkedIn posts via REST API. Alternative to Proxycurl.",
    "documentation": "https://outx.ai/docs/linkedin-api/introduction",
    "provider": {
      "@type": "Organization",
      "name": "OutX.ai",
      "url": "https://www.outx.ai"
    }
    }`}
</script>

The OutX LinkedIn API is a middleware layer that lets you interact with LinkedIn data and automate engagement through a simple REST API. Unlike traditional scraping tools, OutX uses real browser sessions via the OutX Chrome extension, giving you reliable, authentic access to LinkedIn data without the risk of account bans.

## How It Works

OutX is not a scraper. Instead of simulating HTTP requests or using headless browsers, it routes API calls through real LinkedIn sessions maintained by the OutX Chrome extension installed on your team members' browsers. This means:

* **No proxy rotation or CAPTCHA solving** required
* **No risk of IP bans** since requests go through authentic browser sessions
* **Real-time data** from LinkedIn, not cached or stale datasets
* **Full compliance** with browser-level session handling

<Warning>
  At least one team member must have the [OutX Chrome extension](https://chromewebstore.google.com/detail/outxai-track-linkedin-pos/epnimaeheelhgeelbppbfkjegklflakj) installed and active within the last 48 hours for API calls to work. See [Authentication](/docs/api-reference/authentication) for details.
</Warning>

## Why OutX vs. Alternatives

| Feature                 | OutX    | Proxycurl | PhantomBuster | Unipile  |
| ----------------------- | ------- | --------- | ------------- | -------- |
| Real browser sessions   | Yes     | No        | No            | No       |
| No proxy needed         | Yes     | No        | No            | No       |
| Profile data            | Yes     | Yes       | Yes           | Yes      |
| Post fetching           | Yes     | Limited   | Yes           | Yes      |
| Like/Comment automation | Yes     | No        | Yes           | Limited  |
| Risk of LinkedIn bans   | Minimal | Moderate  | High          | Moderate |

## Important: LinkedIn Safety

<Warning>
  **OutX does not rate-limit you, LinkedIn does.** Every request executes as a real action on LinkedIn through the Chrome extension. OutX itself imposes no per-minute or per-hour cap, so if you burst, the underlying LinkedIn account is what gets flagged.

  **You are responsible for pacing.** Stay under **\~50 API calls per hour** total across all endpoints, distribute calls throughout the day, and mix action types when you can. See [Rate Limits](/docs/api-reference/rate-limits) for the per-endpoint daily caps and live usage dashboard.
</Warning>

## Async Task Model

All LinkedIn API endpoints are **asynchronous**. When you make a request, the API immediately returns a task ID. The actual work is performed in the background by the Chrome extension. You then poll the task status endpoint to retrieve results.

```
1. POST /linkedin-agent/fetch-profile  -->  { api_agent_task_id: "abc-123" }
2. GET  /linkedin-agent/get-task-status?api_agent_task_id=abc-123  -->  { status: "pending" }
3. GET  /linkedin-agent/get-task-status?api_agent_task_id=abc-123  -->  { status: "completed", task_output: {...} }
```

This async model ensures reliability since the Chrome extension processes tasks on its own schedule, typically within seconds to a few minutes.

## Base URL

All LinkedIn API requests should be made to:

```
https://api.outx.ai
```

## Authentication

Include your API key in the `x-api-key` header of every request:

```bash theme={null}
x-api-key: YOUR_API_KEY
```

Get your API key at [mentions.outx.ai/api-doc](https://mentions.outx.ai/api-doc).

## Available Endpoints

| Method | Endpoint                                  | Description                                      | Details                                       |
| ------ | ----------------------------------------- | ------------------------------------------------ | --------------------------------------------- |
| POST   | `/linkedin-agent/fetch-profile`           | Fetch a LinkedIn profile by slug                 | [Open](/docs/linkedin-api/fetch-profile)           |
| POST   | `/linkedin-agent/fetch-profiles-posts`    | Fetch recent posts from one or more profile URNs | [Open](/docs/linkedin-api/fetch-profiles-posts)    |
| POST   | `/linkedin-agent/fetch-company`           | Fetch a LinkedIn company page                    | [Open](/docs/linkedin-api/fetch-company)           |
| POST   | `/linkedin-agent/fetch-company-posts`     | Fetch recent posts from companies                | [Open](/docs/linkedin-api/fetch-company-posts)     |
| POST   | `/linkedin-agent/search-profiles`         | Search LinkedIn for profiles by filters          | [Open](/docs/linkedin-api/search-profiles)         |
| POST   | `/linkedin-agent/fetch-connections`       | Fetch your 1st-degree connections                | [Open](/docs/linkedin-api/fetch-connections)       |
| POST   | `/linkedin-agent/like-post`               | Like a post by activity URN                      | [Open](/docs/linkedin-api/like-post)               |
| POST   | `/linkedin-agent/comment-post`            | Comment on a post by activity URN                | [Open](/docs/linkedin-api/comment-post)            |
| POST   | `/linkedin-agent/send-message`            | Send a direct message to a 1st-degree connection | [Open](/docs/linkedin-api/send-message)            |
| POST   | `/linkedin-agent/send-connection-request` | Send a connection request                        | [Open](/docs/linkedin-api/send-connection-request) |
| GET    | `/linkedin-agent/get-task-status`         | Poll the status of an async task                 | [Open](/docs/linkedin-api/get-task-status)         |

For upcoming endpoints (jobs, etc.), see [Coming Soon](/docs/linkedin-api/coming-soon).

## Looking for Watchlist Endpoints?

For ongoing monitoring with watchlists, see the [Watchlists & Engagement](/docs/api-reference/quickstart) section. Watchlists automatically scan LinkedIn for keywords, people, and companies over time with AI-powered categorization.

<AccordionGroup>
  <Accordion title="What is the difference between LinkedIn Data and Watchlist endpoints?">
    **LinkedIn Data** (this section) provides direct access to LinkedIn actions: fetch a profile, get posts, like, comment. Each call is a one-off async task.

    **Watchlists & Engagement** provides higher-level features: create watchlists that automatically monitor keywords, people, or companies over time, with built-in post retrieval and filtering.

    Use LinkedIn Data when you need direct control. Use Watchlists when you want ongoing, automated monitoring.
  </Accordion>

  <Accordion title="Do I need the Chrome extension?">
    Yes. The OutX API works by routing requests through real browser sessions maintained by the Chrome extension. At least one team member must have the extension installed and active within the last 48 hours. See [Authentication](/docs/api-reference/authentication) for details.
  </Accordion>

  <Accordion title="Is OutX a Proxycurl alternative?">
    Yes. OutX provides similar LinkedIn data fetching capabilities to Proxycurl but with key differences: OutX uses real browser sessions instead of scraping, which provides more reliable data access and lower risk of LinkedIn restrictions. OutX also offers engagement automation (likes, comments) which Proxycurl does not.
  </Accordion>

  <Accordion title="How long do async tasks take to complete?">
    Most tasks complete within seconds to a few minutes, depending on when the Chrome extension picks up the task. The extension checks for new tasks on a regular cron schedule. You can poll the [Get Task Status](/docs/linkedin-api/get-task-status) endpoint to check progress.
  </Accordion>
</AccordionGroup>

## What's Next?

<Steps>
  <Step title="Get Your API Key">
    Visit [mentions.outx.ai/api-doc](https://mentions.outx.ai/api-doc) and click "Reveal API Key"
  </Step>

  <Step title="Install the Chrome Extension">
    Install the OutX Chrome extension and keep it active
  </Step>

  <Step title="Follow the Quick Start">
    Fetch your first LinkedIn profile in under 2 minutes with our [Quick Start guide](/docs/linkedin-api/quickstart)
  </Step>

  <Step title="Explore Endpoints">
    Dive into the individual endpoint docs for full details
  </Step>
</Steps>

<Info>
  Have questions? Contact us at [support@outx.ai](mailto:support@outx.ai) or visit [outx.ai](https://www.outx.ai).
</Info>

***

## Learn More

* [LinkedIn API Guide - OutX Blog](https://www.outx.ai/blog/linkedin-api-guide)
* [Proxycurl Alternative - Why Developers Choose OutX](https://www.outx.ai/blog/proxycurl-alternative)
* [LinkedIn Social Listening Platform](https://www.outx.ai/social-listening-linkedin)

## Frequently Asked Questions

<AccordionGroup>
  <Accordion title="How is the LinkedIn API different from the Social Listening API?">
    The LinkedIn API is for direct, on-demand calls - you fetch a profile, retrieve posts, or perform an engagement action as a one-off task. The Social Listening API (Intelligence API) creates watchlists for ongoing monitoring with AI-powered categorization and intent detection. Use the LinkedIn API for programmatic access; use the Social Listening API for continuous tracking.
  </Accordion>

  <Accordion title="Is the LinkedIn API a replacement for Proxycurl?">
    OutX offers similar profile fetching capabilities to Proxycurl. The key difference is that OutX uses real browser sessions via the Chrome extension rather than scraping, which provides more reliable data access and lower risk of LinkedIn restrictions. OutX also supports engagement automation (likes, comments), which Proxycurl does not offer.
  </Accordion>

  <Accordion title="What happens if my Chrome extension is not active?">
    API calls will return a 403 error with a "Plugin installation required" message. At least one team member must have the OutX Chrome extension installed and active within the last 48 hours for API calls to work.
  </Accordion>
</AccordionGroup>
