---
canonical_url: "https://docs.composio.dev/toolkits/kapso"
markdown_url: "https://docs.composio.dev/toolkits/kapso.md"
product: "platform"
version: null
last_updated: null
---

# Kapso

Kapso provides APIs for WhatsApp messaging, customer and contact management, broadcasts, workflows, and serverless functions.

- **Category:** communication
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 12
- **Triggers:** 0
- **Slug:** `KAPSO`
- **Version:** 20261013_00

## Tools

### Get Contact

**Slug:** `KAPSO_GET_CONTACT`

Retrieve one Kapso WhatsApp contact by UUID, phone number, business-scoped user ID, or parent business-scoped user ID. A parent business-scoped user ID can match multiple contacts; Kapso returns the most recently created one.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `identifier` | string | Yes | Contact UUID, WhatsApp phone number, business-scoped user ID, or parent business-scoped user ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Function

**Slug:** `KAPSO_GET_FUNCTION`

Retrieve one Kapso serverless function's code, runtime configuration, deployment status, and computed URLs without invoking or changing it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `function_id` | string | Yes | Function UUID returned by KAPSO_LIST_FUNCTIONS. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Phone Number

**Slug:** `KAPSO_GET_PHONE_NUMBER`

Retrieve one Kapso WhatsApp phone-number configuration by its Meta phone number ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `phone_number_id` | string | Yes | Meta phone number ID returned by KAPSO_LIST_PHONE_NUMBERS. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Phone Number Health

**Slug:** `KAPSO_GET_PHONE_NUMBER_HEALTH`

Run Kapso's live checks for one WhatsApp phone-number configuration and return its body-level health status and individual check results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `phone_number_id` | string | Yes | Meta phone number ID returned by KAPSO_LIST_PHONE_NUMBERS. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Workflow

**Slug:** `KAPSO_GET_WORKFLOW`

Retrieve one workflow's metadata, full graph definition, or available variables without executing or changing it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `view` | string ("metadata" | "definition" | "variables") | No | Choose metadata and execution stats, the complete nodes and edges graph, or fixed and discovered variables. |
| `workflow_id` | string | Yes | Workflow UUID returned by KAPSO_LIST_WORKFLOWS. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Conversations

**Slug:** `KAPSO_LIST_CONVERSATIONS`

List one page of WhatsApp conversations by recent activity, with filters for phone number, status, assignment, and activity time range.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum conversations to return on this page (1-100). |
| `status` | string ("active" | "ended") | No | Filter by active or ended conversation status. |
| `unassigned` | boolean | No | Set true to return only unassigned conversations; cannot be combined with assigned_user_id. |
| `next_cursor` | string | No | Continuation cursor returned by a previous call; omit for the first page and pass it back unchanged. |
| `phone_number_id` | string | No | Filter by Meta phone number ID. |
| `assigned_user_id` | string | No | Filter by active assignee project-user UUID. |
| `last_active_after` | string | No | Return conversations active after this ISO 8601 timestamp. |
| `last_active_before` | string | No | Return conversations active before this ISO 8601 timestamp. |
| `contact_phone_number` | string | No | Filter by a partial contact phone number. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Customers

**Slug:** `KAPSO_LIST_CUSTOMERS`

List Kapso project customers and filter them by name, external customer ID, or creation time. Returns one page and a continuation cursor.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per_page` | integer | No | Maximum customers to return on this page (minimum 1). |
| `next_cursor` | string | No | Continuation cursor returned by a previous call; omit for the first page. |
| `created_after` | string | No | Return customers created at or after this ISO 8601 timestamp. |
| `name_contains` | string | No | Filter by a customer-name substring. |
| `created_before` | string | No | Return customers created at or before this ISO 8601 timestamp. |
| `external_customer_id` | string | No | Filter by the caller-defined external customer ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Functions

**Slug:** `KAPSO_LIST_FUNCTIONS`

List serverless functions configured in the Kapso project, including runtime and deployment state, without returning function source code or invoking any function.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Messages

**Slug:** `KAPSO_LIST_MESSAGES`

List one page of WhatsApp message history project-wide through Kapso Platform or for one phone number through the Meta-compatible proxy. This tool only reads history and never sends messages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum messages to return on this page (1-100). |
| `status` | string ("pending" | "sent" | "delivered" | "read" | "failed") | No | Filter by message delivery status. |
| `direction` | string ("inbound" | "outbound") | No | Filter by inbound or outbound direction. |
| `api_surface` | string ("platform" | "meta_proxy") | No | Use platform for project-wide history or meta_proxy for one phone number's Meta-compatible history. |
| `next_cursor` | string | No | Continuation cursor returned by a previous call. Omit for the first page and pass it back unchanged; its original surface and filters are restored automatically. |
| `conversation_id` | string | No | Filter messages by conversation ID. |
| `phone_number_id` | string | No | Filter Platform results by Meta phone number ID. Required for api_surface='meta_proxy', where it identifies the path resource. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Phone Numbers

**Slug:** `KAPSO_LIST_PHONE_NUMBERS`

List WhatsApp phone-number configurations in the Kapso project, with filters for account, customer, messaging state, and display name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per_page` | integer | No | Maximum phone-number configurations to return on this page (minimum 1). |
| `customer_id` | string | No | Filter by Kapso customer UUID. |
| `next_cursor` | string | No | Continuation cursor returned by a previous call; omit for the first page. |
| `name_contains` | string | No | Filter by a case-insensitive display-name substring. |
| `phone_number_id` | string | No | Return only the configuration with this Meta phone number ID. |
| `messaging_enabled` | boolean | No | Filter by whether messaging is enabled. |
| `business_account_id` | string | No | Filter by WhatsApp Business Account ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Workflows

**Slug:** `KAPSO_LIST_WORKFLOWS`

List project workflows and filter them by lifecycle status, name, or creation time. This read-only action does not execute a workflow.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `status` | string ("draft" | "active" | "archived") | No | Filter by workflow lifecycle status. |
| `created_after` | string | No | Return workflows created at or after this ISO 8601 timestamp. |
| `name_contains` | string | No | Filter by a case-insensitive workflow-name substring. |
| `created_before` | string | No | Return workflows created at or before this ISO 8601 timestamp. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Contact

**Slug:** `KAPSO_UPDATE_CONTACT`

Update at least one profile, customer association, or metadata field on a Kapso WhatsApp contact. A parent business-scoped user ID can match multiple contacts; Kapso updates the most recently created one.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `wa_id` | string | No | Replacement WhatsApp phone-number identity in E.164 format. |
| `metadata` | object | No | Replacement custom key-value metadata. Supply an empty object to clear it. |
| `identifier` | string | Yes | Contact UUID, WhatsApp phone number, business-scoped user ID, or parent business-scoped user ID. |
| `customer_id` | string | No | Replacement Kapso customer UUID to associate with the contact. |
| `display_name` | string | No | Replacement application-defined display name. |
| `profile_name` | string | No | Replacement name shown on the contact's WhatsApp profile. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
