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

# Close CRM: Close Create Contact

> Add a new person to a Close company: create a contact with known email and phone, name and job title. Includes SDK V2 examples, schemas, and cost.

Add a new person to a Close company: create a contact with known email and phone, name and job title.

> [!NOTE]
>
> Tool ID: `close_create_contact`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'close_create_contact',
  {
    "_fields": "example",
    "created_by": null,
    "date_created": "2026-01-15T12:00:00Z"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline run close_create_contact --input '{
  "_fields": "example",
  "created_by": null,
  "date_created": "2026-01-15T12:00:00Z"
}'
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "created_by": "example",
    "date_created": "2026-01-15T12:00:00Z",
    "date_updated": "2026-01-15T12:00:00Z"
  }
}
```

Use `deepline describe close_create_contact --json` for the latest machine-readable contract.

## Input reference

Create a new Close CRM contact. Supply lead\_id to attach the person to an existing company. omitting it also creates a new lead named after the contact. Email, phone and URL fields are arrays. This creates CRM records and can create duplicates if repeated. Use a stable Deepline execution key to recover an uncertain outcome before starting another write.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload._fields` | `string` | No | — | Comma-separated list of fields to include in the response. |
| `payload.created_by` | `string` | No | — | — |
| `payload.date_created` | `string` | No | — | Format: `date-time`. |
| `payload.emails` | `array` | No | — | Maximum items: 100. |
| `payload.lead_id` | `string` | No | — | — |
| `payload.name` | `string` | No | — | Maximum length: 1000. |
| `payload.phones` | `array` | No | — | Maximum items: 100. |
| `payload.timezone` | `string` | No | — | IANA timezone identifier |
| `payload.title` | `string` | No | — | Maximum length: 1000. |
| `payload.urls` | `array` | No | — | Maximum items: 100. |
| `payload.custom_fields` | `record` | No | — | Map Close custom field ids (cf\_...) to values. null clears a value. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Create a new Close CRM contact. Supply lead_id to attach the person to an existing company; omitting it also creates a new lead named after the contact. Email, phone and URL fields are arrays. This creates CRM records and can create duplicates if repeated. Use a stable Deepline execution key to recover an uncertain outcome before starting another write.",
    "properties": {
      "_fields": {
        "type": "string",
        "description": "Comma-separated list of fields to include in the response."
      },
      "created_by": {
        "type": [
          "null",
          "string"
        ]
      },
      "date_created": {
        "type": [
          "null",
          "string"
        ],
        "format": "date-time"
      },
      "emails": {
        "type": [
          "array",
          "null"
        ],
        "maxItems": 100,
        "items": {
          "type": "object",
          "required": [
            "email"
          ],
          "properties": {
            "email": {
              "type": "string",
              "format": "email"
            },
            "type": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "lead_id": {
        "type": [
          "null",
          "string"
        ]
      },
      "name": {
        "type": [
          "null",
          "string"
        ],
        "maxLength": 1000
      },
      "phones": {
        "type": [
          "array",
          "null"
        ],
        "maxItems": 100,
        "items": {
          "type": "object",
          "properties": {
            "phone": {
              "type": [
                "null",
                "string"
              ],
              "description": "Phone number in E.164 format"
            },
            "type": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "timezone": {
        "type": [
          "null",
          "string"
        ],
        "description": "IANA timezone identifier"
      },
      "title": {
        "type": [
          "null",
          "string"
        ],
        "maxLength": 1000
      },
      "urls": {
        "type": [
          "array",
          "null"
        ],
        "maxItems": 100,
        "items": {
          "type": "object",
          "required": [
            "url"
          ],
          "properties": {
            "type": {
              "type": "string"
            },
            "url": {
              "type": "string",
              "format": "uri"
            }
          },
          "additionalProperties": false
        }
      },
      "custom_fields": {
        "type": "object",
        "description": "Map Close custom field ids (cf_...) to values; null clears a value.",
        "propertyNames": {
          "pattern": "^cf_[A-Za-z0-9]+$"
        },
        "additionalProperties": {
          "not": {
            "type": "object"
          }
        }
      }
    },
    "required": [],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.created_by` | `string \| null` | No | — | — |
| `result.data.date_created` | `string` | No | — | Format: `date-time`. |
| `result.data.date_updated` | `string` | No | — | Format: `date-time`. |
| `result.data.display_name` | `string` | No | — | — |
| `result.data.emails` | `array` | No | — | — |
| `result.data.emails[].email` | `string` | Yes | — | — |
| `result.data.emails[].is_unsubscribed` | `boolean` | Yes | — | — |
| `result.data.emails[].type` | `string` | Yes | — | — |
| `result.data.id` | `string` | No | — | — |
| `result.data.integration_links` | `array` | No | — | — |
| `result.data.integration_links[].name` | `string` | Yes | — | — |
| `result.data.integration_links[].url` | `string` | Yes | — | — |
| `result.data.lead_id` | `string \| null` | No | — | — |
| `result.data.lead_suggestions_operation_id` | `string \| null` | No | — | — |
| `result.data.name` | `string \| null` | No | — | — |
| `result.data.organization_id` | `string` | No | — | — |
| `result.data.phones` | `array` | No | — | — |
| `result.data.phones[].country` | `string \| null` | No | — | — |
| `result.data.phones[].outbound_sms_blocked` | `boolean` | No | — | — |
| `result.data.phones[].phone` | `string` | Yes | — | — |
| `result.data.phones[].phone_formatted` | `string` | No | — | — |
| `result.data.phones[].type` | `string` | Yes | — | — |
| `result.data.phones[].tz_ids` | `array` | No | — | — |
| `result.data.recent_calls` | `array` | No | — | — |
| `result.data.recent_calls[].dialer_id` | `string \| null` | Yes | — | — |
| `result.data.recent_calls[].duration` | `integer` | Yes | — | — |
| `result.data.recent_calls[].finish_timestamp` | `string` | Yes | — | Format: `date-time`. |
| `result.data.recent_calls[].id` | `string` | Yes | — | — |
| `result.data.recent_calls[].status` | `"created" \| "in-progress" \| "completed" \| "cancel" \| "no-answer" \| "busy" \| "failed" \| "timeout"` | Yes | — | Current status of the call. Allowed: `created`, `in-progress`, `completed`, `cancel`, `no-answer`, `busy`, `failed`, `timeout`. |
| `result.data.subscriptions` | `array` | No | — | — |
| `result.data.subscriptions[].contact_email` | `string \| null` | Yes | — | — |
| `result.data.subscriptions[].date_created` | `string` | Yes | — | Format: `date-time`. |
| `result.data.subscriptions[].initial_email_id` | `string \| null` | Yes | — | — |
| `result.data.subscriptions[].sequence_id` | `string` | Yes | — | — |
| `result.data.subscriptions[].sequence_name` | `string` | Yes | — | — |
| `result.data.subscriptions[].sequence_status` | `"active" \| "paused" \| "draft"` | Yes | — | Allowed: `active`, `paused`, `draft`. |
| `result.data.subscriptions[].start_date` | `string \| null` | Yes | — | Format: `date-time`. |
| `result.data.subscriptions[].subscription_id` | `string` | Yes | — | — |
| `result.data.subscriptions[].subscription_status` | `"active" \| "paused" \| "finished" \| "goal" \| "error"` | Yes | — | Allowed: `active`, `paused`, `finished`, `goal`, `error`. |
| `result.data.subscriptions[].subscription_status_reason` | `"manual" \| "pending-call-timed-out" \| "bulk-action" \| "rate-limited" \| "sequence-deleted" \| "workflow-paused" \| "filter-not-matched" \| "insufficient-ai-credit-balance" \| "plan-not-supported" \| "reply-received" \| "call-answered" \| "meeting-booked" \| "lead-status-changed" \| "outcome-met" \| "account-invalid" \| "account-failures" \| "sending-throttled-too-long" \| "membership-inactive" \| "send-as-error" \| "email-bounced" \| "call-failed" \| "sms-failed" \| "no-user-phone" \| "billing-error" \| "assignment-field-invalid" \| "lead-status-field-invalid" \| "assignees-missing" \| "run-as-disabled" \| "lead-not-visible" \| "internal-error" \| "field-mapping-error" \| "filter-config-invalid" \| "email-ai-generation-failed"` | Yes | — | Reason for each higher level status on a Workflow run. Allowed: `manual`, `pending-call-timed-out`, `bulk-action`, `rate-limited`, `sequence-deleted`, `workflow-paused`, `filter-not-matched`, `insufficient-ai-credit-balance`, `plan-not-supported`, `reply-received`, `call-answered`, `meeting-booked`, `lead-status-changed`, `outcome-met`, `account-invalid`, `account-failures`, `sending-throttled-too-long`, `membership-inactive`, `send-as-error`, `email-bounced`, `call-failed`, `sms-failed`, See the live schema for the complete constraint. |
| `result.data.timezone` | `string \| null` | No | — | — |
| `result.data.timezone_source` | `string \| null` | No | — | — |
| `result.data.title` | `string \| null` | No | — | — |
| `result.data.updated_by` | `string \| null` | No | — | — |
| `result.data.urls` | `array` | No | — | — |
| `result.data.urls[].type` | `string` | Yes | — | — |
| `result.data.urls[].url` | `string` | Yes | — | — |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "created_by": {
            "type": [
              "string",
              "null"
            ]
          },
          "date_created": {
            "type": "string",
            "format": "date-time"
          },
          "date_updated": {
            "type": "string",
            "format": "date-time"
          },
          "display_name": {
            "type": "string"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "email": {
                  "type": "string"
                },
                "is_unsubscribed": {
                  "type": "boolean"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "email",
                "is_unsubscribed",
                "type"
              ],
              "additionalProperties": false
            }
          },
          "id": {
            "type": "string"
          },
          "integration_links": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                }
              },
              "required": [
                "name",
                "url"
              ],
              "additionalProperties": false
            }
          },
          "lead_id": {
            "type": [
              "string",
              "null"
            ]
          },
          "lead_suggestions_operation_id": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "organization_id": {
            "type": "string"
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "country": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "outbound_sms_blocked": {
                  "type": "boolean"
                },
                "phone": {
                  "type": "string"
                },
                "phone_formatted": {
                  "type": "string"
                },
                "type": {
                  "type": "string"
                },
                "tz_ids": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "phone",
                "type"
              ],
              "additionalProperties": false
            }
          },
          "recent_calls": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "dialer_id": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "duration": {
                  "type": "integer"
                },
                "finish_timestamp": {
                  "type": "string",
                  "format": "date-time"
                },
                "id": {
                  "type": "string"
                },
                "status": {
                  "type": "string",
                  "description": "Current status of the call.",
                  "enum": [
                    "created",
                    "in-progress",
                    "completed",
                    "cancel",
                    "no-answer",
                    "busy",
                    "failed",
                    "timeout"
                  ]
                }
              },
              "required": [
                "dialer_id",
                "duration",
                "finish_timestamp",
                "id",
                "status"
              ],
              "additionalProperties": false
            }
          },
          "subscriptions": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "contact_email": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "date_created": {
                  "type": "string",
                  "format": "date-time"
                },
                "initial_email_id": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "sequence_id": {
                  "type": "string"
                },
                "sequence_name": {
                  "type": "string"
                },
                "sequence_status": {
                  "type": "string",
                  "enum": [
                    "active",
                    "paused",
                    "draft"
                  ]
                },
                "start_date": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "date-time"
                },
                "subscription_id": {
                  "type": "string"
                },
                "subscription_status": {
                  "type": "string",
                  "enum": [
                    "active",
                    "paused",
                    "finished",
                    "goal",
                    "error"
                  ]
                },
                "subscription_status_reason": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Reason for each higher level status on a Workflow run.",
                  "enum": [
                    "manual",
                    "pending-call-timed-out",
                    "bulk-action",
                    "rate-limited",
                    "sequence-deleted",
                    "workflow-paused",
                    "filter-not-matched",
                    "insufficient-ai-credit-balance",
                    "plan-not-supported",
                    "reply-received",
                    "call-answered",
                    "meeting-booked",
                    "lead-status-changed",
                    "outcome-met",
                    "account-invalid",
                    "account-failures",
                    "sending-throttled-too-long",
                    "membership-inactive",
                    "send-as-error",
                    "email-bounced",
                    "call-failed",
                    "sms-failed",
                    "no-user-phone",
                    "billing-error",
                    "assignment-field-invalid",
                    "lead-status-field-invalid",
                    "assignees-missing",
                    "run-as-disabled",
                    "lead-not-visible",
                    "internal-error",
                    "field-mapping-error",
                    "filter-config-invalid",
                    "email-ai-generation-failed"
                  ]
                }
              },
              "required": [
                "contact_email",
                "date_created",
                "initial_email_id",
                "sequence_id",
                "sequence_name",
                "sequence_status",
                "start_date",
                "subscription_id",
                "subscription_status",
                "subscription_status_reason"
              ],
              "additionalProperties": false
            }
          },
          "timezone": {
            "type": [
              "string",
              "null"
            ]
          },
          "timezone_source": {
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "null"
            ]
          },
          "updated_by": {
            "type": [
              "string",
              "null"
            ]
          },
          "urls": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                }
              },
              "required": [
                "type",
                "url"
              ],
              "additionalProperties": false
            }
          }
        },
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Connect integrations](https://deepline.com/docs/integrations.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


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