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

# Get Profile Info

> Retrieve the profile information of any user.

## Overview

Fetches detailed profile data for a specified user. You can identify the target profile using a profile URL, a public identifier, or a profile URN.

> [!NOTE]
>
> This endpoint consumes **1 credit** per request. Ignore this if you're on per-seat pricing: usage is unlimited.

## Request

**x-api-key** `string` *required*

Your API key for authentication.

**account\_id** `string` *required*

The unique identifier of the account to use.

**action** `string` *required*

Must be `"get"`.

**params** `object`

**params properties**

**profile\_url** `string` *required*

Profile URL. Accepts a classic URL (`/in/...`) or a Sales Nav lead URL (`/sales/lead/...`). Required if `identifier` and `profile_urn` are not provided.

**identifier** `string`

Public identifier (vanity name). Alternative to `profile_url`.

**profile\_urn** `string`

Profile URN. Alternative to `profile_url`.

**sales\_nav** `boolean` (default: false)

Also return `open_link` (Open Profile) and `inmail_eligible`. Requires a Sales Navigator seat. Auto-enabled for a Sales Nav lead URL.

**recruiter** `boolean` (default: false)

Read the candidate from the account's **Recruiter seat** (pass the candidate's `profile_urn`). See [Recruiter](#recruiter) below.

## Response

**success** `boolean`

Indicates whether the request was successful.

**data** `object`

The profile data of the target user.

**data properties**

**public\_id** `string`

Public identifier (vanity name).

**profile\_urn** `string`

Unique identifier of the profile. Treat it as an opaque string and pass it back exactly as returned.

**profile\_url** `string`

Canonical profile URL.

**first\_name** `string`

First name.

**last\_name** `string`

Last name.

**headline** `string`

Profile headline.

**location** `string`

Location text.

**summary** `string`

About / bio section.

**industry** `string`

Industry associated with the profile.

**experience** `array`

Work experience entries. Each item: `company`, `title`, `description`, `start_date` and `end_date` formatted as `M/YYYY` (e.g. `"10/2025"`; `end_date` is `""` for current roles), `company_url`, `company_logo_url`.

**education** `array`

Education entries. Each item: `school`, `degree`, `field_of_study`, `start_date`, `end_date` (years, e.g. `"2018"`), `school_logo_url`.

**skills** `array`

List of skills (array of strings).

**profile\_picture\_url** `string`

URL of the profile picture.

**isOpenToWork** `boolean`

Profile displays the "Open to work" badge.

**isHiring** `boolean`

Profile displays the "Hiring" badge.

**isPremium** `boolean`

The person has a LinkedIn Premium subscription.

**isInfluencer** `boolean`

LinkedIn Influencer badge.

**isCreator** `boolean`

Creator mode is on.

**relationship** `string`

Network distance between the connected account and this profile: `"1st degree"`, `"2nd degree"`, `"3rd+ degree"` or `"Out of network"`. Same vocabulary as `connection_level` in [Search People](https://docs.linkupapi.com/api-reference/v2/profiles/search-people.md).

**connectionDate** `string`

Date the two profiles connected (`YYYY-MM-DD HH:MM:SS`). Empty unless `relationship` is `"1st degree"`.

**email** `string`

Email from the contact info section. Only visible for 1st degree connections that share it, otherwise `""`.

**phone** `string`

Phone from the contact info section, same visibility as `email`.

**website** `string`

Website from the contact info section, same visibility as `email`.

**open\_link** `boolean`

Reachable via Open Profile (free InMail). Only with `sales_nav: true`.

**inmail\_eligible** `boolean`

InMail can be sent (no restriction). Only with `sales_nav: true`.

**inmail\_restriction** `string`

Reason an InMail cannot be sent, `"NO_RESTRICTION"` otherwise. Only with `sales_nav: true`.

**metadata** `object`

**metadata properties**

**action** `string`

The action that was performed (`"get"`).

**account\_id** `string`

The account ID used for the request.

**credits\_consumed** `integer`

Number of credits consumed (1).

**timestamp** `string`

ISO 8601 timestamp of the response.

```json 200 theme={null}
{
  "success": true,
  "data": {
    "public_id": "john-smith-42",
    "profile_urn": "ACoAABCgruIBcpBVBLKMJQD2Do7tIBxKFIQNvss",
    "profile_url": "https://www.linkedin.com/in/john-smith-42",
    "first_name": "John",
    "last_name": "Smith",
    "headline": "CEO @Acme | Love discussing automation, agentic tech, and data engineering",
    "location": "Greater Paris, France",
    "summary": "I have co-founded:\n- Acme (Email Finder & Verifier, www.acme.example)\n- Beta Labs (Model mapping, www.betalabs.example)\n\nIn total, over 50 jobs created.",
    "industry": "Internet",
    "experience": [
      {
        "company": "Acme",
        "title": "CEO",
        "description": "Acme is a SaaS to find and verify email addresses.",
        "start_date": "10/2022",
        "end_date": "",
        "company_url": "https://linkedin.com/company/acme",
        "company_logo_url": "https://media.licdn.com/dms/image/v2/.../company-logo_400_400/..."
      },
      {
        "company": "Beta Labs",
        "title": "Head of R&D",
        "description": "",
        "start_date": "5/2019",
        "end_date": "8/2022",
        "company_url": "https://linkedin.com/company/beta-labs",
        "company_logo_url": "https://media.licdn.com/dms/image/v2/.../company-logo_400_400/..."
      }
    ],
    "education": [
      {
        "school": "Sample University",
        "degree": "MSc",
        "field_of_study": "Management",
        "start_date": "2008",
        "end_date": "2011",
        "school_logo_url": "https://media.licdn.com/dms/image/v2/.../company-logo_400_400/..."
      },
      {
        "school": "Example Institute",
        "degree": "",
        "field_of_study": "",
        "start_date": "",
        "end_date": "",
        "school_logo_url": ""
      }
    ],
    "skills": ["Business Development", "Entrepreneurship", "Start-ups", "Team Management", "CRM"],
    "profile_picture_url": "https://media.licdn.com/dms/image/v2/.../profile-displayphoto-shrink_400_400/...",
    "isOpenToWork": false,
    "isHiring": true,
    "isPremium": true,
    "isInfluencer": false,
    "isCreator": false,
    "email": "john.smith@example.com",
    "phone": "0600000000",
    "website": "https://www.acme.example",
    "relationship": "1st degree",
    "connectionDate": "2026-05-12 12:55:48"
  },
  "metadata": {
    "action": "get",
    "account_id": "your-account-id",
    "credits_consumed": 1,
    "timestamp": "2026-04-26T10:35:00Z"
  }
}
```

```json 400 theme={null}
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "Profile not found"
  },
  "metadata": {
    "action": "get",
    "account_id": "your-account-id",
    "credits_consumed": 0,
    "timestamp": "2026-03-24T12:00:00Z"
  }
}
```

## Recruiter

With `recruiter: true`, pass the `profile_urn` (`urn:li:ts_profile:…`) of a [Search People Recruiter](https://docs.linkupapi.com/api-reference/v2/profiles/search-people-recruiter.md) result. You get the same shape as a search result, plus contact info when LinkedIn exposes it, summary, follower count and the seat's own counters on that person. `include_activity: true` adds their recent activity.

```json theme={null}
{ "account_id": "your-account-id", "action": "get", "params": { "recruiter": true, "profile_urn": "urn:li:ts_profile:AEMAA…" } }
```

The Recruiter lookup only knows `profile_urn`s (the bare `AEMAA…` id works too). A public identifier, a profile URL or a classic `ACoAA…` URN is refused with `INVALID_PARAMS` (400), no credit, nothing sent to LinkedIn. To read a profile by its public identifier, call this action with the LinkedIn account (the seat's `parent_account_id`) instead.

```json theme={null}
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "In Recruiter mode (a Recruiter seat, or recruiter:true), profiles/get takes a candidate's profile_urn (urn:li:ts_profile:…) from profiles/search_people_recruiter, not a public identifier or profile URL. To read a profile by its public identifier or URL, call profiles/get with the LinkedIn account (account_id 69c127c37cae0494dd827286)."
  },
  "metadata": { "action": "get", "credits_consumed": 0, "timestamp": "2026-10-07T12:00:00Z" }
}
```


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