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

# timelinesai

> TimelinesAI WhatsApp

**Server path:** `/timelinesai` | **Type:** Application | **PCID required:** Yes

## Tools

| Tool                                                                                | Description                                                                                                                    |
| ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| [`timelinesai_add_chat_labels`](#timelinesai_add_chat_labels)                       | Adds labels for the chat.                                                                                                      |
| [`timelinesai_add_chat_note`](#timelinesai_add_chat_note)                           | Add a note to existing chat                                                                                                    |
| [`timelinesai_create_webhook`](#timelinesai_create_webhook)                         | Create webhook                                                                                                                 |
| [`timelinesai_delete_file`](#timelinesai_delete_file)                               | Delete the specified uploaded file.                                                                                            |
| [`timelinesai_delete_webhook`](#timelinesai_delete_webhook)                         | Delete webhook                                                                                                                 |
| [`timelinesai_get_chat`](#timelinesai_get_chat)                                     | Get details of a chat                                                                                                          |
| [`timelinesai_get_file`](#timelinesai_get_file)                                     | Get details and temporary download URL for a specified uploaded file.                                                          |
| [`timelinesai_get_message`](#timelinesai_get_message)                               | Get the details of a message specified by the message's UID.                                                                   |
| [`timelinesai_get_message_reactions`](#timelinesai_get_message_reactions)           | Get the current reactions map for a message.                                                                                   |
| [`timelinesai_get_message_status_history`](#timelinesai_get_message_status_history) | Get the sending history of a message, specified by the message's UID.                                                          |
| [`timelinesai_get_webhook`](#timelinesai_get_webhook)                               | Get webhook                                                                                                                    |
| [`timelinesai_get_workspace`](#timelinesai_get_workspace)                           | Workspace info and all current quotas and utilization stats.                                                                   |
| [`timelinesai_invite_teammate`](#timelinesai_invite_teammate)                       | Invite new teammate to the workspace.                                                                                          |
| [`timelinesai_list_chat_labels`](#timelinesai_list_chat_labels)                     | List labels for the specified chat.                                                                                            |
| [`timelinesai_list_chat_messages`](#timelinesai_list_chat_messages)                 | Get filtered chat history (messages only) of the chat                                                                          |
| [`timelinesai_list_chats`](#timelinesai_list_chats)                                 | Get full or filtered list of all chats in the Workspace.                                                                       |
| [`timelinesai_list_files`](#timelinesai_list_files)                                 | List files uploaded in your TimelinesAI workspace                                                                              |
| [`timelinesai_list_teammates`](#timelinesai_list_teammates)                         | List all teammates in the workspace.                                                                                           |
| [`timelinesai_list_webhooks`](#timelinesai_list_webhooks)                           | List webhooks                                                                                                                  |
| [`timelinesai_list_whatsapp_accounts`](#timelinesai_list_whatsapp_accounts)         | List WhatsApp accounts connected in your TimelinesAI workspace.                                                                |
| [`timelinesai_replace_chat_labels`](#timelinesai_replace_chat_labels)               | Replaces labels for the chat.                                                                                                  |
| [`timelinesai_revoke_invitation`](#timelinesai_revoke_invitation)                   | Revoke a pending invitation.                                                                                                   |
| [`timelinesai_send_chat_message`](#timelinesai_send_chat_message)                   | Send message in existing chat                                                                                                  |
| [`timelinesai_send_message_to_chat_name`](#timelinesai_send_message_to_chat_name)   | Send message in existing chat, specified by chat name                                                                          |
| [`timelinesai_send_message_to_jid`](#timelinesai_send_message_to_jid)               | Send message to jid                                                                                                            |
| [`timelinesai_send_message_to_phone`](#timelinesai_send_message_to_phone)           | Send message to phone number                                                                                                   |
| [`timelinesai_send_voice_message`](#timelinesai_send_voice_message)                 | Send voice note into existing WhatsApp chat (or group) specified by chat\_id. Oga / mp3 audio files can be used as attachment. |
| [`timelinesai_update_chat`](#timelinesai_update_chat)                               | Update chat                                                                                                                    |
| [`timelinesai_update_message_reactions`](#timelinesai_update_message_reactions)     | Update reactions for a message.                                                                                                |
| [`timelinesai_update_webhook`](#timelinesai_update_webhook)                         | Update webhook                                                                                                                 |
| [`timelinesai_upload_file`](#timelinesai_upload_file)                               | Upload a file in x-form encoded HTTP request                                                                                   |
| [`timelinesai_upload_file_from_url`](#timelinesai_upload_file_from_url)             | Upload a file using a publicly accessible URL.                                                                                 |

***

## timelinesai\_add\_chat\_labels

Adds labels for the chat.

**Parameters:**

| Parameter | Type      | Required | Default | Description      |
| --------- | --------- | -------- | ------- | ---------------- |
| `chat_id` | string    | Yes      | —       | The chat id      |
| `labels`  | string\[] | Yes      | —       | The labels value |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      },
      "labels": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "The labels value"
      }
    },
    "required": [
      "PCID",
      "chat_id",
      "labels"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_add\_chat\_note

Add a note to existing chat

**Parameters:**

| Parameter    | Type    | Required | Default | Description                                                                   |
| ------------ | ------- | -------- | ------- | ----------------------------------------------------------------------------- |
| `chat_id`    | string  | Yes      | —       | The chat id                                                                   |
| `is_private` | boolean | No       | —       | specify whether to set the note as public or private                          |
| `text`       | string  | Yes      | —       | plain text (will be displayed "as is", no additional processing will be made) |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      },
      "is_private": {
        "type": "boolean",
        "description": "specify whether to set the note as public or private"
      },
      "text": {
        "type": "string",
        "description": "plain text (will be displayed \"as is\", no additional processing will be made)"
      }
    },
    "required": [
      "PCID",
      "chat_id",
      "text"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_create\_webhook

Create webhook

**Parameters:**

| Parameter    | Type    | Required | Default | Description                                                                                                                                                                                                                                                                                                           |
| ------------ | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `enabled`    | boolean | No       | —       | Flag indicating whether the subscription is active. When **false**, deliveries are paused but the definition is kept.                                                                                                                                                                                                 |
| `event_type` | string  | Yes      | —       | Event topic that will trigger the webhook. For the current list of supported values see TimelinesAI *Event Types* documentation at [https://app.timelines.ai/integrations/webhooks\_v2/swagger](https://app.timelines.ai/integrations/webhooks_v2/swagger) (for example: `message:sent:new`, `message:received:new`). |
| `url`        | string  | Yes      | —       | Destination HTTPS endpoint that TimelinesAI will call. Must be publicly accessible and respond with `2xx` status within 5 seconds.                                                                                                                                                                                    |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "enabled": {
        "type": "boolean",
        "description": "Flag indicating whether the subscription is active. When **false**, deliveries are paused but the definition is kept."
      },
      "event_type": {
        "type": "string",
        "description": "Event topic that will trigger the webhook. For the current list of supported values see TimelinesAI *Event Types* documentation at https://app.timelines.ai/integrations/webhooks_v2/swagger (for example: `message:sent:new`, `message:received:new`)."
      },
      "url": {
        "type": "string",
        "description": "Destination HTTPS endpoint that TimelinesAI will call. Must be publicly accessible and respond with `2xx` status within 5 seconds."
      }
    },
    "required": [
      "PCID",
      "event_type",
      "url"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_delete\_file

Delete the specified uploaded file.

**Parameters:**

| Parameter  | Type   | Required | Default | Description  |
| ---------- | ------ | -------- | ------- | ------------ |
| `file_uid` | string | Yes      | —       | The file uid |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "file_uid": {
        "type": "string",
        "description": "The file uid"
      }
    },
    "required": [
      "PCID",
      "file_uid"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_delete\_webhook

Delete webhook

**Parameters:**

| Parameter    | Type   | Required | Default | Description    |
| ------------ | ------ | -------- | ------- | -------------- |
| `webhook_id` | string | Yes      | —       | The webhook id |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "webhook_id": {
        "type": "string",
        "description": "The webhook id"
      }
    },
    "required": [
      "PCID",
      "webhook_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_get\_chat

Get details of a chat

**Parameters:**

| Parameter | Type   | Required | Default | Description |
| --------- | ------ | -------- | ------- | ----------- |
| `chat_id` | string | Yes      | —       | The chat id |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      }
    },
    "required": [
      "PCID",
      "chat_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_get\_file

Get details and temporary download URL for a specified uploaded file.

**Parameters:**

| Parameter  | Type   | Required | Default | Description  |
| ---------- | ------ | -------- | ------- | ------------ |
| `file_uid` | string | Yes      | —       | The file uid |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "file_uid": {
        "type": "string",
        "description": "The file uid"
      }
    },
    "required": [
      "PCID",
      "file_uid"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_get\_message

Get the details of a message specified by the message's UID.

**Parameters:**

| Parameter     | Type   | Required | Default | Description     |
| ------------- | ------ | -------- | ------- | --------------- |
| `message_uid` | string | Yes      | —       | The message uid |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "message_uid": {
        "type": "string",
        "description": "The message uid"
      }
    },
    "required": [
      "PCID",
      "message_uid"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_get\_message\_reactions

Get the current reactions map for a message.

**Parameters:**

| Parameter     | Type   | Required | Default | Description     |
| ------------- | ------ | -------- | ------- | --------------- |
| `message_uid` | string | Yes      | —       | The message uid |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "message_uid": {
        "type": "string",
        "description": "The message uid"
      }
    },
    "required": [
      "PCID",
      "message_uid"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_get\_message\_status\_history

Get the sending history of a message, specified by the message's UID.

**Parameters:**

| Parameter     | Type   | Required | Default | Description     |
| ------------- | ------ | -------- | ------- | --------------- |
| `message_uid` | string | Yes      | —       | The message uid |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "message_uid": {
        "type": "string",
        "description": "The message uid"
      }
    },
    "required": [
      "PCID",
      "message_uid"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_get\_webhook

Get webhook

**Parameters:**

| Parameter    | Type   | Required | Default | Description    |
| ------------ | ------ | -------- | ------- | -------------- |
| `webhook_id` | string | Yes      | —       | The webhook id |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "webhook_id": {
        "type": "string",
        "description": "The webhook id"
      }
    },
    "required": [
      "PCID",
      "webhook_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_get\_workspace

Workspace info and all current quotas and utilization stats.

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_invite\_teammate

Invite new teammate to the workspace.

**Parameters:**

| Parameter    | Type   | Required | Default | Description                                                                                       |
| ------------ | ------ | -------- | ------- | ------------------------------------------------------------------------------------------------- |
| `email`      | string | Yes      | —       | Email address of the user to invite                                                               |
| `first_name` | string | No       | —       | First name for the invited user                                                                   |
| `last_name`  | string | No       | —       | Last name for the invited user                                                                    |
| `role`       | string | No       | —       | Role to assign. One of: collaborator, teammate, admin, agent, team\_supervisor. Case-insensitive. |
| `team_title` | string | No       | —       | Title of the team to assign the invited user to, default "Default team"                           |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "email": {
        "type": "string",
        "description": "Email address of the user to invite"
      },
      "first_name": {
        "type": "string",
        "description": "First name for the invited user"
      },
      "last_name": {
        "type": "string",
        "description": "Last name for the invited user"
      },
      "role": {
        "type": "string",
        "description": "Role to assign. One of: collaborator, teammate, admin, agent, team_supervisor. Case-insensitive.",
        "enum": [
          "admin",
          "team_supervisor",
          "teammate",
          "agent",
          "collaborator"
        ]
      },
      "team_title": {
        "type": "string",
        "description": "Title of the team to assign the invited user to, default \"Default team\""
      }
    },
    "required": [
      "PCID",
      "email"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_list\_chat\_labels

List labels for the specified chat.

**Parameters:**

| Parameter | Type   | Required | Default | Description |
| --------- | ------ | -------- | ------- | ----------- |
| `chat_id` | string | Yes      | —       | The chat id |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      }
    },
    "required": [
      "PCID",
      "chat_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_list\_chat\_messages

Get filtered chat history (messages only) of the chat

**Parameters:**

| Parameter        | Type    | Required | Default | Description                                                                                                                                    |
| ---------------- | ------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`        | string  | Yes      | —       | The chat id                                                                                                                                    |
| `from_me`        | boolean | No       | —       | specify true to filter messages sent from my WhatsApp account (from any session), false to filter messages received from other WhatsApp users. |
| `after`          | string  | No       | —       | can specify date or datetime in ISO format to filter out messages created AFTER the specified date (inclusive)                                 |
| `before`         | string  | No       | —       | can specify date or datetime in ISO format to filter out messages created BEFORE the specified date (inclusive)                                |
| `after_message`  | string  | No       | —       | can specify message uid to filter out messages created after the specified message (excluding the specified message itself)                    |
| `before_message` | string  | No       | —       | can specify message uid to filter out messages created before the specified message (excluding the specified message itself)                   |
| `sorting_order`  | string  | No       | —       | order messages by timestamp, according to possible values: asc, desc                                                                           |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      },
      "from_me": {
        "type": "boolean",
        "description": "specify true to filter messages sent from my WhatsApp account (from any session), false to filter messages received from other WhatsApp users."
      },
      "after": {
        "type": "string",
        "description": "can specify date or datetime in ISO format to filter out messages created AFTER the specified date (inclusive)"
      },
      "before": {
        "type": "string",
        "description": "can specify date or datetime in ISO format to filter out messages created BEFORE the specified date (inclusive)"
      },
      "after_message": {
        "type": "string",
        "description": "can specify message uid to filter out messages created after the specified message (excluding the specified message itself)"
      },
      "before_message": {
        "type": "string",
        "description": "can specify message uid to filter out messages created before the specified message (excluding the specified message itself)"
      },
      "sorting_order": {
        "type": "string",
        "description": "order messages by timestamp, according to possible values: asc, desc",
        "enum": [
          "asc",
          "desc"
        ]
      }
    },
    "required": [
      "PCID",
      "chat_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_list\_chats

Get full or filtered list of all chats in the Workspace.

**Parameters:**

| Parameter                      | Type    | Required | Default | Description                                                                                                                                                                                                                                                                                                                                    |
| ------------------------------ | ------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `label`                        | string  | No       | —       | filters chats having at least one of specified labels (comma-separated)                                                                                                                                                                                                                                                                        |
| `whatsapp_account_id`          | string  | No       | —       | filters chats belonging to one of the specified WhatsApp accounts (in wid format, comma-separated)                                                                                                                                                                                                                                             |
| `group`                        | boolean | No       | —       | filters chats that are either group chats (true) or direct chats (false)                                                                                                                                                                                                                                                                       |
| `responsible`                  | string  | No       | —       | filters chats assigned to specific users (denoted by email address, comma-separated)                                                                                                                                                                                                                                                           |
| `name`                         | string  | No       | —       | filter chats that contain any of specified strings (case-insensitive, comma-separated). Note: a string containing a whitespace will be matched as exact substring without being split to words.                                                                                                                                                |
| `phone`                        | string  | No       | —       | Filter direct (non-group) chats by a single phone number. Phone is sanitized in the same way as for sending messages. If sanitized value starts with '+', the match is exact. Otherwise, leading zeroes are removed and the number is matched as a substring of the stored phone. Group chats are always excluded when this parameter is used. |
| `read`                         | boolean | No       | —       | filter chats that are either read (true) or unread (false)                                                                                                                                                                                                                                                                                     |
| `closed`                       | boolean | No       | —       | filter chats that are either closed (true) or open (false)                                                                                                                                                                                                                                                                                     |
| `chatgpt_autoresponse_enabled` | boolean | No       | —       | filter chats where chatgpt auto-response is enabled (true) or disabled (false)                                                                                                                                                                                                                                                                 |
| `page`                         | integer | No       | —       | specify the page of results (each page contains up to 50 items), starting with 1. Check "has more page" response value to see if more pages are available.                                                                                                                                                                                     |
| `created_after`                | string  | No       | —       | filter chats that were created after this timestamp, can be specified with created\_before                                                                                                                                                                                                                                                     |
| `created_before`               | string  | No       | —       | filter chats that were created before this timestamp, can be specified with created\_after                                                                                                                                                                                                                                                     |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "label": {
        "type": "string",
        "description": "filters chats having at least one of specified labels (comma-separated)"
      },
      "whatsapp_account_id": {
        "type": "string",
        "description": "filters chats belonging to one of the specified WhatsApp accounts (in wid format, comma-separated)"
      },
      "group": {
        "type": "boolean",
        "description": "filters chats that are either group chats (true) or direct chats (false)"
      },
      "responsible": {
        "type": "string",
        "description": "filters chats assigned to specific users (denoted by email address, comma-separated)"
      },
      "name": {
        "type": "string",
        "description": "filter chats that contain any of specified strings (case-insensitive, comma-separated). Note: a string containing a whitespace will be matched as exact substring without being split to words."
      },
      "phone": {
        "type": "string",
        "description": "Filter direct (non-group) chats by a single phone number. Phone is sanitized in the same way as for sending messages. If sanitized value starts with '+', the match is exact. Otherwise, leading zeroes are removed and the number is matched as a substring of the stored phone. Group chats are always excluded when this parameter is used."
      },
      "read": {
        "type": "boolean",
        "description": "filter chats that are either read (true) or unread (false)"
      },
      "closed": {
        "type": "boolean",
        "description": "filter chats that are either closed (true) or open (false)"
      },
      "chatgpt_autoresponse_enabled": {
        "type": "boolean",
        "description": "filter chats where chatgpt auto-response is enabled (true) or disabled (false)"
      },
      "page": {
        "type": "integer",
        "description": "specify the page of results (each page contains up to 50 items), starting with 1. Check \\\"has more page\" response value to see if more pages are available."
      },
      "created_after": {
        "type": "string",
        "description": "filter chats that were created after this timestamp, can be specified with created_before"
      },
      "created_before": {
        "type": "string",
        "description": "filter chats that were created before this timestamp, can be specified with created_after"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_list\_files

List files uploaded in your TimelinesAI workspace

**Parameters:**

| Parameter  | Type   | Required | Default | Description                                                                                                                         |
| ---------- | ------ | -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `filename` | string | No       | —       | a filename or any part of it (for example, extension), case insensitive . Leave empty to get unfiltered list of all uploaded files. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "filename": {
        "type": "string",
        "description": "a filename or any part of it (for example, extension), case insensitive . Leave empty to get unfiltered list of all uploaded files."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_list\_teammates

List all teammates in the workspace.

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_list\_webhooks

List webhooks

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_list\_whatsapp\_accounts

List WhatsApp accounts connected in your TimelinesAI workspace.

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_replace\_chat\_labels

Replaces labels for the chat.

**Parameters:**

| Parameter | Type      | Required | Default | Description      |
| --------- | --------- | -------- | ------- | ---------------- |
| `chat_id` | string    | Yes      | —       | The chat id      |
| `labels`  | string\[] | Yes      | —       | The labels value |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      },
      "labels": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "The labels value"
      }
    },
    "required": [
      "PCID",
      "chat_id",
      "labels"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_revoke\_invitation

Revoke a pending invitation.

**Parameters:**

| Parameter | Type   | Required | Default | Description |
| --------- | ------ | -------- | ------- | ----------- |
| `user_id` | string | Yes      | —       | The user id |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "user_id": {
        "type": "string",
        "description": "The user id"
      }
    },
    "required": [
      "PCID",
      "user_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_send\_chat\_message

Send message in existing chat

**Parameters:**

| Parameter                | Type    | Required | Default | Description                                                                                                                 |                                                                                                                                                   |
| ------------------------ | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`                | string  | Yes      | —       | The chat id                                                                                                                 |                                                                                                                                                   |
| `attachment_template_id` | integer | No       | —       | a template ID of the attachment to be sent. The template must be created in the workspace before sending a message with it. |                                                                                                                                                   |
| `chat_name`              | string  | No       | —       | an exact name of the chat (or group) as appears in TimelinesAI)                                                             |                                                                                                                                                   |
| `file_uid`               | string  | No       | —       | attachment UID                                                                                                              |                                                                                                                                                   |
| `label`                  | string  | No       | —       | assign label to the chat, in which the message is sent (create new label, if not exists)                                    |                                                                                                                                                   |
| `reply_to`               | string  | null     | No      | —                                                                                                                           | UID of the message this message replies to. Must reference a message in the same workspace and WhatsApp account. Null or empty string is ignored. |
| `text`                   | string  | No       | —       | plain text message                                                                                                          |                                                                                                                                                   |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      },
      "attachment_template_id": {
        "type": "integer",
        "description": "a template ID of the attachment to be sent. The template must be created in the workspace before sending a message with it."
      },
      "chat_name": {
        "type": "string",
        "description": "an exact name of the chat (or group) as appears in TimelinesAI)"
      },
      "file_uid": {
        "type": "string",
        "description": "attachment UID"
      },
      "label": {
        "type": "string",
        "description": "assign label to the chat, in which the message is sent (create new label, if not exists)"
      },
      "reply_to": {
        "type": [
          "string",
          "null"
        ],
        "description": "UID of the message this message replies to. Must reference a message in the same workspace and WhatsApp account. Null or empty string is ignored."
      },
      "text": {
        "type": "string",
        "description": "plain text message"
      }
    },
    "required": [
      "PCID",
      "chat_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_send\_message\_to\_chat\_name

Send message in existing chat, specified by chat name

**Parameters:**

| Parameter                | Type    | Required | Default | Description                                                                                                                 |                                                                                                                                                   |
| ------------------------ | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `attachment_template_id` | integer | No       | —       | a template ID of the attachment to be sent. The template must be created in the workspace before sending a message with it. |                                                                                                                                                   |
| `chat_name`              | string  | Yes      | —       | an exact name of the chat (or group) as appears in TimelinesAI)                                                             |                                                                                                                                                   |
| `file_uid`               | string  | No       | —       | attachment UID                                                                                                              |                                                                                                                                                   |
| `label`                  | string  | No       | —       | assign label to the chat, in which the message is sent (create new label, if not exists)                                    |                                                                                                                                                   |
| `reply_to`               | string  | null     | No      | —                                                                                                                           | UID of the message this message replies to. Must reference a message in the same workspace and WhatsApp account. Null or empty string is ignored. |
| `text`                   | string  | No       | —       | plain text message                                                                                                          |                                                                                                                                                   |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "attachment_template_id": {
        "type": "integer",
        "description": "a template ID of the attachment to be sent. The template must be created in the workspace before sending a message with it."
      },
      "chat_name": {
        "type": "string",
        "description": "an exact name of the chat (or group) as appears in TimelinesAI)"
      },
      "file_uid": {
        "type": "string",
        "description": "attachment UID"
      },
      "label": {
        "type": "string",
        "description": "assign label to the chat, in which the message is sent (create new label, if not exists)"
      },
      "reply_to": {
        "type": [
          "string",
          "null"
        ],
        "description": "UID of the message this message replies to. Must reference a message in the same workspace and WhatsApp account. Null or empty string is ignored."
      },
      "text": {
        "type": "string",
        "description": "plain text message"
      }
    },
    "required": [
      "PCID",
      "chat_name"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_send\_message\_to\_jid

Send message to jid

**Parameters:**

| Parameter                | Type    | Required | Default | Description                                                                                                                                                                                              |                                                                                                                                                   |
| ------------------------ | ------- | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `attachment_template_id` | integer | No       | —       | a template ID of the attachment to be sent. The template must be created in the workspace before sending a message with it.                                                                              |                                                                                                                                                   |
| `chat_name`              | string  | No       | —       | an exact name of the chat (or group) as appears in TimelinesAI)                                                                                                                                          |                                                                                                                                                   |
| `file_uid`               | string  | No       | —       | attachment UID                                                                                                                                                                                           |                                                                                                                                                   |
| `jid`                    | string  | Yes      | —       | jid, WhatsApp ID of a contact or a group, a string structured as '[x@s.whatsapp.net](mailto:x@s.whatsapp.net)', where 'x' is the phone number of the contact.                                            |                                                                                                                                                   |
| `label`                  | string  | No       | —       | assign label to the chat, in which the message is sent (create new label, if not exists)                                                                                                                 |                                                                                                                                                   |
| `reply_to`               | string  | null     | No      | —                                                                                                                                                                                                        | UID of the message this message replies to. Must reference a message in the same workspace and WhatsApp account. Null or empty string is ignored. |
| `text`                   | string  | No       | —       | plain text message                                                                                                                                                                                       |                                                                                                                                                   |
| `whatsapp_account_phone` | string  | No       | —       | the WhatsApp account (as a phone number, in international format) to which the chat specified by JID belongs to. If omitted, the most recently connected WhatsApp account in the workspace will be used. |                                                                                                                                                   |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "attachment_template_id": {
        "type": "integer",
        "description": "a template ID of the attachment to be sent. The template must be created in the workspace before sending a message with it."
      },
      "chat_name": {
        "type": "string",
        "description": "an exact name of the chat (or group) as appears in TimelinesAI)"
      },
      "file_uid": {
        "type": "string",
        "description": "attachment UID"
      },
      "jid": {
        "type": "string",
        "description": "jid, WhatsApp ID of a contact or a group, a string structured as 'x@s.whatsapp.net', where 'x' is the phone number of the contact."
      },
      "label": {
        "type": "string",
        "description": "assign label to the chat, in which the message is sent (create new label, if not exists)"
      },
      "reply_to": {
        "type": [
          "string",
          "null"
        ],
        "description": "UID of the message this message replies to. Must reference a message in the same workspace and WhatsApp account. Null or empty string is ignored."
      },
      "text": {
        "type": "string",
        "description": "plain text message"
      },
      "whatsapp_account_phone": {
        "type": "string",
        "description": "the WhatsApp account (as a phone number, in international format) to which the chat specified by JID belongs to. If omitted, the most recently connected WhatsApp account in the workspace will be used."
      }
    },
    "required": [
      "PCID",
      "jid"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_send\_message\_to\_phone

Send message to phone number

**Parameters:**

| Parameter                | Type    | Required | Default | Description                                                                                                                                                                                              |
| ------------------------ | ------- | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `attachment_template_id` | integer | No       | —       | a template ID of the attachment to be sent. The template must be created in the workspace before sending a message with it.                                                                              |
| `chat_name`              | string  | No       | —       | an exact name of the chat (or group) as appears in TimelinesAI)                                                                                                                                          |
| `file_uid`               | string  | No       | —       | attachment UID                                                                                                                                                                                           |
| `label`                  | string  | No       | —       | assign label to the chat, in which the message is sent (create new label, if not exists)                                                                                                                 |
| `phone`                  | string  | Yes      | —       | a phone number, formatted according to international phone number standard, i.e.: \[+]\[country code]\[area code]\[local phone number]                                                                   |
| `text`                   | string  | No       | —       | plain text message                                                                                                                                                                                       |
| `whatsapp_account_phone` | string  | No       | —       | the WhatsApp account (as a phone number, in international format) to which the chat specified by JID belongs to. If omitted, the most recently connected WhatsApp account in the workspace will be used. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "attachment_template_id": {
        "type": "integer",
        "description": "a template ID of the attachment to be sent. The template must be created in the workspace before sending a message with it."
      },
      "chat_name": {
        "type": "string",
        "description": "an exact name of the chat (or group) as appears in TimelinesAI)"
      },
      "file_uid": {
        "type": "string",
        "description": "attachment UID"
      },
      "label": {
        "type": "string",
        "description": "assign label to the chat, in which the message is sent (create new label, if not exists)"
      },
      "phone": {
        "type": "string",
        "description": "a phone number, formatted according to international phone number standard, i.e.: [+][country code][area code][local phone number]"
      },
      "text": {
        "type": "string",
        "description": "plain text message"
      },
      "whatsapp_account_phone": {
        "type": "string",
        "description": "the WhatsApp account (as a phone number, in international format) to which the chat specified by JID belongs to. If omitted, the most recently connected WhatsApp account in the workspace will be used."
      }
    },
    "required": [
      "PCID",
      "phone"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_send\_voice\_message

Send voice note into existing WhatsApp chat (or group) specified by chat\_id. Oga / mp3 audio files can be used as attachment.

**Parameters:**

| Parameter | Type   | Required | Default | Description                      |
| --------- | ------ | -------- | ------- | -------------------------------- |
| `chat_id` | string | Yes      | —       | The chat id                      |
| `file`    | string | Yes      | —       | A file content in binary format. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      },
      "file": {
        "type": "string",
        "description": "A file content in binary format."
      }
    },
    "required": [
      "PCID",
      "chat_id",
      "file"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_update\_chat

Update chat

**Parameters:**

| Parameter                      | Type    | Required | Default | Description                                                                                                                                               |
| ------------------------------ | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id`                      | string  | Yes      | —       | The chat id                                                                                                                                               |
| `chatgpt_autoresponse_enabled` | boolean | No       | —       | Is the ChatGPT autoresponse enabled (true) or disabled (false) for the chat                                                                               |
| `closed`                       | boolean | No       | —       | Is the chart closed (true) or open (false)                                                                                                                |
| `name`                         | string  | No       | —       | Chat's name (must be unique in workspace)                                                                                                                 |
| `read`                         | boolean | No       | —       | Is the chat read (true) or unread (false)                                                                                                                 |
| `responsible`                  | string  | No       | —       | Assign team member as responsible (specified by registration email in TimelinesAI) or unassign a chat from responsible by supplying an empty string (""). |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "chat_id": {
        "type": "string",
        "description": "The chat id"
      },
      "chatgpt_autoresponse_enabled": {
        "type": "boolean",
        "description": "Is the ChatGPT autoresponse enabled (true) or disabled (false) for the chat"
      },
      "closed": {
        "type": "boolean",
        "description": "Is the chart closed (true) or open (false)"
      },
      "name": {
        "type": "string",
        "description": "Chat's name (must be unique in workspace)"
      },
      "read": {
        "type": "boolean",
        "description": "Is the chat read (true) or unread (false)"
      },
      "responsible": {
        "type": "string",
        "description": "Assign team member as responsible (specified by registration email in TimelinesAI) or unassign a chat from responsible by supplying an empty string (\"\")."
      }
    },
    "required": [
      "PCID",
      "chat_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_update\_message\_reactions

Update reactions for a message.

**Parameters:**

| Parameter     | Type   | Required | Default | Description                                                                                                                                          |
| ------------- | ------ | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| `message_uid` | string | Yes      | —       | The message uid                                                                                                                                      |
| `reaction`    | string | Yes      | —       | Empty string: clear caller’s reaction. A single emoji character. A Unicode escape sequence representing a single emoji (for example "\uD83D\uDC4D"). |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "message_uid": {
        "type": "string",
        "description": "The message uid"
      },
      "reaction": {
        "type": "string",
        "description": "Empty string: clear caller’s reaction. A single emoji character. A Unicode escape sequence representing a single emoji (for example \"\\\\uD83D\\\\uDC4D\")."
      }
    },
    "required": [
      "PCID",
      "message_uid",
      "reaction"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_update\_webhook

Update webhook

**Parameters:**

| Parameter    | Type    | Required | Default | Description                                                      |
| ------------ | ------- | -------- | ------- | ---------------------------------------------------------------- |
| `webhook_id` | string  | Yes      | —       | The webhook id                                                   |
| `enabled`    | boolean | No       | —       | Set to **true** to resume deliveries or **false** to pause them. |
| `event_type` | string  | No       | —       | New event topic that will trigger the webhook.                   |
| `url`        | string  | No       | —       | New destination HTTPS endpoint.                                  |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "webhook_id": {
        "type": "string",
        "description": "The webhook id"
      },
      "enabled": {
        "type": "boolean",
        "description": "Set to **true** to resume deliveries or **false** to pause them."
      },
      "event_type": {
        "type": "string",
        "description": "New event topic that will trigger the webhook."
      },
      "url": {
        "type": "string",
        "description": "New destination HTTPS endpoint."
      }
    },
    "required": [
      "PCID",
      "webhook_id"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_upload\_file

Upload a file in x-form encoded HTTP request

**Parameters:**

| Parameter      | Type   | Required | Default | Description                      |
| -------------- | ------ | -------- | ------- | -------------------------------- |
| `content_type` | string | No       | —       | A mime-type of the file.         |
| `file`         | string | Yes      | —       | A file content in binary format. |
| `filename`     | string | No       | —       | A filename.                      |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "content_type": {
        "type": "string",
        "description": "A mime-type of the file."
      },
      "file": {
        "type": "string",
        "description": "A file content in binary format."
      },
      "filename": {
        "type": "string",
        "description": "A filename."
      }
    },
    "required": [
      "PCID",
      "file"
    ]
  }
  ```
</Expandable>

***

## timelinesai\_upload\_file\_from\_url

Upload a file using a publicly accessible URL.

**Parameters:**

| Parameter      | Type   | Required | Default | Description                                                                                                    |
| -------------- | ------ | -------- | ------- | -------------------------------------------------------------------------------------------------------------- |
| `content_type` | string | No       | —       | (optional) A mime-type of the file, to be used instead of the original filename specified by the download URL. |
| `download_url` | string | Yes      | —       | A publicly accessible URL for the file (excluding download URLs from services like Google Drive or OneDrive).  |
| `filename`     | string | No       | —       | (optional) A filename, to be used instead of the original filename specified by the download URL.              |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "content_type": {
        "type": "string",
        "description": "(optional) A mime-type of the file, to be used instead of the original filename specified by the download URL."
      },
      "download_url": {
        "type": "string",
        "description": "A publicly accessible URL for the file (excluding download URLs from services like Google Drive or OneDrive)."
      },
      "filename": {
        "type": "string",
        "description": "(optional) A filename, to be used instead of the original filename specified by the download URL."
      }
    },
    "required": [
      "PCID",
      "download_url"
    ]
  }
  ```
</Expandable>
