# Pipeline CRM

Pipeline CRM is a sales-focused customer relationship management tool designed to help teams track leads, manage deals, and streamline workflows.

- **Category:** crm
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 15
- **Triggers:** 0
- **Slug:** `PIPELINE_CRM`
- **Version:** 20260316_00

## Tools

### Create Pipeline CRM Company

**Slug:** `PIPELINE_CRM_CREATE_COMPANY`

Creates a new company record in Pipeline CRM with contact details, address, and social media information. Use this tool when you need to add a new company to the CRM system. The only required field is the company name. You can optionally include contact information (email, phone, fax), address details, social media links, and assign owners or tags. Set check_for_duplicates=true to prevent creating companies with duplicate names.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company` | object | Yes | Company details object. Required field: 'name' (str). Optional fields: 'email' (str), 'web' (str), 'description' (str), 'phone1/2/3/4' (str), 'phone1/2/3/4_desc' (str), 'fax' (str), 'address_1' (str), 'address_2' (str), 'city' (str), 'state' (str), 'postal_code' (int), 'country' (str), 'instant_message' (str), 'twitter' (str), 'facebook_url' (str), 'linked_in_url' (str), 'owner_id' (int), 'shared_user_ids' (list of int), 'tag_ids' (list of int), 'custom_fields' (dict). |
| `todo_template_id` | integer | No | ID of a todo template to automatically apply to this newly created company. Creates tasks based on the template. |
| `check_for_duplicates` | boolean | No | If true, returns a 422 error when a company with the same name already exists. If false (default), allows creating duplicate companies. |
| `todo_template_user_id` | integer | No | User ID to assign as the owner of tasks created from the todo template. Only used when todo_template_id is provided. |
| `deliver_assignment_email` | boolean | No | If true (default), sends an assignment notification email to the company owner. Set to false to create the company without sending notification emails. |

#### 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 |

### Create Deal

**Slug:** `PIPELINE_CRM_CREATE_DEAL`

Tool to create a new deal in Pipeline CRM. Use after gathering all details. Example: Create a deal named 'Big Partnership' worth 50000 USD in stage 2.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `deal` | object | Yes | Deal attributes payload |
| `todo_template_id` | integer | No | ID of a todo template to apply |
| `todo_template_user_id` | integer | No | Owner ID for tasks generated by todo template |
| `deliver_assignment_email` | boolean | No | Send assignment email if assigned to a user; set false to suppress |

#### 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 |

### Delete Company

**Slug:** `PIPELINE_CRM_DELETE_COMPANY`

Tool to delete a company by ID in Pipeline CRM. Use after confirming the company ID is correct. Example: "Delete company with ID 123".

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | Yes | Unique integer ID of the company to delete |

#### 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 |

### Delete Deal

**Slug:** `PIPELINE_CRM_DELETE_DEAL`

Tool to delete a deal by ID. Use when you need to remove a deal from Pipeline CRM.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | Yes | Unique identifier of the deal to delete |

#### 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 |

### Delete calendar task

**Slug:** `PIPELINE_CRM_DELETE_TASK`

Tool to delete a calendar task by ID. Use after confirming the task exists in Pipeline CRM.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | Yes | ID of the calendar entry (task) to delete |

#### 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 Company by ID

**Slug:** `PIPELINE_CRM_GET_COMPANY`

Retrieves comprehensive details for a specific company by ID from Pipeline CRM. Returns complete company information including contact details (multiple phones, email, social media), full address breakdown, owner details, financial metrics (pipeline/won deals totals), custom fields, tags, and next scheduled tasks. Use this when you need detailed information about a company after obtaining its ID from LIST_COMPANIES or CREATE_COMPANY actions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | Yes | ID of the company to retrieve |

#### 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 Deal by ID

**Slug:** `PIPELINE_CRM_GET_DEAL`

Tool to retrieve details for a specific deal by ID in Pipeline CRM. Use after confirming the deal ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | Yes | Unique identifier of the deal to retrieve |

#### 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 Deal Stage by ID

**Slug:** `PIPELINE_CRM_GET_STAGE`

Tool to retrieve details for a specific stage by ID in Pipeline CRM. Use after confirming the stage ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | Yes | Unique identifier of the stage to retrieve |

#### 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 calendar task by ID

**Slug:** `PIPELINE_CRM_GET_TASK`

Tool to retrieve details for a specific task by ID in Pipeline CRM. Use after confirming the task ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | Yes | ID of the calendar task to retrieve |

#### 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 Companies

**Slug:** `PIPELINE_CRM_LIST_COMPANIES`

List companies in Pipeline CRM with optional filtering, sorting, and pagination. Returns a paginated list of companies with comprehensive details including contact information, address, owner, custom fields, and tags. Supports search filtering and sorting by any field. Use this to retrieve multiple companies or search for specific companies by name or other attributes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve, must be ≥ 1 |
| `search` | string | No | Search term to filter companies by relevant fields |
| `sort_by` | string | No | Field name to sort by (e.g., "name") |
| `per_page` | integer | No | Number of companies per page, must be ≥ 1 |
| `sort_direction` | string ("asc" | "desc") | No | Sort order: asc for ascending or desc for descending |

#### 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 Leads

**Slug:** `PIPELINE_CRM_LIST_LEADS`

Tool to list leads in Pipeline CRM. Use when you need to fetch multiple leads with optional filtering and pagination. For large datasets, iterate through pages using `page` and `per_page` together; a single `per_page` value does not return all leads.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve, must be ≥ 1 |
| `per_page` | integer | No | Number of leads per page, must be ≥ 1 |
| `created_to_date` | string | No | Only include leads created on or before this date (YYYY-MM-DD) |
| `updated_to_date` | string | No | Only include leads updated on or before this date (YYYY-MM-DD) |
| `created_from_date` | string | No | Only include leads created on or after this date (YYYY-MM-DD) |
| `updated_from_date` | string | No | Only include leads updated on or after this date (YYYY-MM-DD) |

#### 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 Deal Stages

**Slug:** `PIPELINE_CRM_LIST_STAGES`

Tool to list deal stages. Use when you need to enumerate all stages for deals in Pipeline CRM.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (must be >=1) |
| `per_page` | integer | No | Number of items per page for pagination (1-200) |

#### 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 calendar tasks

**Slug:** `PIPELINE_CRM_LIST_TASKS`

Tool to list calendar tasks. Use when retrieving tasks for a deal, company, or person with optional date filters and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to fetch (default 1). |
| `deal_id` | integer | No | Filter tasks by deal ID. |
| `to_date` | string | No | Filter tasks due on or before this date (YYYY-MM-DD). |
| `per_page` | integer | No | Number of items per page (max 200, default 200). |
| `from_date` | string | No | Filter tasks due on or after this date (YYYY-MM-DD). |
| `person_id` | integer | No | Filter tasks by person ID. |
| `company_id` | integer | No | Filter tasks by company 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 Users

**Slug:** `PIPELINE_CRM_LIST_USERS`

List all users in Pipeline CRM account. Returns a complete list of users with their details including email, name, role, status, and admin privileges. Use this to retrieve user information for assignment, reporting, or user management purposes. Requires admin access to the API.

#### 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 Company

**Slug:** `PIPELINE_CRM_UPDATE_COMPANY`

Tool to update an existing company by ID in Pipeline CRM. Use after confirming the company ID and fields to change.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | Yes | ID of the company to update |
| `company` | object | Yes | Dictionary of company fields to update. Available fields include: name (str), description (str), email (str), web (str), fax (str), phone1/phone2/phone3/phone4 (str), phone1_desc/phone2_desc/phone3_desc/phone4_desc (str), address_1 (str), address_2 (str), city (str), state (str), postal_code (int or str), country (str), facebook_url (str), linked_in_url (str), twitter (str), instant_message (str), owner_id (int), shared_user_ids (list of int), tag_ids (list of int). Only include fields you want to update. |
| `deliver_reassignment_email` | boolean | No | If false, suppresses sending reassignment email when changing owner_id; default is true |

#### 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 |
