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

# LinkedIn

> What agents can do in LinkedIn at each access level, and how to connect, limit, and disconnect LinkedIn.

Connect LinkedIn so your agents can work in your LinkedIn account. You choose an access level for each account, and Squad refuses any agent action outside that level.

## Access levels

Each LinkedIn account has an access level: **Read-only**, **Read + post**, and **Full access**. Squad refuses any agent action outside that level. You can also narrow or block single agents under **Per-agent access**.

| Level                         | The connect window describes this level as     | Actions agents can use |
| ----------------------------- | ---------------------------------------------- | ---------------------- |
| **Read-only**                 | "See your name, photo, email, and profile."    | 14 of 26               |
| **Read + post** (recommended) | "Read profile and post to your LinkedIn feed." | 23 of 26               |
| **Full access**               | "Also manage company pages you admin."         | 26 of 26               |

**Read + post** is the recommended level. The connect window selects it for you, and you can choose another level.

The LinkedIn sign-in page asks you to approve full access to your account. This is expected. Squad does not narrow the sign-in. It checks every agent action against the level you chose, and it refuses actions outside that level.

## What agents can do at each level

Each level opens with a short summary in plain tasks, then lists every action it adds, grouped by what the action works on. You do not need to name actions. Ask in plain words, and the agent searches for the matching action.

<Tip>**Find an action.** Open a level and use your browser's find (Ctrl+F, or Cmd+F on a Mac) with a word from the task or part of a slug. Or ask your agent in plain words, for example "What can you do in my LinkedIn account?" The agent can search the LinkedIn actions for you.</Tip>

Each action shows its name, a one-line description where the LinkedIn action catalog has one, and its slug. The slug is the ID that agents use when they call the action.

<AccordionGroup>
  <Accordion title="Read-only">
    Agents can use 14 of the 26 LinkedIn actions at this level:

    * View images
    * View reports
    * View audiences
    * View companies
    * View content
    * View people
    * View reactions
    * Search records
    * View sizes
    * View videos

    All 14 actions at this level:

    | Works on          | Action                       | What it does                                                                                                                                                              | Slug                                    |
    | ----------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------- |
    | **Ads**           | Get ad targeting facets      | Retrieve available ad targeting facets from LinkedIn Marketing API.                                                                                                       | `LINKEDIN_GET_AD_TARGETING_FACETS`      |
    | **Audiences**     | Get audience counts          | Retrieves audience size counts for specified targeting criteria.                                                                                                          | `LINKEDIN_GET_AUDIENCE_COUNTS`          |
    | **Companies**     | Get company info             | Retrieves organizations where the authenticated user has specific roles (ACLs), to determine their management or content posting capabilities for LinkedIn company pages. | `LINKEDIN_GET_COMPANY_INFO`             |
    | **Content**       | Get post content             | Retrieve detailed post content including text, images, videos, and metadata from LinkedIn by post URN.                                                                    | `LINKEDIN_GET_POST_CONTENT`             |
    | **Images**        | Get image                    | Retrieve details of a LinkedIn image using its URN.                                                                                                                       | `LINKEDIN_GET_IMAGE`                    |
    |                   | Get images                   | Retrieve image metadata including download URLs, status, and dimensions from LinkedIn's Images API.                                                                       | `LINKEDIN_GET_IMAGES`                   |
    | **People**        | Get person                   | Retrieves a LinkedIn member's profile information by their person ID.                                                                                                     | `LINKEDIN_GET_PERSON`                   |
    | **Reactions**     | List reactions               | Retrieves reactions (likes, celebrations, etc.) on a LinkedIn entity such as a share, post, or comment.                                                                   | `LINKEDIN_LIST_REACTIONS`               |
    | **Records**       | Search ad targeting entities | Search for ad targeting entities using typeahead search.                                                                                                                  | `LINKEDIN_SEARCH_AD_TARGETING_ENTITIES` |
    | **Reports**       | Get org page stats           | Retrieve page statistics for a LinkedIn organization page.                                                                                                                | `LINKEDIN_GET_ORG_PAGE_STATS`           |
    |                   | Get share stats              | Retrieves share statistics for a LinkedIn organization, including impressions, clicks, likes, comments, and shares.                                                       | `LINKEDIN_GET_SHARE_STATS`              |
    | **Sizes**         | Get network size             | Retrieve the follower count for a LinkedIn organization.                                                                                                                  | `LINKEDIN_GET_NETWORK_SIZE`             |
    | **Videos**        | Get videos                   | Retrieves video metadata from LinkedIn Marketing API.                                                                                                                     | `LINKEDIN_GET_VIDEOS`                   |
    | **Other actions** | Get my info                  | Fetches the authenticated LinkedIn user's profile information including name, headline, profile picture, and other profile details.                                       | `LINKEDIN_GET_MY_INFO`                  |
  </Accordion>

  <Accordion title="Read + post (recommended)">
    Agents can use 23 of the 26 LinkedIn actions at this level: everything in **Read-only**, plus:

    * Create files
    * Create videos
    * View account details
    * Create articles
    * Create comments
    * Create posts

    The 9 actions that this level adds to **Read-only**:

    | Works on            | Action                      | What it does                                                                                                                            | Slug                                   |
    | ------------------- | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------- |
    | **Account details** | Who am I                    |                                                                                                                                         | `LINKEDIN_WHO_AM_I`                    |
    | **Articles**        | Create article or URL share | Create an article or URL share on LinkedIn using the UGC Posts API.                                                                     | `LINKEDIN_CREATE_ARTICLE_OR_URL_SHARE` |
    | **Comments**        | Create comment on post      | Create a first-level or nested comment on a LinkedIn share, UGC post, or parent comment via the Social Actions Comments API.            | `LINKEDIN_CREATE_COMMENT_ON_POST`      |
    | **Files**           | Initialize image upload     | Initialize an image upload to LinkedIn and return a presigned upload URL plus the resulting image URN.                                  | `LINKEDIN_INITIALIZE_IMAGE_UPLOAD`     |
    |                     | Register image upload       | Initialize a native LinkedIn image upload for feed shares and return a presigned upload URL plus the resulting digital media asset URN. | `LINKEDIN_REGISTER_IMAGE_UPLOAD`       |
    | **Posts**           | Create linked in post       | Creates a new post on LinkedIn for the authenticated user or an organization they manage.                                               | `LINKEDIN_CREATE_LINKED_IN_POST`       |
    |                     | Create video post           |                                                                                                                                         | `LINKEDIN_CREATE_VIDEO_POST`           |
    | **Videos**          | Upload video                |                                                                                                                                         | `LINKEDIN_UPLOAD_VIDEO`                |
    |                     | Video post                  | Uploads a video from an https URL and publishes it as a personal feed post with the given text.                                         | `LINKEDIN_VIDEO_POST`                  |
  </Accordion>

  <Accordion title="Full access">
    Agents can use 26 of the 26 LinkedIn actions at this level: everything in **Read + post**, plus:

    * Delete posts

    The 3 actions that this level adds to **Read + post**:

    | Works on  | Action                | What it does                                                                                                  | Slug                             |
    | --------- | --------------------- | ------------------------------------------------------------------------------------------------------------- | -------------------------------- |
    | **Posts** | Delete linked in post | Deletes a specific LinkedIn post (share) by its unique share\_id, which must correspond to an existing share. | `LINKEDIN_DELETE_LINKED_IN_POST` |
    |           | Delete post           | Delete a LinkedIn post using the Posts API REST endpoint.                                                     | `LINKEDIN_DELETE_POST`           |
    |           | Delete ugc post       | Delete a UGC post using the legacy UGC Post API endpoint.                                                     | `LINKEDIN_DELETE_UGC_POST`       |
  </Accordion>
</AccordionGroup>

## Connect LinkedIn

Before you start:

* You need a LinkedIn account that you can sign in to.
* Your Squad subscription must be active. Squad does not connect apps while the subscription is not active.

<Steps>
  <Step title="Open Integrations">
    Open **Settings** > **Integrations**.
  </Step>

  <Step title="Add an integration">
    On the **Connected apps** tab, click **+ Add integration**.
  </Step>

  <Step title="Find LinkedIn">
    Find **LinkedIn** in the catalog and click it. You can type the name in **Search the catalog…**.
  </Step>

  <Step title="Choose an access level">
    Under **Default scope**, choose an access level. This level applies to every agent.
  </Step>

  <Step title="Click Connect LinkedIn">
    Click **Connect LinkedIn**. The LinkedIn sign-in page opens in a new tab.
  </Step>

  <Step title="Sign in to LinkedIn">
    Sign in to LinkedIn and approve the request.
  </Step>
</Steps>

Check that it works: LinkedIn shows under **YOUR CONNECTIONS**, with a row for the account and its access level.

## Change the access level

1. Under **YOUR CONNECTIONS**, find the LinkedIn account.
2. Open the account menu (⋯) and click **Manage scope**.
3. Under **Default scope**, choose the new level.
4. Click **Save access**.

The change does not need a new sign-in. Agents get the new level from their next call.

## Set access for one agent

Every agent uses the account's level unless you set something else for it. You can narrow one agent to a lower level, or block it.

1. Under **YOUR CONNECTIONS**, open the account menu (⋯) on the LinkedIn account.
2. Click **Manage scope**.
3. Under **Per-agent access**, find the agent.
4. Choose the **Default** option to follow the account's level, choose a lower level, or choose **No access**.
5. Click **Save access**.

An agent never gets more than the account's level, even if you choose a higher level for it. Changes apply from the agent's next call. An agent with **No access** does not see the account.

## Use more than one LinkedIn account

Click **+ Account** on the LinkedIn card to connect another account. Agents use the primary account unless they are asked to use a specific one.

* After you click **+ Account**, follow the connect steps above.
* Each account has its own access level.
* The first account you connect becomes the primary account. It shows **★ PRIMARY**.
* To change the primary account, open the account menu (⋯) and click **Make primary**.
* To tell accounts apart, open the account menu (⋯) and click **Rename**.

## Reconnect or disconnect

Reconnect when the connection has expired, or when you need to change what the account can reach on the LinkedIn side:

1. Open the account menu (⋯) and click **Reconnect**.
2. Click **Reauthorize on LinkedIn**.
3. Sign in to LinkedIn and approve the request.

Reconnect signs in to the same account again. It does not add a second connection.

Open the account menu (⋯) on the LinkedIn account and click **Disconnect**. Agents lose access to that account at once.

<Warning>**Disconnect** acts at once, with no confirmation step. If it was the primary account, another connected LinkedIn account becomes primary.</Warning>

## Costs

LinkedIn actions do not use Squad credits. Connected apps never use credits. For what does use credits, see [What Squad costs](/docs/costs).

## Troubleshooting

An agent reports that an action is not allowed on this account.

* Cause: the action is outside the account's access level, or outside the level you set for that agent.
* Fix: choose a higher level in **Manage scope**, or change the agent's row under **Per-agent access**.

An agent says it has no access to LinkedIn, or it does not see the account.

* Cause: the agent is set to **No access** under **Per-agent access**, or the account is not connected.
* Fix: open **Manage scope** and change the agent's row. If the account is missing, connect it again.

Connecting or saving fails with "Your subscription isn't active."

* Cause: your Squad subscription is not active.
* Fix: resubscribe. See [Manage your subscription](/docs/billing).

An agent says the LinkedIn connection has expired.

* Cause: the sign-in for that account is no longer valid.
* Fix: use **Reconnect** on the account.

## Common questions

<AccordionGroup>
  <Accordion title="Can I limit what agents can do in LinkedIn?">
    Each LinkedIn account has an access level: **Read-only**, **Read + post**, and **Full access**. Squad refuses any agent action outside that level. You can also narrow or block single agents under **Per-agent access**.
  </Accordion>

  <Accordion title="Can I connect more than one LinkedIn account?">
    Click **+ Account** on the LinkedIn card to connect another account. Agents use the primary account unless they are asked to use a specific one.
  </Accordion>

  <Accordion title="How do I disconnect LinkedIn?">
    Open the account menu (⋯) on the LinkedIn account and click **Disconnect**. Agents lose access to that account at once.
  </Accordion>
</AccordionGroup>

## Related pages

<CardGroup cols={2}>
  <Card title="Connect apps" icon="plug" href="/docs/integrations" />

  <Card title="Add an MCP server or an API key" icon="server" href="/docs/custom-integrations">
    Use this when an action you need is not in this app.
  </Card>
</CardGroup>
