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

> ## Agent Instructions
> - Base URLs: models `https://api.aisa.one/v1` (Gemini GenerateContent: `https://api.aisa.one/v1beta`); data APIs `https://api.aisa.one/apis/v1`. The `servers` of each operation in https://aisa.one/openapi.yaml is authoritative.
> - Auth: `Authorization: Bearer $AISA_API_KEY`. Never print, log, or commit the key.
> - MCP (preferred for agents): `https://mcp.aisa.one/mcp`, signed in with OAuth, so there is no key to paste.
> - Agent Skill: `npx skills add AIsa-team/agent-skills --skill aisa`. Fallback with the AIsa CLI: `aisa skills install aisa`.
> - Spending: docs, https://aisa.one/models, https://aisa.one/api, `/v1/models`, and MCP `search`, `list_categories`, `get_details`, `batch_quote`, and the `account` operation are free. Quote the exact calls before running them (MCP `batch_quote`, CLI `aisa quote --json`). If the quote reports `auto_execute_eligible: true`, run it unless the user set a tighter limit or asked only for a quote. Otherwise, tell the user in one message the planned calls, the quoted price, and a total USD budget for the task, then wait for approval. Direct HTTP calls follow the stricter rule at https://aisa.one/docs/get-started/cli.md#direct-http-fallback. Do not make paid calls to test availability. Full rule: https://aisa.one/llms.txt

# Chat List

> List message conversations of the connected account.

Returns a ChatList with cursor pagination. Right after connecting an account, the first upstream sync may still be running — recent conversations can take a few minutes to appear.

For current API pricing, see the published x-aisa-pricing metadata. Where supported, obtain a quote for your exact request.

## Example

```bash REST theme={null}
curl "https://api.aisa.one/apis/v1/unipile/linkedin/chats?account_id=YOUR_ACCOUNT_ID" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

Path parameters and required query parameters are documented in the operation reference.

## Request contract

* **Method and path:** GET /apis/v1/unipile/linkedin/chats
* **Availability:** enabled
* **Request URL template:** `https://api.aisa.one/apis/v1/unipile/linkedin/chats`
* **account\_id:** query; optional
* **account\_type:** query; optional
* **after:** query; optional
* **before:** query; optional
* **cursor:** query; optional
* **limit:** query; optional
* **unread:** query; optional
* **Runtime facts:** 00b882f06149b4c72a4dc077c20cc1c4d86d5a8da50fcc725538d6debed194ac

[Complete OpenAPI definition](https://aisa.one/docs/openapi/unipile.json)

Effective request and pricing declaration (including authentication and referenced schemas):

```json theme={null}
{
  "operationId": "get_unipile_linkedin_chats",
  "method": "GET",
  "path": "/apis/v1/unipile/linkedin/chats",
  "servers": [
    {
      "url": "https://api.aisa.one"
    }
  ],
  "parameters": [
    {
      "description": "A filter to target items related to a certain account. Can be a comma-separated list of ids.",
      "in": "query",
      "name": "account_id",
      "required": false,
      "schema": {
        "description": "An Unipile account id or a list of Unipile account ids separated by commas.",
        "minLength": 1,
        "title": "AccountIdOrIdsParam",
        "type": "string"
      }
    },
    {
      "description": "A filter to target items related to a certain provider.",
      "in": "query",
      "name": "account_type",
      "required": false,
      "schema": {
        "enum": [
          "WHATSAPP",
          "LINKEDIN",
          "SLACK",
          "TWITTER",
          "MESSENGER",
          "INSTAGRAM",
          "TELEGRAM"
        ],
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "after",
      "required": false,
      "schema": {
        "description": "A filter to target items created after the datetime (exclusive). Must be an ISO 8601 UTC datetime (YYYY-MM-DDTHH:MM:SS.sssZ).",
        "example": "2025-12-31T23:59:59.999Z",
        "pattern": "^[1-2]\\d{3}-[0-1]\\d-[0-3]\\dT\\d{2}:\\d{2}:\\d{2}.\\d{3}Z$",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "before",
      "required": false,
      "schema": {
        "description": "A filter to target items created before the datetime (exclusive). Must be an ISO 8601 UTC datetime (YYYY-MM-DDTHH:MM:SS.sssZ).",
        "example": "2025-12-31T23:59:59.999Z",
        "pattern": "^[1-2]\\d{3}-[0-1]\\d-[0-3]\\dT\\d{2}:\\d{2}:\\d{2}.\\d{3}Z$",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "cursor",
      "required": false,
      "schema": {
        "description": "A cursor for pagination purposes. To get the next page of entries, you need to make a new request and fulfill this field with the cursor received in the preceding request. This process should be repeated until all entries have been retrieved.",
        "minLength": 1,
        "title": "CursorParam",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
        "description": "A limit for the number of items returned in the response. The value can be set between 1 and 250.",
        "example": 100,
        "maximum": 250,
        "minimum": 1,
        "type": "integer"
      }
    },
    {
      "description": "Whether you want to get either unread chats only, or read chats only.",
      "in": "query",
      "name": "unread",
      "required": false,
      "schema": {
        "type": "boolean"
      }
    }
  ],
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "x-aisa-status": "enabled",
  "x-aisa-pricing": {
    "cost_contract": "fixed_success",
    "customer_pricing": "fixed_success",
    "default_request_estimate_usd": 0.005,
    "estimate_source": "profile_seed",
    "evidence_source": "request_snapshot"
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "scheme": "bearer",
        "type": "http"
      }
    }
  }
}
```

## Cost and request rules

Published reference price: \$0.005 USD per successful request. Account-specific pricing and final settlement may differ.

Published reference values are not an account-specific quote or a settled charge. For endpoints supporting X-AISA-Cost-Mode: quote, obtain a free quote for your exact request before execution; reconcile the settled cost with response metadata and Usage Logs. USD amounts use 1,000,000 integer micro-USD per dollar.

* **Default request reference estimate (USD):** 0.005
* **Cost contract:** fixed\_success
* **Settlement evidence source:** request\_snapshot


## OpenAPI

````yaml openapi/unipile.json GET /apis/v1/unipile/linkedin/chats
openapi: 3.1.0
info:
  description: ''
  title: Unipile (LinkedIn)
  version: '1'
  x-aisa-capabilities:
    idempotency: Idempotency-Key
    max_price: X-AISA-Max-Price-USD
    quote:
      header: X-AISA-Cost-Mode
      value: quote
  x-aisa-catalogs:
    unipile:
      description: ''
      title: Unipile (LinkedIn)
      x-aisa-capabilities:
        idempotency: Idempotency-Key
        max_price: X-AISA-Max-Price-USD
        quote:
          header: X-AISA-Cost-Mode
          value: quote
      x-aisa-document:
        facts_hash: 00b882f06149b4c72a4dc077c20cc1c4d86d5a8da50fcc725538d6debed194ac
        generator_version: '3'
        protocol_version: '1'
        schema_version: '1'
      x-aisa-plans:
        builder: 1
        display_plan: payg
        payg: 1
        similarweb_payg: 1
        team: 1
        version: e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb
  x-aisa-configured-paths:
    - /apis/v1/unipile/accounts
    - /apis/v1/unipile/hosted/link
    - /apis/v1/unipile/linkedin/chats
    - /apis/v1/unipile/linkedin/chats/send
    - /apis/v1/unipile/linkedin/chats/{chat_id}/messages
    - /apis/v1/unipile/linkedin/chats/{chat_id}/messages/send
    - /apis/v1/unipile/linkedin/company/{identifier}
    - /apis/v1/unipile/linkedin/connection-requests/send
    - /apis/v1/unipile/linkedin/invitations/received
    - /apis/v1/unipile/linkedin/invitations/sent
    - /apis/v1/unipile/linkedin/invitations/sent/{invitation_id}
    - /apis/v1/unipile/linkedin/me
    - >-
      /apis/v1/unipile/linkedin/messages/{message_id}/attachments/{attachment_id}
    - /apis/v1/unipile/linkedin/messages/{message_id}/reaction
    - /apis/v1/unipile/linkedin/posts
    - /apis/v1/unipile/linkedin/posts/reaction/send
    - /apis/v1/unipile/linkedin/posts/{post_id}
    - /apis/v1/unipile/linkedin/posts/{post_id}/comments
    - /apis/v1/unipile/linkedin/posts/{post_id}/comments/send
    - /apis/v1/unipile/linkedin/recruiter/job-slots-credits/{account_id}
    - /apis/v1/unipile/linkedin/relations
    - /apis/v1/unipile/linkedin/search
    - /apis/v1/unipile/linkedin/search/parameters
    - /apis/v1/unipile/linkedin/users/{identifier}
    - /apis/v1/unipile/linkedin/users/{user_id}/posts
  x-aisa-document:
    composer_version: '26'
    document_hash: sha256:5ef79d09edf0555f82a46030534042fc6a33f9fc06ea02c8a5da0f9becaf9a2d
    facts_hash: 00b882f06149b4c72a4dc077c20cc1c4d86d5a8da50fcc725538d6debed194ac
    generator_version: '3'
    protocol_version: '1'
    response_pending: []
    schema_version: '1'
  x-aisa-plans:
    builder: 1
    display_plan: payg
    payg: 1
    similarweb_payg: 1
    team: 1
    version: e70a0959cd1b93b84ae16dffd7a538273ddb9c1d46277b82823c37ff1b6bc0fb
  x-aisa-provider: unipile
servers:
  - url: https://api.aisa.one
security:
  - bearerAuth: []
paths:
  /apis/v1/unipile/linkedin/chats:
    get:
      tags:
        - linkedin-messaging
      summary: Chat List
      description: >-
        List message conversations of the connected LinkedIn account (ChatList)
        with cursor pagination and optional unread_count filter.


        <!-- aisa-pricing:start -->

        Published reference price: $0.005 USD per successful request.
        Account-specific pricing and final settlement may differ.

        <!-- aisa-pricing:end -->
      operationId: get_unipile_linkedin_chats
      parameters:
        - description: >-
            A filter to target items related to a certain account. Can be a
            comma-separated list of ids.
          in: query
          name: account_id
          required: false
          schema:
            description: >-
              An Unipile account id or a list of Unipile account ids separated
              by commas.
            minLength: 1
            title: AccountIdOrIdsParam
            type: string
        - description: A filter to target items related to a certain provider.
          in: query
          name: account_type
          required: false
          schema:
            enum:
              - WHATSAPP
              - LINKEDIN
              - SLACK
              - TWITTER
              - MESSENGER
              - INSTAGRAM
              - TELEGRAM
            type: string
        - in: query
          name: after
          required: false
          schema:
            description: >-
              A filter to target items created after the datetime (exclusive).
              Must be an ISO 8601 UTC datetime (YYYY-MM-DDTHH:MM:SS.sssZ).
            example: '2025-12-31T23:59:59.999Z'
            pattern: ^[1-2]\d{3}-[0-1]\d-[0-3]\dT\d{2}:\d{2}:\d{2}.\d{3}Z$
            type: string
        - in: query
          name: before
          required: false
          schema:
            description: >-
              A filter to target items created before the datetime (exclusive).
              Must be an ISO 8601 UTC datetime (YYYY-MM-DDTHH:MM:SS.sssZ).
            example: '2025-12-31T23:59:59.999Z'
            pattern: ^[1-2]\d{3}-[0-1]\d-[0-3]\dT\d{2}:\d{2}:\d{2}.\d{3}Z$
            type: string
        - in: query
          name: cursor
          required: false
          schema:
            description: >-
              A cursor for pagination purposes. To get the next page of entries,
              you need to make a new request and fulfill this field with the
              cursor received in the preceding request. This process should be
              repeated until all entries have been retrieved.
            minLength: 1
            title: CursorParam
            type: string
        - in: query
          name: limit
          required: false
          schema:
            description: >-
              A limit for the number of items returned in the response. The
              value can be set between 1 and 250.
            example: 100
            maximum: 250
            minimum: 1
            type: integer
        - description: >-
            Whether you want to get either unread chats only, or read chats
            only.
          in: query
          name: unread
          required: false
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  cursor:
                    anyOf:
                      - {}
                      - {}
                  items:
                    items:
                      properties:
                        account_id:
                          description: A unique identifier.
                          minLength: 1
                          title: UniqueId
                          type: string
                        account_type:
                          anyOf:
                            - enum:
                                - WHATSAPP
                              type: string
                            - enum:
                                - LINKEDIN
                              type: string
                            - enum:
                                - SLACK
                              type: string
                            - enum:
                                - TWITTER
                              type: string
                            - enum:
                                - MESSENGER
                              type: string
                            - enum:
                                - INSTAGRAM
                              type: string
                            - enum:
                                - TELEGRAM
                              type: string
                        archived:
                          anyOf:
                            - enum:
                                - 0
                              type: number
                            - enum:
                                - 1
                              type: number
                        attendee_provider_id:
                          type: string
                        content_type:
                          anyOf:
                            - enum:
                                - inmail
                              type: string
                            - enum:
                                - sponsored
                              type: string
                            - enum:
                                - linkedin_offer
                              type: string
                        disabledFeatures:
                          items:
                            anyOf:
                              - enum:
                                  - reactions
                                type: string
                              - enum:
                                  - reply
                                type: string
                          type: array
                        folder:
                          items:
                            anyOf:
                              - enum:
                                  - INBOX
                                type: string
                              - enum:
                                  - INBOX_LINKEDIN_CLASSIC
                                type: string
                              - enum:
                                  - INBOX_LINKEDIN_RECRUITER
                                type: string
                              - enum:
                                  - INBOX_LINKEDIN_SALES_NAVIGATOR
                                type: string
                              - enum:
                                  - INBOX_LINKEDIN_ORGANIZATION
                                type: string
                              - enum:
                                  - INBOX_INSTAGRAM_GENERAL
                                type: string
                              - enum:
                                  - PENDING
                                type: string
                              - enum:
                                  - OTHER
                                type: string
                              - enum:
                                  - SPAM
                                type: string
                              - enum:
                                  - ARCHIVED
                                type: string
                              - enum:
                                  - HIDDEN
                                type: string
                              - enum:
                                  - UNKNOWN
                                type: string
                              - type: string
                          type: array
                        id:
                          description: A unique identifier.
                          minLength: 1
                          title: UniqueId
                          type: string
                        mailbox_id:
                          description: Linkedin specific ID for organization mailboxes.
                          type: string
                        muted_until:
                          anyOf:
                            - enum:
                                - -1
                              type: number
                            - type: string
                            - {}
                        name:
                          anyOf:
                            - type: string
                            - {}
                        object:
                          enum:
                            - Chat
                          type: string
                        organization_id:
                          description: Linkedin specific ID for organization mailboxes.
                          type: string
                        pinned:
                          anyOf:
                            - enum:
                                - 0
                              type: number
                            - enum:
                                - 1
                              type: number
                        provider_id:
                          type: string
                        read_only:
                          anyOf:
                            - enum:
                                - 0
                              type: number
                            - enum:
                                - 1
                              type: number
                            - enum:
                                - 2
                              type: number
                        subject:
                          type: string
                        timestamp:
                          anyOf:
                            - type: string
                            - {}
                        type:
                          anyOf:
                            - enum:
                                - 0
                              type: number
                            - enum:
                                - 1
                              type: number
                            - enum:
                                - 2
                              type: number
                        unread_count:
                          type: number
                      required:
                        - object
                        - id
                        - account_id
                        - account_type
                        - provider_id
                        - name
                        - type
                        - timestamp
                        - unread_count
                        - archived
                        - muted_until
                        - read_only
                        - pinned
                      type: object
                    type: array
                  object:
                    enum:
                      - ChatList
                    type: string
                required:
                  - object
                  - items
                  - cursor
                type: object
          description: OK. Request succeeded.
        default:
          content:
            application/json:
              schema: {}
          description: >-
            Error response; upstream passthrough responses may use provider
            formats
components:
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http

````

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