# Specific

Sales call analytics to drive revenue

- **Category:** ai sales tools
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 18
- **Triggers:** 0
- **Slug:** `SPECIFIC`
- **Version:** 00000000_00

## Tools

### Create Company

**Slug:** `SPECIFIC_CREATE_COMPANY`

Tool to create a new company record in the Specific platform. Use when you need to add a new company to the workspace with optional ID, name, and custom attributes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Company ID - unique identifier for the company. If not provided, Specific will auto-generate one. |
| `name` | string | No | Company name - the display name of the company. |
| `attributes` | object | No | Company custom fields - key-value pairs for custom company attributes (can include fields like tier, ARR, etc.). |

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

**Slug:** `SPECIFIC_CREATE_CONVERSATION`

Tool to create a new conversation (survey response) in the Specific platform. Use when you need to add a new conversation with content, optional contacts, companies, and custom fields. Content can be a simple string or structured ProseMirror document with headings and paragraphs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `source` | object | No | Source connection input. |
| `company` | object | No | Company connection or creation input. |
| `contact` | object | No | Contact connection or creation input. |
| `content` | string | Yes | Conversation content as a simple string or ProseMirror document structure with headings and paragraphs |
| `sourceUrl` | string | No | Source reference URL where the conversation originated |
| `insertedAt` | string | No | Date and time when the conversation was inserted. Accepts YYYY-MM-DD or RFC 3339 format (e.g., 2007-12-03T10:15:30Z) |
| `customFields` | object | No | Custom field data as key-value pairs |

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

**Slug:** `SPECIFIC_CREATE_OR_UPDATE_COMPANY`

Tool to upsert a company record in the Specific platform (create if not exists, update if exists). Use when you need to ensure a company exists with specific data, creating or updating as necessary based on the filter criteria.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Company data to create or update - must include ID and optionally name and attributes. |
| `where` | object | Yes | Filter criteria to identify which company to update - typically matches by 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 |

### Create Or Update User

**Slug:** `SPECIFIC_CREATE_OR_UPDATE_USER`

Tool to upsert a user record in the Specific platform (creates if not exists, updates if exists). Use when you need to ensure a contact exists with specific data, merging with existing records based on email or ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Contact information to create or update |
| `where` | object | Yes | Filter criteria to identify which contact to modify (by id or email). At least one field must be provided. |

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

**Slug:** `SPECIFIC_CREATE_USER`

Tool to create a new user (contact) record in the Specific platform. Use when you need to add a new contact with email, name, and optional custom attributes or company association.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Optional custom identifier for the contact. If not provided, Specific will generate one automatically. |
| `name` | string | No | The full name of the contact. |
| `email` | string | No | The email address of the contact. While optional, it's highly recommended for user identification. |
| `company` | object | No | Defines a relationship between a contact and a company. |
| `attributes` | object | No | Custom attributes/fields for the contact as key-value pairs. Use this to store additional metadata. |

#### 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:** `SPECIFIC_DELETE_COMPANY`

Tool to delete a company record from the Specific platform. Use when you need to remove a company by its ID. The operation is permanent and returns the deleted company's details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier 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 Company Attributes

**Slug:** `SPECIFIC_DELETE_COMPANY_ATTRIBUTES`

Tool to delete specific custom field attributes from a company record. Use when you need to remove custom attributes by their keys from a company. Returns the updated company details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `keys` | array | Yes | Custom field identifiers to delete from the company. Must provide at least one key. |
| `company_id` | string | Yes | The unique identifier of the company to delete attributes from. |

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

**Slug:** `SPECIFIC_DELETE_USER`

Tool to remove a user record from the Specific platform. Use when you need to permanently delete a contact from the workspace.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | The email address of the user to delete. Either user_id or email must be provided. |
| `user_id` | string | No | The unique identifier of the user to delete. Either user_id or email must be provided. |

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

**Slug:** `SPECIFIC_DELETE_USER_ATTRIBUTES`

Tool to delete specific custom field attributes from a user record in the Specific platform. Use when you need to remove custom field values from a contact without deleting the contact itself.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Specifies which custom field attributes to delete from the user record. |
| `where` | object | Yes | Filter to identify which contact to delete attributes from (by id or email). |

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

**Slug:** `SPECIFIC_GET_MY_WORKSPACE`

Tool to get current workspace information for the authenticated user. Use when you need to retrieve the workspace ID and name for the authenticated API key.

#### 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:** `SPECIFIC_LIST_COMPANIES`

Tool to query company records from the Specific platform via GraphQL. Use when you need to retrieve company information, optionally filtering by ID or name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `where` | object | No | Filter for company fields. |

#### 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:** `SPECIFIC_LIST_CONVERSATIONS`

Tool to query conversation records (survey responses) from the Specific platform via GraphQL. Use when you need to retrieve customer feedback, survey responses, or conversation history. Returns up to 20 most recent conversations, optionally filtered by source identifiers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `where` | object | No | Filter for conversations by source identifiers. |

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

**Slug:** `SPECIFIC_LIST_CUSTOM_FIELDS`

Tool to query custom field definitions in the Specific platform. Use when you need to retrieve available custom fields that can be associated with companies, contacts, or conversations. Optionally filter by entity type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field_type` | string ("user" | "group" | "conversation") | No | Optional filter to retrieve only custom fields of a specific type. 'user' for contact/user attributes, 'group' for company attributes, 'conversation' for conversation attributes. If not provided, returns all custom fields across all types. |

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

**Slug:** `SPECIFIC_LIST_SOURCES`

Tool to retrieve all data sources from the Specific platform. Use when you need to fetch available sources in the workspace.

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

**Slug:** `SPECIFIC_LIST_SURVEYS`

Tool to retrieve multiple survey records from the Specific platform via GraphQL. Use when you need to fetch all available surveys with their metadata, including names, contexts, tones, and associated conversation data.

#### 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:** `SPECIFIC_LIST_USERS`

Tool to query user accounts from the Specific platform via GraphQL. Use when you need to retrieve user information, optionally filtering by ID, email, or custom attributes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `where` | object | No | Filter for contact/user fields. |

#### 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:** `SPECIFIC_UPDATE_COMPANY`

Tool to update an existing company record in the Specific platform. Use when modifying company name or custom attributes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique ID of the company to update (e.g., 'specific_cGkw1X80bpo'). |
| `name` | string | No | New name for the company. If not provided, the name remains unchanged. |
| `attributes` | object | No | Custom field values to update on the company. Merges with existing values. |

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

**Slug:** `SPECIFIC_UPDATE_USER`

Tool to modify an existing user record in the Specific platform via GraphQL mutation. Use when you need to update contact information such as name, email, company association, or custom attributes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data fields to update for the contact |
| `where` | object | Yes | Filter to identify which contact to update (by id or email) |

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