openapi: 3.1.0 info: title: API Endpoints version: 1.0.0 paths: /lead/: get: operationId: list summary: List Leads tags: - subpackage_leads parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/leads_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new lead description: >- Contacts, addresses, and custom fields can all be nested in the lead. Activities, tasks, and opportunities must be posted separately. **status / status_id** (optional): Post either `status` or `status_id` (but not both). If neither is provided, the organization's default (first) status will be used. Using `status_id` is recommended so that users can rename statuses in the UI without breaking your implementation. **custom.FIELD_ID** (optional): Set custom fields by setting `custom.FIELD_ID` to the field value, where FIELD_ID is the ID of the custom field, e.g.: ```json { "custom.cf_v6S011I6MqcbVvB2FA5Nk8dr5MkL8sWuCiG8cUleO9c": "value", "custom.cf_8wtBWsdRU2Fur7GDnEeXQ7ra2Vu7R4hG1SNYdiEhh0F": "other value" } ``` If a custom field has `accepts_multiple_values: true`, the entire value will be replaced. For example, given a Lead has a Custom Choice Field with value `["A", "B"]`, adding choice `"C"` would mean setting the value to `["A", "B", "C"]`. Note that using the `custom` field dict or the `custom.FIELD_NAME` syntax (instead of custom field IDs) is deprecated and will be removed from the API. See [Custom Fields](https://developer.close.com/api/resources/custom-fields) for more details. tags: - subpackage_leads parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Lead' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /lead/merge/: post: operationId: merge summary: Merge two leads description: For details and definitions of 'source' and 'destination', see the Merge Leads feature in the UI. tags: - subpackage_leads parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/leads_merge_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /lead/{id}/: get: operationId: get summary: Get a single Lead tags: - subpackage_leads parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Lead' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an existing lead description: >- Supports non-destructive patches. Nested `contacts` cannot be updated through this endpoint -- use the Contacts API instead. **status**: See `status` and `status_id` guidance on the create endpoint. **custom.FIELD_ID** (optional): See `custom.FIELD_ID` guidance on the create endpoint. You can also unset a single field, e.g.: ```json { "custom.cf_v6S011I6MqcbVvB2FA5Nk8dr5MkL8sWuCiG8cUleO9c": null } ``` If the custom field accepts multiple values, you can specify `.add` or `.remove` as part of the field key to add/remove a single value to/from a list of values, e.g.: ```json { "custom.cf_v6S011I6MqcbVvB2FA5Nk8dr5MkL8sWuCiG8cUleO9c.add": "Wednesday" } ``` adds "Wednesday" to the list of values which already exist on the given lead. tags: - subpackage_leads parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Lead' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a lead tags: - subpackage_leads parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/leads_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /contact/: get: operationId: list summary: List contacts tags: - subpackage_contacts parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: lead_id in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/contacts_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new contact description: >- Contacts belong to exactly one Lead (specified by `lead_id`). If you do not provide a `lead_id` then a new lead will be created, named after the contact. tags: - subpackage_contacts parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Contact' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /contact/{id}/: get: operationId: get summary: Fetch a single contact tags: - subpackage_contacts parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Contact' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an existing contact description: >- Update a contact's information. If you're trying to update a custom field and that custom field accepts multiple values, you can specify `.add` or `.remove` as part of the field key to add/remove a single value to/from a list of values, e.g.: ```json { "custom.cf_v6S011I6MqcbVvB2FA5Nk8dr5MkL8sWuCiG8cUleO9c.add": "Wednesday" } ``` adds "Wednesday" to the list of values which already exist on the given contact. tags: - subpackage_contacts parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Contact' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a contact tags: - subpackage_contacts parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/contacts_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /opportunity/: get: operationId: list summary: List or filter opportunities description: >- * All opportunity list responses contain the following aggregate values about all the matching objects (regardless of pagination / limits): * `total_results`: the total number of objects, * `count_by_value_period`: a dictionary containing the number of opportunities by value period, e.g. `{ 'one_time': 2, 'annual': 1, 'monthly': 1 }`, * `total_value_one_time`: the sum of the values of all one time opportunities, * `total_value_monthly`: the sum of the values of all monthly opportunities, * `total_value_annual`: the sum of the values of all annual opportunities, * `total_value_annualized`: the sum of the values of all opportunities where monthly opportunity values are multiplied by 12, * `expected_value_one_time`: the sum of the values of all one time opportunities multiplied by their confidence, * `expected_value_monthly`: the sum of the values of all monthly opportunities multiplied by their confidence, * `expected_value_annual`: the sum of the values of all annual opportunities multiplied by their confidence, * `expected_value_annualized`: the sum of the values of all opportunities multiplied by their confidence where monthly opportunity values are multiplied by 12, * `query` is an optional search query filter. Only opportunity properties may be used in the filter. For example, `note:important` will only show opportunities which contain the text `important` in their note. Or, `status_change(old_status:active new_status:won date:yesterday)` will only show opportunities that transitioned from status `active` to status `won` on the previous day. * `_order_by` allows: `date_won`, `date_updated`, `date_created`, `confidence`, `user_name`, `value`, `annualized_value`, `annualized_expected_value` (each of them allows descending order by prepending a minus, e.g. `_order_by=-date_won`). * `value_period` allows: `one_time`, `monthly`, `annual`. * Multiple values for `user_id`, `status_id`, `status_label`, `status_type` and `value_period` can be specified using the *in* operator, e.g. `status_type__in=active,won`. * `_group_by` allows: `user_id`, `date_won__week`, `date_won__month`, `date_won__quarter` `date_won__year` to group results by the given criteria. When grouping results, the `data` array contains a list of groups instead of objects. A group consists of the following fields: * `key` containing a unique group key, * `objects` containing the list of objects for the given group, * `total_results` containing the number of total objects for the given group, * all aggregate values for the given group, * if grouping by year: `year`, containing the year for the given group, * if grouping by month: `year` and `month`, containing the year and month (1-12) for the given group, * if grouping by quarter: `year` and `quarter`, containing the year and quarter (1-4) for the given group, * if grouping by week: `weekyear` and `week`, containing the ISO week year and ISO week number for the given group, * if grouping by user: `user_id` and `user_name`, containing the user ID and full name of the user for the given group. Note that pagination still applies to objects and not groups. The last or first group may be cut off during pagination, therefore `total_results` may not match the length of `objects`. When paginating, the `key` value may be used to combine groups across multiple pages. Sorting using `_order_by` may be applied and sorts the items within each of the groups. Group order can be reversed by prepending a minus. For example, `_group_by=-date_won__week` will show the most recent weeks first. When grouping by `user_id`, results are ordered by the user's full name. * `lead_saved_search_id` is an optional lead Smart View filter. * (deprecated) `lead_query` is an optional lead search text-based query filter. This parameter is now deprecated in favor of using the `lead_saved_search_id` Smart View ID parameter. tags: - subpackage_opportunities parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: lead_id in: query required: false schema: type: - string - 'null' - name: organization_id in: query required: false schema: type: - string - 'null' - name: user_id in: query required: false schema: type: - string - 'null' - name: user_id__in in: query required: false schema: type: - string - 'null' - name: status_id in: query required: false schema: type: - string - 'null' - name: status_id__in in: query required: false schema: type: - string - 'null' - name: status_type in: query required: false schema: type: - string - 'null' - name: status_type__in in: query required: false schema: type: - string - 'null' - name: status_label in: query required: false schema: type: - string - 'null' - name: status_label__in in: query required: false schema: type: - string - 'null' - name: status in: query required: false schema: type: - string - 'null' - name: status__in in: query required: false schema: type: - string - 'null' - name: date_won in: query required: false schema: type: - string - 'null' - name: date_won__gte in: query required: false schema: type: - string - 'null' - name: date_won__gt in: query required: false schema: type: - string - 'null' - name: date_won__lte in: query required: false schema: type: - string - 'null' - name: date_won__lt in: query required: false schema: type: - string - 'null' - name: date_created in: query required: false schema: type: - string - 'null' - name: date_created__gte in: query required: false schema: type: - string - 'null' - name: date_created__gt in: query required: false schema: type: - string - 'null' - name: date_created__lte in: query required: false schema: type: - string - 'null' - name: date_created__lt in: query required: false schema: type: - string - 'null' - name: date_updated in: query required: false schema: type: - string - 'null' - name: date_updated__gte in: query required: false schema: type: - string - 'null' - name: date_updated__gt in: query required: false schema: type: - string - 'null' - name: date_updated__lte in: query required: false schema: type: - string - 'null' - name: date_updated__lt in: query required: false schema: type: - string - 'null' - name: value_period in: query required: false schema: type: - string - 'null' - name: value_period__in in: query required: false schema: type: - string - 'null' - name: query in: query required: false schema: type: - string - 'null' - name: lead_query in: query required: false schema: type: - string - 'null' - name: lead_saved_search_id in: query required: false schema: type: - string - 'null' - name: is_stalled in: query required: false schema: type: - string - 'null' - name: _order_by in: query required: false schema: type: - string - 'null' - name: _group_by in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/opportunities_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create an opportunity description: >- **lead_id** (optional): Opportunities belong to exactly one Lead. If you do not provide a `lead_id` then a new lead will be created (appearing as "Untitled" in the UI). **custom.FIELD_ID** (optional): Set custom fields by setting `custom.FIELD_ID` to the field value, where FIELD_ID is the ID of the custom field, e.g.: ```json { "custom.cf_v6S011I6MqcbVvB2FA5Nk8dr5MkL8sWuCiG8cUleO9c": "value", "custom.cf_8wtBWsdRU2Fur7GDnEeXQ7ra2Vu7R4hG1SNYdiEhh0F": "other value" } ``` If a custom field has `accepts_multiple_values: true`, the entire value will be replaced. For example, given an Opportunity has a Custom Choice Field with value `["A", "B"]`, adding choice `"C"` would mean setting the value to `["A", "B", "C"]`. Note that using the `custom` field dict or the `custom.FIELD_NAME` syntax (instead of custom field IDs) is deprecated and will be removed from the API. See [Custom Fields](https://developer.close.com/api/resources/custom-fields) for more details. tags: - subpackage_opportunities parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Opportunity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateOpportunity' /opportunity/{id}/: get: operationId: get summary: Retrieve an opportunity tags: - subpackage_opportunities parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Opportunity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an opportunity description: >- *status_id* - See description for `status_id` in `POST /opportunity/` above. - Setting the `status_id` to a status with a type of `won` will automatically set the `date_won` field if it is not already set or provided in the request. Reverting it from a `won` status to an `active` or `lost` will not automatically change `date_won`. *date_won* (optional): - If not set on the resource or in the request, the `date_won` will be set automatically to today's date when setting `status_id` to a status with type `won`. The `x-tz-offset` header, used to pass your timezone's UTC offset, will be taken into account. *custom.FIELD_ID* (optional) - See description for `custom.FIELD_ID` in `POST /opportunity/` above. - Additionally, you can unset a single field by using `{ "custom.FIELD_ID": null }`, e.g.: ``` { "custom.cf_v6S011I6MqcbVvB2FA5Nk8dr5MkL8sWuCiG8cUleO9c": null } ``` If you're trying to update a custom field and that custom field accepts multiple values, you can also specify `.add` or `.remove` as part of the field key to add/remove a single value to/from a list of values, e.g.: ``` { "custom.cf_v6S011I6MqcbVvB2FA5Nk8dr5MkL8sWuCiG8cUleO9c.add": "Wednesday" } ``` tags: - subpackage_opportunities parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Opportunity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete an opportunity tags: - subpackage_opportunities parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/opportunities_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /task/: get: operationId: list summary: List or filter tasks description: >- The `view` parameter can be used to conveniently access the different task views. It accepts one of the following values: * `inbox`: Shows incomplete tasks up to the end of the user's day only (taking the time zone into account). * `future`: Shows incomplete tasks starting from the user's tomorrow only (taking the time zone into account). * `archive`: Shows complete tasks only. Note that a `view` value of `inbox` or `future` will override any `date__lt` or `date__gte` parameters included in the same request. The `_order_by` field allows ordering by `date` or `date_created` (descending order by prepending a minus, e.g. `_order_by=-date`). tags: - subpackage_tasks parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: assigned_to in: query required: false schema: type: - string - 'null' - name: format in: query required: false schema: type: - string - 'null' - name: id in: query required: false schema: type: - string - 'null' - name: id__in in: query required: false schema: type: - string - 'null' - name: is_complete in: query required: false schema: type: - string - 'null' - name: lead_id in: query required: false schema: type: - string - 'null' - name: _order_by in: query required: false schema: type: - string - 'null' - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query required: false schema: type: - string - 'null' - name: _type__in in: query required: false schema: type: - string - 'null' - name: view in: query required: false schema: type: - string - 'null' - name: date in: query required: false schema: type: - string - 'null' - name: date__lt in: query required: false schema: type: - string - 'null' - name: date__lte in: query required: false schema: type: - string - 'null' - name: date__gt in: query required: false schema: type: - string - 'null' - name: date__gte in: query required: false schema: type: - string - 'null' - name: due_date in: query required: false schema: type: - string - 'null' - name: due_date__lt in: query required: false schema: type: - string - 'null' - name: due_date__lte in: query required: false schema: type: - string - 'null' - name: due_date__gt in: query required: false schema: type: - string - 'null' - name: due_date__gte in: query required: false schema: type: - string - 'null' - name: date_created__lt in: query required: false schema: type: - string - 'null' - name: date_created__lte in: query required: false schema: type: - string - 'null' - name: date_created__gt in: query required: false schema: type: - string - 'null' - name: date_created__gte in: query required: false schema: type: - string - 'null' - name: date_updated__lt in: query required: false schema: type: - string - 'null' - name: date_updated__lte in: query required: false schema: type: - string - 'null' - name: date_updated__gt in: query required: false schema: type: - string - 'null' - name: date_updated__gte in: query required: false schema: type: - string - 'null' - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tasks_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a task description: >- Provide the type of task to be created in the `_type` field. Currently only tasks of type `lead` and `outgoing_call` can be created. tags: - subpackage_tasks parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tasks_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type put: operationId: bulk-update summary: Bulk-update tasks description: >- Any of the filters of the GET endpoint may be used. For example, to update multiple tasks with given IDs A, B and C, `id__in=A,B,C` would be passed. Only the `assigned_to`, `date` and `is_complete` fields may be updated. tags: - subpackage_tasks parameters: - name: assigned_to in: query required: false schema: type: - string - 'null' - name: format in: query required: false schema: type: - string - 'null' - name: id in: query required: false schema: type: - string - 'null' - name: id__in in: query required: false schema: type: - string - 'null' - name: is_complete in: query required: false schema: type: - string - 'null' - name: lead_id in: query required: false schema: type: - string - 'null' - name: _order_by in: query required: false schema: type: - string - 'null' - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query required: false schema: type: - string - 'null' - name: _type__in in: query required: false schema: type: - string - 'null' - name: view in: query required: false schema: type: - string - 'null' - name: date in: query required: false schema: type: - string - 'null' - name: date__lt in: query required: false schema: type: - string - 'null' - name: date__lte in: query required: false schema: type: - string - 'null' - name: date__gt in: query required: false schema: type: - string - 'null' - name: date__gte in: query required: false schema: type: - string - 'null' - name: due_date in: query required: false schema: type: - string - 'null' - name: due_date__lt in: query required: false schema: type: - string - 'null' - name: due_date__lte in: query required: false schema: type: - string - 'null' - name: due_date__gt in: query required: false schema: type: - string - 'null' - name: due_date__gte in: query required: false schema: type: - string - 'null' - name: date_created__lt in: query required: false schema: type: - string - 'null' - name: date_created__lte in: query required: false schema: type: - string - 'null' - name: date_created__gt in: query required: false schema: type: - string - 'null' - name: date_created__gte in: query required: false schema: type: - string - 'null' - name: date_updated__lt in: query required: false schema: type: - string - 'null' - name: date_updated__lte in: query required: false schema: type: - string - 'null' - name: date_updated__gt in: query required: false schema: type: - string - 'null' - name: date_updated__gte in: query required: false schema: type: - string - 'null' - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tasks_bulkUpdate_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkUpdateNotifications' /task/{id}/: get: operationId: get summary: Fetch a task's details tags: - subpackage_tasks parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tasks_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a task description: >- The `assigned_to`, `date` (either a date or a date-time), and `is_complete` fields may be updated on all tasks. If the task type is `lead`, the `text` field may also be modified. tags: - subpackage_tasks parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tasks_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateNotification' delete: operationId: delete summary: Delete a task tags: - subpackage_tasks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/tasks_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /files/upload/: post: operationId: create summary: Generate a signed S3 POST description: Get the data needed to make a request to S3 to store your file. tags: - subpackage_files parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/files_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UploadFile' /custom_object/: get: operationId: list summary: List Custom Object instances description: >- The `lead_id` parameter is required. If you want to retrieve all Custom Object instances regardless of the lead, you will need to use [Advanced Filtering](https://developer.close.com/api/resources/advanced-filtering). Custom Fields values appear in the format: `custom.{custom_field_id}`. See [Custom Fields](https://developer.close.com/api/resources/custom-fields/custom-fields-custom-object). Back references to each Custom Object are not collected in this response. If you need to access this information, please use the `back_reference_fields` on the Custom Object Type and [Advanced Filtering](https://developer.close.com/api/resources/advanced-filtering) to search for objects that reference the Custom Object Instance. tags: - subpackage_customObjects parameters: - name: lead_id in: query required: true schema: type: string - name: custom_object_type_id in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_objects_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new Custom Object instance description: >- Custom Field values can be set using the format: `custom.{custom_field_id}`. See [Custom Fields](https://developer.close.com/api/resources/custom-fields/custom-fields-custom-object). The following fields are required: - `custom_object_type_id`: The type of Custom Object you are creating determines the Custom Fields that can be used. - `lead_id`: The Lead that this Custom Object instance will belong to. - `name`: Each Custom Object has a name, used for display. tags: - subpackage_customObjects parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_objects_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_object/{id}/: get: operationId: get summary: Retrieve a single Custom Object instance tags: - subpackage_customObjects parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_objects_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Updating a Custom Object instance description: A Custom Object can be updated to add, change or remove any Custom Fields, and to change the `name` property. tags: - subpackage_customObjects parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_objects_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Custom Object instance tags: - subpackage_customObjects parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /comment/: get: operationId: list summary: Fetch multiple comments description: >- Comments may be fetched by `object_id` (the object that was commented on) or by `thread_id`. Exactly one of those filters must be provided. tags: - subpackage_comments parameters: - name: thread_id in: query required: false schema: type: - string - 'null' - name: object_id in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/comments_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a Comment description: >- Create a comment on an object. If a comment thread already exists on that object, a new comment is added to the existing thread. If no thread exists yet, one is created automatically. tags: - subpackage_comments parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/comments_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateComment' /comment/{id}/: get: operationId: get summary: Fetch an individual comment tags: - subpackage_comments parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/comments_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Comment description: You can use this endpoint to edit a comment body. Note that users may only update their own comments. tags: - subpackage_comments parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/comments_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateCommentThreads' delete: operationId: delete summary: Remove a comment description: >- Note that contrary to the HTTP verb, this does not necessarily _delete_ a comment (but it will _remove_ it). Comments bodies are removed, but the comment object still exists until all comments in a thread are removed (at which point the entire thread is deleted). Permissions around removing comments inherit from the users permission to delete their own or other users' activities. tags: - subpackage_comments parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /comment_thread/: get: operationId: list-threads summary: Fetch multiple comment threads tags: - subpackage_comments parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: ids in: query required: false schema: type: - array - 'null' items: type: string - name: object_ids in: query required: false schema: type: - array - 'null' items: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/comments_listThreads_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /comment_thread/{id}/: get: operationId: get-thread summary: Fetch an individual comment thread tags: - subpackage_comments parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/comments_getThread_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/: get: operationId: list summary: List or filter all activity types description: >- To list only a specific activity type (e.g., only `Call` or `LeadStatusChange`), use the other resources listed separately. When querying activities for a single lead (using the `lead_id` parameter), you can ask for multiple activity types using `_type__in`. When listing [Custom Activities](https://developer.close.com/api/resources/activities/custom-activities), `_type` and `_type__in` can include Custom Activity Type ids (e.g. `actitype_1h5m6uHM9BZOpwVhyRJb4Y`) to filter by a specific custom activity type or `Custom` to list custom activities of any type. The following filtering parameters can only be used for listing activities on a single lead (using the `lead_id` parameter): `user_id`, `user_id__in`, `contact_id`, `contact_id__in`, `_type`, `_type__in`. All activities have two sortable datetime fields: `date_created` and `activity_at`. `date_created` denotes when an activity was created or synced into Close and `activity_at` denotes when that activity actually occurred. For example, on outgoing Email activities, `date_created` is equal to when the email was first created in Close, and `activity_at` is equal to when the email was actually sent. For Meeting activities, `activity_at` is equal to the scheduled time of the meeting. On custom activities, users are able to update the `activity_at` field at any time. Sorting by `-activity_at` can only be used when listing activities on a single lead using the `lead_id` parameter. In addition, you can only use the date-based filters of the field you're currently sorting on. This means that if you want to use `activity_at__lt` and `activity_at__gt` as filters, you need to include `_order_by=-activity_at` in your request. `thread_emails` parameter: - (Default) when this parameter is not present, `Email` objects will be returned for each email message. - A value of `true` will return `EmailThread` objects representing email conversations. Stripped-down version of `Email` objects will also be returned. - A value of `only` will return `EmailThread` objects representing email conversations. `Email` objects will not be returned. tags: - subpackage_activities parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityGetParametersActivityAtLt' - name: lead_id__in in: query required: false schema: type: string - name: user_id__in in: query required: false schema: type: string - name: contact_id__in in: query required: false schema: type: string - name: _type__in in: query required: false schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: _order_by in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/note/: get: operationId: list summary: List or filter all Note activities tags: - subpackage_activitiesNotes parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityNoteGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityNoteGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityNoteGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityNoteGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityNoteGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityNoteGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityNoteGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityNoteGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.notes_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a Note activity description: >- To include an attachment, you must first upload the file to Close using the [Files API](https://developer.close.com/api/resources/files). Then, add an object to the `attachments` array with the following fields: `url`, `filename` and `content_type`. The `url` should be the URL provided in the `download.url` field of the response from the [Files API](https://developer.close.com/api/resources/files). It must begin `https://app.close.com/go/file/`. A note can be pinned or unpinned by setting the `pinned` field to `true` or `false` when creating or updating a note. tags: - subpackage_activitiesNotes parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/ActivityBase' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateNoteActivity' /activity/note/{id}/: get: operationId: get summary: Get a single Note activity tags: - subpackage_activitiesNotes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/ActivityBase' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Note activity description: >- **`note_html` and `note`**: setting one overwrites the other. If both are provided, `note_html` takes precedence. `note_html` supports rich-text HTML; `note` is plaintext only. A note can be pinned or unpinned by setting `pinned` to `true` or `false`. tags: - subpackage_activitiesNotes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/ActivityBase' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateNoteActivity' delete: operationId: delete summary: Delete a Note activity tags: - subpackage_activitiesNotes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.notes_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/call/: get: operationId: list summary: List or filter all Call activities tags: - subpackage_activitiesCalls parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityCallGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityCallGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityCallGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityCallGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityCallGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityCallGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityCallGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityCallGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.calls_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Log an external Call activity description: >- Use this endpoint to log calls made outside of the Close built-in VoIP system. *status*: defaults to `completed` *direction* (optional): `outbound` or `inbound` *recording_url*: you can post a URL pointing to the MP3 recording of your call. For security reasons, we require the URL to be secure (i.e. starting with https://) tags: - subpackage_activitiesCalls parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/CallActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCallActivity' /activity/call/{id}/: get: operationId: get summary: Get a single Call activity tags: - subpackage_activitiesCalls parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/CallActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Call activity description: >- Most commonly used to update `note_html` or `outcome_id`. Some fields (`status`, `duration`, `direction`) cannot be updated for internal calls made through Close's VoIP system. **`note_html` and `note`**: setting one overwrites the other. If both are provided, `note_html` takes precedence. `note_html` supports rich-text HTML; `note` is plaintext only. tags: - subpackage_activitiesCalls parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/CallActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateCallActivity' delete: operationId: delete summary: Delete a Call activity tags: - subpackage_activitiesCalls parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.calls_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/email/: get: operationId: list summary: List or filter all Email activities description: You'll get one object per email message. tags: - subpackage_activitiesEmails parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityEmailGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityEmailGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityEmailGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityEmailGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityEmailGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityEmailGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityEmailGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityEmailGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.emails_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create an Email activity description: >- *status* must be one of the following: - `inbox` to log an already received email. - `draft` to create a draft email. - `scheduled` to send an email at a scheduled date and time, which must be specified in the `date_scheduled` field. - `outbox` to actually **send** an email. To delay email sending by a few seconds (to allow undo), specify `send_in` in seconds (must be less than 60). - `sent` to log an already sent email. Only drafts can be modified, and their status can be changed to `scheduled` (to send later) or `outbox` (to send immediately). Scheduled emails, or emails in outbox that weren't sent yet can be canceled by setting the status back to `draft`. For scheduled, outbox, or sent emails, a `followup_date` may be posted, which will have Close create an email followup task if no response was received. We'll render an Email Template server-side if you include a `template_id` _without_ including `body_text` or `body_html` in your POST. To specify both a sender name and a sender email address when posting an email, you can use the `sender` field with the format `"sender": ""John Smith" "` The `sender` field is **required** for emails with status `inbox`, `scheduled`, `outbox`, or `error`. It may be omitted for `draft` (since the sender can be specified later before sending) and `sent` (where it defaults to the email address of the `user` associated with the email or the owner of the API key). To include an attachment, you must first upload the file to Close using the [Files API](https://developer.close.com/api/resources/files). Then, add an object to the `attachments` array with the following fields: `url`, `filename`, `content_type`, and `size`. The `url` should be the URL provided in the `download.url` field of the response from the [Files API](https://developer.close.com/api/resources/files). It must begin `https://app.close.com/go/file/`. tags: - subpackage_activitiesEmails parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/EmailActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateEmailActivity' /activity/email/{id}/: get: operationId: get summary: Get a single Email activity tags: - subpackage_activitiesEmails parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/EmailActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an Email activity description: >- This can be used to modify a draft or send it once the draft is complete. When changing a draft's status to `scheduled` or `outbox`, the `sender` field is required if not already set on the email. tags: - subpackage_activitiesEmails parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/EmailActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateEmailActivity' delete: operationId: delete summary: Delete an Email activity tags: - subpackage_activitiesEmails parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.emails_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/emailthread/: get: operationId: list summary: List or filter all EmailThread activities description: You'll get one object per email conversation (generally grouped by subject). tags: - subpackage_activitiesEmailThreads parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityEmailthreadGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityEmailthreadGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityEmailthreadGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityEmailthreadGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityEmailthreadGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityEmailthreadGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityEmailthreadGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityEmailthreadGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.email_threads_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/emailthread/{id}/: get: operationId: get summary: Get a single EmailThread activity tags: - subpackage_activitiesEmailThreads parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.email_threads_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type delete: operationId: delete summary: Delete an EmailThread activity description: This will also delete all the email activities belonging to this thread. tags: - subpackage_activitiesEmailThreads parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.email_threads_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/sms/: get: operationId: list summary: List or filter all SMS activities description: >- Get a list of matching SMS activities. MMS messages are considered SMS messages with attachments. Attachments have identical fields to email attachments (`url`, `filename`, `size` and `content_type`), a `media_id` uniquely identifying an attachment, and if Close was able to generate a thumbnail, a `thumbnail_url` too. Accessing `url` or `thumbnail_url` requires an authenticated session and leads to a temporarily signed S3 URL. tags: - subpackage_activitiesSms parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivitySmsGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivitySmsGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivitySmsGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivitySmsGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivitySmsGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivitySmsGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivitySmsGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivitySmsGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.sms_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create an SMS activity description: >- *status* must be one of the following: - `inbox` to log an already received SMS. - `draft` to create a draft SMS. - `scheduled` to send an SMS at a scheduled date and time, which must be specified in the `date_scheduled` field. - `outbox` to actually **send** an SMS. To delay SMS sending by a few seconds (to allow undo), specify `send_in` in seconds (must be less than 60). - `sent` to log an already sent SMS. Only drafts can be modified, and their status can be changed to `scheduled` (to send later) or `outbox` (to send immediately). Scheduled SMS, or SMS in outbox that weren't sent yet can be canceled by setting the status back to `draft`. You have to provide a `local_phone` that will be used to send the SMS. The number you choose has to be associated with a Phone Number of type `internal`. See the [Phone Numbers](https://developer.close.com/api/resources/phone-numbers) paragraph for more details. A `template_id` referencing an SMS Template may be provided instead of `text` to automatically render that template and use the content as `text`. When `direction` is not provided, but `status="inbox"`, `direction` will default to "inbound". Otherwise, `direction` defaults to "outbound". When creating a new SMS with the status set to `inbox`, you can pass the query parameter `send_to_inbox` with the value of `true` to create a corresponding Inbox Notification for the SMS. tags: - subpackage_activitiesSms parameters: - name: send_to_inbox in: query required: false schema: type: boolean - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/SMSActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateSMSActivity' /activity/sms/{id}/: get: operationId: get summary: Get a single SMS activity tags: - subpackage_activitiesSms parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/SMSActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an SMS activity description: >- This can be used to modify a draft or send it once the draft is complete. To send an SMS immediately, you can update its `status` to `outbox`. To send it at a later time, change the `status` to `scheduled` and provide the desired date & time in the `date_scheduled` field. tags: - subpackage_activitiesSms parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/SMSActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateSMSActivity' delete: operationId: delete summary: Delete an SMS activity tags: - subpackage_activitiesSms parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.sms_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/whatsapp_message/: get: operationId: list summary: List or filter all WhatsAppMessage activities description: Filter by `external_whatsapp_message_id` to find messages to update or delete based on changes in WhatsApp. tags: - subpackage_activitiesWhatsappMessages parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityWhatsappMessageGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityWhatsappMessageGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityWhatsappMessageGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityWhatsappMessageGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityWhatsappMessageGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityWhatsappMessageGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityWhatsappMessageGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityWhatsappMessageGetParametersActivityAtLt' - name: external_whatsapp_message_id in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.whatsapp_messages_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a WhatsAppMessage activity description: >- `external_whatsapp_message_id` must be the ID of the message inside WhatsApp. You can filter by this field to find messages in Close to update or delete based on updates or deletions in WhatsApp. `message_markdown` must be the body of the message in the WhatsApp Markdown format. The `message_html` read-only field will return the HTML representation of this message. To include an attachment, you must first upload the file to Close using the [Files API](https://developer.close.com/api/resources/files). Then, add an object to the `attachments` array with the following fields: `url`, `filename`, and `content_type`. The `url` should be the URL provided in the `download.url` field of the response from the [Files API](https://developer.close.com/api/resources/files). It must begin with `https://app.close.com/go/file/`. `integration_link` (optional) is a URL string that can be provided by the integration partner creating the WhatsApp message. This can be used to link back to the message in the external system. `response_to_id` (optional) is the Close activity ID of another WhatsApp message activity (not the WhatsApp native message ID) that this message is replying to. This field creates a thread relationship between messages, allowing you to track conversation flow and message replies within WhatsApp threads. The ID must be a valid WhatsApp message activity ID in Close (e.g., `acti_...`). Only WhatsApp Markdown messages and file attachments are supported. No support is provided for Polls, Events, Locations, etc. **Important**: The total size of all attachments for a single WhatsApp message activity cannot exceed 25MB. When creating a new WhatsApp message with the direction set to `incoming`, you can pass the query parameter `send_to_inbox` with the value of `true` to create a corresponding Inbox Notification for the message. tags: - subpackage_activitiesWhatsappMessages parameters: - name: send_to_inbox in: query required: false schema: type: boolean - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/WhatsAppMessageActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateWhatsAppMessage' /activity/whatsapp_message/{id}/: get: operationId: get summary: Get a single WhatsAppMessage activity tags: - subpackage_activitiesWhatsappMessages parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/WhatsAppMessageActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a WhatsAppMessage activity tags: - subpackage_activitiesWhatsappMessages parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/WhatsAppMessageActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateWhatsAppMessage' delete: operationId: delete summary: Delete a WhatsAppMessage activity tags: - subpackage_activitiesWhatsappMessages parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.whatsapp_messages_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/meeting/: get: operationId: list summary: List or filter all Meeting activities tags: - subpackage_activitiesMeetings parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityMeetingGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityMeetingGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityMeetingGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityMeetingGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityMeetingGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityMeetingGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityMeetingGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityMeetingGetParametersActivityAtLt' - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.meetings_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/meeting/{id}/: get: operationId: get summary: Get a single Meeting activity description: >- Meeting transcripts can be accessed using this API but are not loaded by default. To load transcripts, use the `_fields` parameter with `transcripts` value. The `transcripts` field is an array of objects for each Close Notetaker bot that joined the meeting. Typically, there will be only one transcript. Transcripts are ordered by the time bots joined the meeting. Example transcripts in response: ```json { "transcripts": [ { "utterances": [ { "speaker_label": "John Lead", "speaker_side": "contact", "start": 0.1, "end": 1.2, "text": "Hey, what's up? How is it going?" }, { "speaker_label": "Jane User", "speaker_side": "close-user", "start": 1.3, "end": 2.4, "text": "Hey John, I'm doing great. How about you?" } ], "summary_text": "Summary text", "summary_html": "

Summary text

" } ] } ``` tags: - subpackage_activitiesMeetings parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.meetings_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Meeting activity description: Most commonly this can be used to update a meetings's `user_note_html` or `outcome_id`. tags: - subpackage_activitiesMeetings parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.meetings_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Meeting activity tags: - subpackage_activitiesMeetings parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.meetings_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/meeting/{id}/integration/: post: operationId: create-integration summary: Create or update third-party Meeting integration description: >- Please note that only OAuth apps can perform this operation. Using API key will result in an error. See [Authentication with OAuth](https://developer.close.com/api/overview/oauth-authentication) for more information. Third party integrations are presented as tabs titled with OAuth app name in the activity feed. When invoked for the first time with a given OAuth app a new integration is created, subsequent calls with the same OAuth app will update an existing integration. Submitting an empty JSON body does nothing. tags: - subpackage_activitiesMeetings parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.meetings_createIntegration_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /activity/custom/: get: operationId: list summary: List or filter all Custom Activity instances description: >- Custom Fields appear in the format: `custom.{custom_field_id}`. See [Custom Fields](https://developer.close.com/api/resources/custom-fields/custom-fields-activity). If you're filtering by `custom_activity_type_id` or `custom_activity_type_id__in` parameter, the `lead_id` parameter will be required as well. If you want to retrieve all Custom Activity instances of a specific type regardless of the lead, you will need to get leads that contain such an activity type using [Advanced Filtering](https://developer.close.com/api/resources/advanced-filtering) and provide those Lead IDs one at a time to this endpoint. tags: - subpackage_activitiesCustomActivities parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityCustomGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityCustomGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityCustomGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityCustomGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityCustomGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityCustomGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityCustomGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityCustomGetParametersActivityAtLt' - name: custom_activity_type_id in: query required: false schema: type: - array - 'null' items: type: string - name: custom_activity_type_id__in in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.custom_activities_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new Custom Activity instance description: >- Custom Activity instances will be created by default with the 'published' status. All required fields will be validated in this status. To create an activity without setting all required fields, you can use the "draft" status. A Custom Activity can be pinned or unpinned by setting the `pinned` field to `true` or `false` when creating or updating a Custom Activity. tags: - subpackage_activitiesCustomActivities parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.custom_activities_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCustomActivity' /activity/custom/{id}/: get: operationId: get summary: Get a single Custom Activity instance tags: - subpackage_activitiesCustomActivities parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.custom_activities_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Updating a Custom Activity instance description: >- A Custom Activity can be updated to add, change or remove any Custom Fields and to change the status between "draft" and "published". A Custom Activity can be pinned or unpinned by setting the `pinned` field to `true` or `false` when creating or updating a Custom Activity. tags: - subpackage_activitiesCustomActivities parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.custom_activities_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateCustomActivity' delete: operationId: delete summary: Delete a Custom Activity instance tags: - subpackage_activitiesCustomActivities parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.custom_activities_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/created/: get: operationId: list summary: List or filter all Created activities tags: - subpackage_activitiesCreations parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityCreatedGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityCreatedGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityCreatedGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityCreatedGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityCreatedGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityCreatedGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityCreatedGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityCreatedGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.creations_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/created/{id}/: get: operationId: get summary: Get a single Created activity tags: - subpackage_activitiesCreations parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.creations_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/form_submission/: get: operationId: list summary: List or filter all FormSubmission activities description: >- Get a list of matching FormSubmission activities. In addition to standard Activity filtering parameters, you can filter by specific form(s) using the `form_id` or `form_id__in` parameters. tags: - subpackage_activitiesFormSubmissions parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityFormSubmissionGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityFormSubmissionGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityFormSubmissionGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityFormSubmissionGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityFormSubmissionGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityFormSubmissionGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityFormSubmissionGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityFormSubmissionGetParametersActivityAtLt' - name: lead_id__in in: query required: false schema: type: string - name: user_id__in in: query required: false schema: type: string - name: contact_id__in in: query required: false schema: type: string - name: _type__in in: query required: false schema: type: string - name: form_id in: query description: Filter by a specific form ID. required: false schema: type: - array - 'null' items: type: string - name: form_id__in in: query description: Filter by multiple form IDs (comma-separated). required: false schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.form_submissions_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/form_submission/{id}/: get: operationId: get summary: Get a single FormSubmission activity tags: - subpackage_activitiesFormSubmissions parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/FormSubmissionActivity' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a FormSubmission activity tags: - subpackage_activitiesFormSubmissions parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.form_submissions_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/status_change/lead/: get: operationId: list summary: List or filter all LeadStatusChange activities tags: - subpackage_activitiesLeadStatusChanges parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeLeadGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeLeadGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeLeadGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeLeadGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeLeadGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeLeadGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeLeadGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeLeadGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.lead_status_changes_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new LeadStatusChange activity description: >- Creating a lead status change does not change the lead's status. It only logs the status change event in the lead's activity feed. This should only be used to import historical status changes from another system. tags: - subpackage_activitiesLeadStatusChanges parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.lead_status_changes_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /activity/status_change/lead/{id}/: get: operationId: get summary: Get a single LeadStatusChange activity tags: - subpackage_activitiesLeadStatusChanges parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.lead_status_changes_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a single LeadStatusChange activity description: >- Deleting a LeadStatusChange does not change the status of the Lead. It only removes the status change event from the Lead's activity feed. It should only be used if the status change is irrelevant (such as records for a change that has been reverted) and having it in the activity feed is causing integration problems with another system. tags: - subpackage_activitiesLeadStatusChanges parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.lead_status_changes_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/status_change/opportunity/: get: operationId: list summary: List or filter all OpportunityStatusChange activities tags: - subpackage_activitiesOpportunityStatusChanges parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeOpportunityGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeOpportunityGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeOpportunityGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeOpportunityGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeOpportunityGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeOpportunityGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeOpportunityGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityStatusChangeOpportunityGetParametersActivityAtLt' - name: opportunity_id in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.opportunity_status_changes_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new OpportunityStatusChange activity description: >- Creating an opportunity status change does not change the opportunity's status. It only logs the status change event. This should only be used to import historical status changes from another system. tags: - subpackage_activitiesOpportunityStatusChanges parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.opportunity_status_changes_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /activity/status_change/opportunity/{id}/: get: operationId: get summary: Get a single OpportunityStatusChange activity tags: - subpackage_activitiesOpportunityStatusChanges parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.opportunity_status_changes_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a single OpportunityStatusChange activity description: >- Deleting an OpportunityStatusChange does not change the status of the Opportunity. It only removes the status change event from the Lead's activity feed. It should only be used if the status change is irrelevant (such as records for a change that has been reverted) and having it in the activity feed is causing integration problems with another system. tags: - subpackage_activitiesOpportunityStatusChanges parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.opportunity_status_changes_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/lead_merge/: get: operationId: list summary: List or filter all LeadMerge activities tags: - subpackage_activitiesLeadMerges parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityLeadMergeGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityLeadMergeGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityLeadMergeGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityLeadMergeGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityLeadMergeGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityLeadMergeGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityLeadMergeGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityLeadMergeGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.lead_merges_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/lead_merge/{id}/: get: operationId: get summary: Get a single LeadMerge activity tags: - subpackage_activitiesLeadMerges parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.lead_merges_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/task_completed/: get: operationId: list summary: List or filter all TaskCompleted activities tags: - subpackage_activitiesTaskCompletions parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: id__in in: query description: Filter by activity IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: lead_id in: query description: Filter by lead IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: contact_id in: query description: Filter by contact IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: user_id in: query description: Filter by user IDs (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: _type in: query description: Filter by activity type, e.g. Call (comma-separated) required: false schema: type: - array - 'null' items: type: string - name: date_created__gte in: query required: false schema: $ref: '#/components/schemas/ActivityTaskCompletedGetParametersDateCreatedGte' - name: date_created__lte in: query required: false schema: $ref: '#/components/schemas/ActivityTaskCompletedGetParametersDateCreatedLte' - name: date_created__gt in: query required: false schema: $ref: '#/components/schemas/ActivityTaskCompletedGetParametersDateCreatedGt' - name: date_created__lt in: query required: false schema: $ref: '#/components/schemas/ActivityTaskCompletedGetParametersDateCreatedLt' - name: activity_at__gte in: query required: false schema: $ref: '#/components/schemas/ActivityTaskCompletedGetParametersActivityAtGte' - name: activity_at__lte in: query required: false schema: $ref: '#/components/schemas/ActivityTaskCompletedGetParametersActivityAtLte' - name: activity_at__gt in: query required: false schema: $ref: '#/components/schemas/ActivityTaskCompletedGetParametersActivityAtGt' - name: activity_at__lt in: query required: false schema: $ref: '#/components/schemas/ActivityTaskCompletedGetParametersActivityAtLt' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.task_completions_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /activity/task_completed/{id}/: get: operationId: get summary: Get a single TaskCompleted activity tags: - subpackage_activitiesTaskCompletions parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.task_completions_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a TaskCompleted activity tags: - subpackage_activitiesTaskCompletions parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/activities.task_completions_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /webhook/: get: operationId: list summary: List Webhook subscriptions description: List all webhook subscriptions for the organization. tags: - subpackage_webhooks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/webhooks_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create new Webhook subscription description: |- The subscription will send events to the specified URL. Parameters: - `url` - Destination URL for the webhook subscription - `events` - A list of events to subscribe to. Each event has an `object_type` and an `action` from values in the [event log](https://developer.close.com/api/resources/events/list-of-event-types). You can also use [Webhook Filters](https://developer.close.com/api/resources/webhooks/webhook-filters) while creating your subscription so that an event only fires to a Webhook when certain conditions are met. - `verify_ssl` (optional) - `true` (default) - Verify SSL certificate of destination webhook URL. - `false` - Disable SSL certificate validation on destination webhook URL. We recommend using https to protect your data during delivery. tags: - subpackage_webhooks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/webhooks_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateWebhook' /webhook/{id}/: get: operationId: get summary: Retrieve a single Webhook subscription description: The response contains the subscription details. tags: - subpackage_webhooks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/webhooks_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update existing Webhook subscription description: |- All parameters are optional. Only the parameters that are provided will be updated. Parameters: - `url` - Destination URL for the webhook subscription - `events` - A list of events to subscribe to. Each event has an `object_type` and an `action` from values in the [event log](https://developer.close.com/api/resources/events/list-of-event-types). You can also use [Webhook Filters](https://developer.close.com/api/resources/webhooks/webhook-filters) while creating your subscription so that an event only fires to a Webhook when certain conditions are met. - `status` - Subscription status - `active` - activate the subscription - `paused` - pause the subscription - `verify_ssl` - `false` - Disable SSL certificate validation on destination webhook URL. We recommend using https to protect your data during delivery. - `true` - Verify SSL certificate of destination webhook URL. tags: - subpackage_webhooks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/webhooks_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete Webhook subscription tags: - subpackage_webhooks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/webhooks_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /event/: get: operationId: list summary: Retrieve a list of events description: >- The list of available object types and actions is available [here](https://developer.close.com/api/resources/events/list-of-event-types). The event log can be filtered by the following parameters: - `date_updated`: The date/time of when the event was last updated, in ISO format. Can be filtered by range (`date_updated__gte=X&date_updated__lte=Y`). Note: For pagination, it is recommended to use cursors instead of this filter (see below). - `object_type`: If specified, only events for objects of a given type are returned. Example: `object_type=lead` - `object_id`: If specified, only events for the given object are returned. No related object events are returned. Example: `object_id=lead_123` - `action`: Only events of specified actions are returned. Example: `action=deleted` - `lead_id`: If specified, events for the given lead, including any of its related objects (contacts, activities, opportunities, tasks) are returned. - `user_id`: Only return events of the given user. - `request_id`: Only events emitted while processing this specific API request. Only certain combinations of filters are supported. `date_updated` can be optionally used with any allowed filter combination. Supported combinations are: - `object_type` and `object_id` - `object_type` and `action` - `object_id` and `action` - `lead_id` and `object_type` - `lead_id`, `object_type` and `action` - `lead_id`, `user_id` and `object_type` - `lead_id`, `user_id`, `object_type` and `action` - `lead_id` and `user_id` - `user_id` and `object_id` - `user_id`, `object_id` and `action` - `user_id` and `object_type` - `user_id`, `object_type` and `action` - Just `lead_id` - Just `user_id` - Just `request_id` The response is a dictionary with the following fields: - `data`: A list of events (dictionaries), using the format outlined in “Event format”. - `cursor_next`: Cursor string to retrieve the next page of events, i.e. events before the given ID (earlier date), or `null` if no more objects are available. - `cursor_previous`: Cursor string to retrieve the previous page of events, i.e. events after the given ID (later date), or `null` if no more objects are available. Events are always ordered by date (latest first), i.e. the `date_updated` field. Note that even though `date_created` and `date_updated` may only have millisecond-precision, two or more events for the same object are guaranteed to be returned in the proper order. The endpoint supports the following parameters for pagination, and does *not* support `_skip`: - `_cursor`: Pagination using a cursor string (`cursor_next` or `cursor_previous` from a previous response). Note that you still need to supply any other filters (except for `date_updated`) that were used in the previous query. - `_limit`: Maximum number of events to return (capped at and defaulting to 50). Cursors are a reliable way to go to the next or previous page of events (unlike filtering by `date_updated`, where you may need to account for and filter out multiple events happening in the same millisecond). However, cursors are not designed to stream new events: Events may be visible through the API in a different order than they were triggered (but the ordering returned by the API is correct). Also, event consolidation of multiple recent events to the same object may occur. To avoid missing recent events when paginating, we recommend to scan the latest five minutes of events. In the example response, to retrieve the next older batch of events, specify `_cursor=cursor2`. tags: - subpackage_events parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: object_type in: query required: false schema: type: - string - 'null' - name: object_id in: query required: false schema: type: - string - 'null' - name: lead_id in: query required: false schema: type: - string - 'null' - name: action in: query required: false schema: type: - string - 'null' - name: user_id in: query required: false schema: type: - string - 'null' - name: date_updated__gt in: query required: false schema: type: - string - 'null' - name: date_updated__gte in: query required: false schema: type: - string - 'null' - name: date_updated__lt in: query required: false schema: type: - string - 'null' - name: date_updated__lte in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/events_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /event/{id}/: get: operationId: get summary: Retrieve a single event by ID description: The response contains a dictionary with a single event, using the format outlined in “Event format”. tags: - subpackage_events parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/events_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /saved_search/: get: operationId: list summary: List Smart Views description: |- Accepts: - A `type` filter that accepts either `lead` or `contact`. Defaults to `lead`. - A `type__in` filter that can be used to select multiple comma-separated types: `lead,contact`. tags: - subpackage_smartViews parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: type in: query required: false schema: oneOf: - $ref: '#/components/schemas/SavedSearchType' - type: 'null' - name: type__in in: query required: false schema: type: array items: $ref: '#/components/schemas/SavedSearchType' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/smart_views_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a Smart View description: >- Create a Lead or Contact Smart View. For Lead Smart Views, the `type` field is optional (since `lead` is the default `type`). When creating a Smart View, you must specify that you want to get objects of the appropriate type via an `object_type` clause as per the [Advanced Filtering](https://developer.close.com/api/resources/advanced-filtering) section. See the examples below. tags: - subpackage_smartViews parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/SavedSearch' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /saved_search/{id}/: get: operationId: get summary: Get a single Smart View tags: - subpackage_smartViews parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/SavedSearch' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Smart View tags: - subpackage_smartViews parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/SavedSearch' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Smart View tags: - subpackage_smartViews parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/smart_views_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /report/activity/: post: operationId: get-activity summary: Get an activity report description: >- The activity report returns the organization's metrics per time period (**overview** report) or user (**comparison** report). Every report accepts the following parameters: * `datetime_range`: a time range to fetch data for. Either this field or `relative_range` needs to be specified. * `relative_range`: a relative time range to fetch data for. The allowed values are: `today`, `this-week`, `this-month`, `this-quarter`, `this-year`, `yesterday`, `last-week`, `last-month`, `last-quarter`, `last-year`, and `all-time`. Either this field or `datetime_range` needs to be specified. * `query`: a query to apply to the report to filter out data. The value of the field is a dictionary with the key `type` and any type-specific keys. For now only the type `saved_search` is allowed which takes the extra key `saved_search_id` to specify the ID of a saved search. This parameter is *optional*. * `users`: a list of user IDs to limit the report results to. This parameter is *optional*. * `type`: the type of the report. The available values are `overview` and `comparison`. This parameter is *mandatory*. * `metrics`: a list of metrics (see [above](#list-the-predefined-metrics-used-in-activity-reports)) to fetch for the report. This parameter is *mandatory*. The report can be requested either in a JSON format or in a CSV file. The format can be specified with the `accept` header. tags: - subpackage_reporting parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/reporting_getActivity_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /report/activity/metrics/: get: operationId: list-activity-metrics summary: List the predefined metrics used in activity reports description: List available metrics that can be used in activity reports. tags: - subpackage_reporting parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/reporting_listActivityMetrics_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /report/custom/{org_id}/: get: operationId: get-custom summary: Get custom report (Explorer) description: |- This endpoint returns data that allows graphing of arbitrary metrics and is what powers "Explorer" in the UI. - `query` is an optional search query filter. When reporting on leads, any regular lead search query may be used. When reporting on activities or opportunities, only properties of the chosen object type may be used. For example, `direction:incoming` may be used if `x` starts with `email.`. Defaults to `*`, which includes all objects. - `y` is made up of the object type and field which is reported on the Y axis. For example the value `lead.count` (used by default) may be used to graph the number of leads, or a numeric field may be used. Examples: `call.duration` (for call length), `opportunity.value` (for value of opportunities). - `x` is the field which is reported on the X axis, for example "lead.custom.MRR" or "opportunity.date_created". - `interval`: Graph interval, i.e. the precision of the X axis. For time based graphs (`x` is a date field), one of `auto`, `hour`, `day`, `week`, `month`, `quarter`, `year` (defaults to `auto`, which is chosen based on `start` and `end`). For graphs with a numeric X axis, an integer number can be specified to indicate the histogram interval (`auto` by default). - `group_by`: Optional field name by which the report will be grouped. When grouping, a separate series will be returned for each group. By default no grouping is applied. - `transform_y`: Transformation function that gets applied to the `y` parameter. One of `sum` (default), `avg`, `min`, or `max`. Does not apply for `.count` `y` values if `x` is of the same object type. - `start`: Date or integer of the start of the X axis range. For dates, defaults to the date of creation of your organization. - `end`: Date or integer of the end of the X axis range. For dates, defaults to now. To get a full list of fields that can be used, do a GET to `/report/custom/fields/`. Only the `number` data type can be used for the `y` parameter. tags: - subpackage_reporting parameters: - name: org_id in: path required: true schema: type: string - name: query in: query required: false schema: type: string - name: x in: query required: false schema: type: string - name: 'y' in: query required: false schema: type: string - name: group_by in: query required: false schema: type: string - name: transform_y in: query required: false schema: $ref: '#/components/schemas/ReportCustomOrgIdGetParametersTransformY' - name: interval in: query required: false schema: type: string - name: start in: query required: false schema: type: string - name: end in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/reporting_getCustom_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /report/funnel/opportunity/stages/: post: operationId: get-funnel-stages summary: Get a funnel report (stages) description: >- The opportunity funnel "stages" report returns the pipeline funnel's metrics for the selected opportunities, aggregated (JSON format only) and per-user (JSON and CSV formats). Every report accepts the following parameters: * `pipeline`: ID of the pipeline defining the funnel statuses. * `type`: the type of the report. The available values are `created-cohort` and `active-stage-cohort`. * `report_relative_range`: a relative time range to fetch data for. The allowed values are: `today`, `this-week`, `this-month`, `this-quarter`, `this-year`, `yesterday`, `last-week`, `last-month`, `last-quarter`, `last-year`, and `all-time`. * `report_datetime_range`: a time range to fetch data for. * `cohort_relative_range`: a relative time range defining the cohort of created opportunities to fetch data for, by date of creation of those opportunities. The allowed values are: `today`, `this-week`, `this-month`, `this-quarter`, `this-year`, `yesterday`, `last-week`, `last-month`, `last-quarter`, `last-year`, and `all-time`. Either this field or `cohort_datetime_range` needs to be specified for `created-cohort` reports. Its value will be ignored for `active-stage-cohort` reports. * `cohort_datetime_range`: a time range defining the cohort of created opportunities to fetch data for, by date of creation of those opportunities. Either this field or `cohort_relative_range` needs to be specified for `created-cohort` reports. Its value will be ignored for `active-stage-cohort` reports. * `compared_relative_range`: a relative time range to fetch comparison data for. Only allowed in combination with `report_relative_range` (for `active-stage-cohort` reports) or `cohort_relative_range` (for `created-cohort` reports). The allowed values are: `today`, `this-week`, `this-month`, `this-quarter`, `this-year`, `yesterday`, `last-week`, `last-month`, `last-quarter`, `last-year`, and `all-time`. * `compared_datetime_range`: a relative time range to fetch comparison data for. Only allowed in combination with `report_datetime_range` (for `active-stage-cohort` reports) or `cohort_datetime_range` (for `created-cohort` reports). The allowed values are: `same-days-last-week`, `same-days-last-month`, `same-days-last-quarter`, `same-days-last-year`. * `compared_custom_range`: a time range to fetch comparison data for. * `query`: a query to apply to the report to filter out data. The value of the field is a dictionary with the key `type` and any type-specific keys. For now only the type `saved_search` is allowed which takes the extra key `saved_search_id` to specify the ID of a saved search. This parameter is *optional*. * `users`: a list of user IDs or group IDs to limit the report results to. When it's empty, the report will include all the available users. This parameter is *optional*. The report can be requested either in JSON format or in CSV format. The format can be specified with the `accept` header. In JSON format, it includes aggregated and per-user data. When requested in CSV format, it includes only per-user data. When `compared_datetime_range`, `compared_relative_range`, or `compared_custom_range` are used, the report returned is the compared one, not the base one. tags: - subpackage_reporting parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/reporting_getFunnelStages_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /report/funnel/opportunity/totals/: post: operationId: get-funnel-totals summary: Get a funnel report (totals) description: >- The opportunity funnel "totals" report returns the pipeline funnel's metrics for the selected opportunities, aggregated (JSON format only) and per-user (JSON and CSV formats). Every report accepts the following parameters: * `pipeline`: ID of the pipeline defining the funnel statuses. * `type`: the type of the report. The available values are `created-cohort` and `active-stage-cohort`. * `report_relative_range`: a relative time range to fetch data for. The allowed values are: `today`, `this-week`, `this-month`, `this-quarter`, `this-year`, `yesterday`, `last-week`, `last-month`, `last-quarter`, `last-year`, and `all-time`. * `report_datetime_range`: a time range to fetch data for. * `cohort_relative_range`: a relative time range defining the cohort of created opportunities to fetch data for, by date of creation of those opportunities. The allowed values are: `today`, `this-week`, `this-month`, `this-quarter`, `this-year`, `yesterday`, `last-week`, `last-month`, `last-quarter`, `last-year`, and `all-time`. Either this field or `cohort_datetime_range` needs to be specified for `created-cohort` reports. Its value will be ignored for `active-stage-cohort` reports. * `cohort_datetime_range`: a time range defining the cohort of created opportunities to fetch data for, by date of creation of those opportunities. Either this field or `cohort_relative_range` needs to be specified for `created-cohort` reports. Its value will be ignored for `active-stage-cohort` reports. * `compared_relative_range`: a relative time range to fetch comparison data for. Only allowed in combination with `report_relative_range` (for `active-stage-cohort` reports) or `cohort_relative_range` (for `created-cohort` reports). The allowed values are: `today`, `this-week`, `this-month`, `this-quarter`, `this-year`, `yesterday`, `last-week`, `last-month`, `last-quarter`, `last-year`, and `all-time`. * `compared_datetime_range`: a relative time range to fetch comparison data for. Only allowed in combination with `report_datetime_range` (for `active-stage-cohort` reports) or `cohort_datetime_range` (for `created-cohort` reports). The allowed values are: `same-days-last-week`, `same-days-last-month`, `same-days-last-quarter`, `same-days-last-year`. * `compared_custom_range`: a time range to fetch comparison data for. * `query`: a query to apply to the report to filter out data. The value of the field is a dictionary with the key `type` and any type-specific keys. For now only the type `saved_search` is allowed which takes the extra key `saved_search_id` to specify the ID of a saved search. This parameter is *optional*. * `users`: a list of user IDs or group IDs to limit the report results to. When it's empty, the report will include all the available users. This parameter is *optional*. The report can be requested either in JSON format or in CSV format. The format can be specified with the `accept` header. In JSON format, it includes aggregated and per-user data. When requested in CSV format, it includes only per-user data. When `compared_datetime_range`, `compared_relative_range`, or `compared_custom_range` are used, the report returned is the compared one, not the base one. tags: - subpackage_reporting parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/reporting_getFunnelTotals_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /report/sent_emails/{org_id}/: get: operationId: get-sent-emails summary: Get sent emails report tags: - subpackage_reporting parameters: - name: org_id in: path required: true schema: type: string - name: date_start in: query required: false schema: type: string - name: date_end in: query required: false schema: type: string - name: user_id in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/reporting_getSentEmails_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /report/statuses/lead/{org_id}/: get: operationId: get-lead-statuses summary: Get lead status change report description: |- Get a lead status change report. The date range is optional. A report may be requested for a specific time period or overall. You can specify either a `query` or `smart_view_id` (but not both) to filter leads included in the report. The following fields are returned (when requesting an overall report, some inapplicable fields will not be returned): * `status_overview`: A list of all statuses with: * `status_id`, `status_label`, `status_is_deleted`: The ID and label of the status, and whether it was deleted. * `started`: Number of leads in this status at the start of the period. * `ended`: Number in this status at the end. * `change`: Net change during the period (`ended` minus `started`). * `change_percent`: Net change in percent. * `gained`: Number that were not in this status at the beginning but were at the end. * `lost`: Number that were in this status at the beginning but were not at the end. * `entered`: Number that entered this status at some point during the period. * `left`: Number that left this status at some point during the period. * `_queries`: A dictionary containing search queries for the different states (`started`, `ended`, `gained`, `lost`, `entered`, `left`). * `_leads_page_urls`: A dictionary containing paths to the lead search UI page. * `status_transitions`: A list of all status transitions (aggregated by start/end status) for the given period with: * `from_status_id`, `from_status_label`, `from_status_is_deleted`: Starting status (null for created leads). * `to_status_id`, `to_status_label`, `to_status_is_deleted`: Ending status. * `count`: The number that transitioned. * `_query`: The search query for those records. * `_leads_page_url`: Path to the search UI page. * `status_transitions_summary`: Status transitions summarized for the period. E.g. a lead that went A→B→C is counted as A→C. tags: - subpackage_reporting parameters: - name: org_id in: path required: true schema: type: string - name: date_start in: query required: false schema: type: string - name: date_end in: query required: false schema: type: string - name: query in: query required: false schema: type: string - name: smart_view_id in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/reporting_getLeadStatuses_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /report/statuses/opportunity/{org_id}/: get: operationId: get-opportunity-statuses summary: Get opportunity status change report description: |- Get an opportunity status change report. The date range is optional. A report may be requested for a specific time period or overall. You can specify either a `query` or `smart_view_id` (but not both) to filter opportunities included in the report. The report may optionally be filtered by the opportunity user. The following fields are returned (when requesting an overall report, some inapplicable fields will not be returned): * `status_overview`: A list of all statuses with: * `status_id`, `status_label`, `status_is_deleted`: The ID and label of the status, and whether it was deleted. * `started`: Number of opportunities in this status at the start of the period. * `ended`: Number in this status at the end. * `change`: Net change during the period (`ended` minus `started`). * `change_percent`: Net change in percent. * `gained`: Number that were not in this status at the beginning but were at the end. * `lost`: Number that were in this status at the beginning but were not at the end. * `entered`: Number that entered this status at some point during the period. * `left`: Number that left this status at some point during the period. * `_queries`: A dictionary containing search queries for the different states (`started`, `ended`, `gained`, `lost`, `entered`, `left`). Search queries are wrapped in a nested `opportunity(...)` clause. To pass the query to the opportunities API endpoint, use only the query within the parentheses. * `_leads_page_urls`: A dictionary containing paths to the lead search UI page. * `_opportunities_page_urls`: A dictionary containing paths to the opportunity UI page. * `status_transitions`: A list of all status transitions (aggregated by start/end status) for the given period with: * `from_status_id`, `from_status_label`, `from_status_is_deleted`: Starting status (null for created opportunities). * `to_status_id`, `to_status_label`, `to_status_is_deleted`: Ending status. * `count`: The number that transitioned. * `_query`: The search query for those records. * `_leads_page_url`: Path to the search UI page. * `_opportunities_page_url`: Path to the opportunity UI page. * `status_transitions_summary`: Status transitions summarized for the period. E.g. an opportunity that went A→B→C is counted as A→C. tags: - subpackage_reporting parameters: - name: org_id in: path required: true schema: type: string - name: date_start in: query required: false schema: type: string - name: date_end in: query required: false schema: type: string - name: query in: query required: false schema: type: string - name: smart_view_id in: query required: false schema: type: string - name: user_id in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/reporting_getOpportunityStatuses_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /sequence/: get: operationId: list summary: List Sequences tags: - subpackage_sequences parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a Sequence tags: - subpackage_sequences parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /sequence/{id}/: get: operationId: get summary: Fetch a Sequence tags: - subpackage_sequences parameters: - name: id in: path required: true schema: type: string - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Sequence description: >- **Note**: If you include `steps` in the payload and exclude some of the existing steps in your sequence, it will remove those steps from the sequence entirely. tags: - subpackage_sequences parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Sequence tags: - subpackage_sequences parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /sequence_subscription/: get: operationId: list-subscriptions summary: List Sequence Subscriptions description: At least one of `sequence_id`, `contact_id`, and `lead_id` is required. tags: - subpackage_sequences parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: contact_id in: query required: false schema: type: string - name: lead_id in: query required: false schema: type: string - name: sequence_id in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_listSubscriptions_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create-subscription summary: Subscribe a Contact to a Sequence tags: - subpackage_sequences parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_createSubscription_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /sequence_subscription/{id}/: get: operationId: get-subscription summary: Fetch a single Sequence Subscription tags: - subpackage_sequences parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_getSubscription_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update-subscription summary: Update a specific Subscription tags: - subpackage_sequences parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sequences_updateSubscription_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /bulk_action/email/: get: operationId: list summary: List bulk emails tags: - subpackage_bulkActionsEmail parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: template_id in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/bulk_actions.email_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Initiate a new bulk email description: >- `contact_preference` can be set to `lead` (only email the primary/first contact email of the lead) or `contact` (email the first contact email of each contact of the lead). tags: - subpackage_bulkActionsEmail parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BulkEmailAction' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /bulk_action/email/{id}/: get: operationId: get summary: Fetch a single bulk email object tags: - subpackage_bulkActionsEmail parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BulkEmailAction' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /bulk_action/edit/: get: operationId: list summary: List bulk edits tags: - subpackage_bulkActionsEdit parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/bulk_actions.edit_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Initiate a new bulk edit description: |- Pass additional parameters depending on which `type` is passed: - `set_lead_status` will set the Lead Status on all leads. It expects: - `lead_status_id` - ID of the Lead Status to use. - `clear_custom_field` will clear/remove/unset a specific custom field from all leads. It expects: - `custom_field_id` or `custom_field_name` - ID or exact name of the custom field to remove. - `set_custom_field` will set/update/add a specific custom field on all leads. It expects: - `custom_field_id` or `custom_field_name` - ID or exact name of the custom field to set/update. - `custom_field_value` - New value. Use `custom_field_values` to pass multiple values to custom fields that support it. - `custom_field_operation` - `replace`, `add`, or `remove` (defaults to `replace`). Only applicable for custom fields that accept multiple values. Use `"send_done_email": false` if you don't want to get a confirmation email after the bulk action is done. tags: - subpackage_bulkActionsEdit parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BulkEditAction' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /bulk_action/edit/{id}/: get: operationId: get summary: Fetch a single bulk edit object tags: - subpackage_bulkActionsEdit parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BulkEditAction' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /bulk_action/delete/: get: operationId: list summary: List bulk deletes tags: - subpackage_bulkActionsDelete parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/bulk_actions.delete_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Initiate a new bulk delete description: 'Use `"send_done_email": false` if you don''t want to get a confirmation email after the bulk action is done.' tags: - subpackage_bulkActionsDelete parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BulkDeleteAction' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /bulk_action/delete/{id}/: get: operationId: get summary: Fetch a single bulk delete object tags: - subpackage_bulkActionsDelete parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BulkDeleteAction' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /bulk_action/sequence_subscription/: get: operationId: list summary: List bulk sequence subscriptions tags: - subpackage_bulkActionsSequenceSubscriptions parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/bulk_actions.sequence_subscriptions_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Initiate a new bulk sequence subscription description: >- `action_type` must be one of: - `subscribe` to create a new sequence subscription for contacts that have never received the given sequence. - `resume` to resume any paused sequence subscriptions for the given sequence or all sequences if `sequence_id` is not provided. - `resume_finished` to resume any finished sequence subscriptions for the given sequence or all sequences if `sequence_id` is not provided. - `pause` to pause any active sequence subscriptions for the given sequence or all sequences if `sequence_id` is not provided. `sequence_id`, `sender_account_id`, `sender_name`, `sender_email` and `contact_preference` are required if `action_type` is `subscribe`. `contact_preference` can be set to: - `lead` to only subscribe the primary/first contact email of the lead. - `contact` to subscribe the primary email of each contact of the lead. tags: - subpackage_bulkActionsSequenceSubscriptions parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BulkSequenceSubscriptionAction' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /bulk_action/sequence_subscription/{id}/: get: operationId: get summary: Fetch a single bulk sequence subscription object tags: - subpackage_bulkActionsSequenceSubscriptions parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BulkSequenceSubscriptionAction' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /export/: get: operationId: list summary: List all the exports tags: - subpackage_exports parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/exports_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /export/lead/: post: operationId: create-lead summary: Export leads based on a search query description: >- You will receive a link to the generated file via email once the export is done. The exported file is GZIP compressed to make your download and our upload faster. The `content-encoding` HTTP header will be set to `gzip` and the `content-type` HTTP header will be set to `text/csv` for CSV exports or `application/json` for JSON exports. Parameters: - `s_query/results_limit/sort` (optional) - The [Advanced Filtering API](https://developer.close.com/api/resources/advanced-filtering) parameters used to narrow the exported results down. By default, all leads are exported. - `format` - Format of the exported file. The choices are: `csv`, `json`. JSON is recommended for raw backups or data migrations. - `type` - Type of the export. - `leads` - For CSV exports, it results in one row per lead. For JSON exports, this is the recommended type and is a superset of the other two types. - `contacts` - For CSV exports, it results in one row per contact. - `lead_opps` - For CSV exports, it results in one row per opportunity. - `date_format` (optional) - Controls the format of date objects. Note: this only works with the `csv` format. - `original` (default) - A date format that includes microseconds and timezone information. - Date: `[YYYY]-[MM]-[DD]` - Date w/ time: `[YYYY]-[MM]-[DD] [hh]:[mm]:[ss.sssss]±[hh]:[mm]` - `iso8601` (recommended) - An [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compatible date representation that does not include microseconds. - Date: `[YYYY]-[MM]-[DD]` - Date w/ time: `[YYYY]-[MM]-[DD]T[hh]:[mm]:[ss]±[hh]:[mm]` - `excel` - An Excel compatible date format. Dates are always in UTC, do not include timezone information or microseconds, and use a 12 hour clock with an AM or PM designation. - Date: `[YYYY]-[MM]-[DD]` - Date w/ time: `[YYYY]-[MM]-[DD] [hh]:[mm]:[ss] [AM|PM]` - `fields` (optional) - By default we return all the data fields in each export type. If you only need specific fields exported, you can explicitly list them in `fields` to get smaller exports. - `include_activities` (optional) - Activities aren't included in any exports by default. If you want all your Activities exported as well, pass `"include_activities": true`. Note: this only works for `leads` type with `json` format. - `include_smart_fields` (optional) - Smart Fields aren't included in any exports by default. If you want all of them exported as well, pass `"include_smart_fields": true`. Note: this only works for `leads` type with `json` format or any type formatted as `csv`. Smart fields are calculated fields, like number of emails on a lead. - `send_done_email` - Set to `false` if you don't want to get a confirmation email after the bulk action is done. tags: - subpackage_exports parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/exports_createLead_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateExportFlags' /export/opportunity/: post: operationId: create-opportunity summary: Export opportunities, based on opportunity filters description: |- Parameters: - `params` (optional) - A dictionary of filters, which would be used for the `/opportunity/` endpoint. - `format` - Format of the exported file. The choices are: `csv`, `json` - `date_format` (optional) - Controls the format of date objects. Note: this only works with the `csv` format. - `original` (default) - A date format that includes microseconds and timezone information. - Date: `[YYYY]-[MM]-[DD]` - Date w/ time: `[YYYY]-[MM]-[DD] [hh]:[mm]:[ss.sssss]±[hh]:[mm]` - `iso8601` (recommended) - An [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compatible date representation that does not include microseconds. - Date: `[YYYY]-[MM]-[DD]` - Date w/ time: `[YYYY]-[MM]-[DD]T[hh]:[mm]:[ss]±[hh]:[mm]` - `excel` - An Excel compatible date format. Dates are always in UTC, do not include timezone information or microseconds, and use a 12 hour clock with an AM or PM designation. - Date: `[YYYY]-[MM]-[DD]` - Date w/ time: `[YYYY]-[MM]-[DD] [hh]:[mm]:[ss] [AM|PM]` - `fields` (optional) - By default we return all the data fields. If you only need specific fields exported, you can explicitly list them in fields to get smaller exports. - `send_done_email` - Set to `false` if you don't want to get a confirmation email after the bulk action is done. tags: - subpackage_exports parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/exports_createOpportunity_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateExportFlags' /export/{id}/: get: operationId: get summary: Get a single Export description: |- You can get a single export to do things like check its `status` or get a `download_url` - `status` can have one of these values: `created`, `started`, `in_progress`, `done`, `error`. tags: - subpackage_exports parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/exports_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /enrich_field/: post: operationId: create summary: Enrich a specific field on a lead or contact using AI description: >- This endpoint uses AI to enrich (populate or enhance) a specific field on a lead or contact. The enrichment process analyzes existing data and external sources to provide intelligent field values. **Parameters:** - `organization_id` (required): The organization ID - `object_type` (required): Either "lead" or "contact" - `object_id` (required): The ID of the lead or contact to enrich - `field_id` (required): The ID of the custom field to enrich - `set_new_value` (optional): Whether to update the field with the enriched value (default: true) - `overwrite_existing_value` (optional): Whether to overwrite existing field values (default: false) tags: - subpackage_fieldEnrichment parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/field_enrichment_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/RunFieldEnrichment' /custom_field_schema/{object_type}/: get: operationId: get summary: Retrieve a custom field schema tags: - subpackage_customFieldSchemas parameters: - name: object_type in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_field_schemas_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a custom field schema description: >- To reorder Custom Fields (and thus change the order in which they are displayed in the Close UI), you simply need to supply a `fields` list with `{"id": ...}` items corresponding to the IDs of the Custom Fields belonging to the given Schema. Note that any IDs that are omitted from the list with be automatically appended to the end of the list. If you want to remove some Fields from the Schema, then delete the Custom Field or – in case of Shared Custom Fields – disassociate the Field from the given object. tags: - subpackage_customFieldSchemas parameters: - name: object_type in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_field_schemas_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_field/lead/: get: operationId: list summary: List Lead Custom Fields description: List all the lead custom fields for your organization. tags: - subpackage_customFieldsLead parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.lead_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new Lead Custom Field tags: - subpackage_customFieldsLead parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.lead_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_field/lead/{id}/: get: operationId: get summary: Fetch Lead Custom Field's details tags: - subpackage_customFieldsLead parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.lead_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Lead Custom Field description: >- You can rename it, change its type, change whether it accepts multiple values or not, change whether editing its values is restricted to specific Roles, or update the options for a "choices" field type. The updated name will immediately appear in the Close UI and only valid values for the updated `type` will be returned by the Lead API. Some of the type changes need to convert all of the existing values for a given Custom Field to the new type. When this is required, the response will include an additional `converting_to_type` field. When the conversion is done, `converting_to_type` will no longer be returned. tags: - subpackage_customFieldsLead parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.lead_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Lead Custom Field description: >- Delete a lead custom field. The field will immediately disappear from API responses and values on existing leads will be permanently removed. tags: - subpackage_customFieldsLead parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.lead_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /custom_field/contact/: get: operationId: list summary: List Contact Custom Fields description: List all the contact custom fields for your organization. tags: - subpackage_customFieldsContact parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.contact_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new Contact Custom Field tags: - subpackage_customFieldsContact parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.contact_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_field/contact/{id}/: get: operationId: get summary: Fetch Contact Custom Field's details tags: - subpackage_customFieldsContact parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.contact_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Contact Custom Field description: >- You can rename it, change its type, change whether it accepts multiple values or not, change whether editing its values is restricted to specific Roles, or update the options for a "choices" field type. The updated name will immediately appear in the Close UI and only valid values for the updated `type` will be returned by the Contact API. Some of the type changes need to convert all of the existing values for a given Custom Field to the new type. When this is required, the response will include an additional `converting_to_type` field. When the conversion is done, `converting_to_type` will no longer be returned. tags: - subpackage_customFieldsContact parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.contact_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Contact Custom Field description: >- Delete a contact custom field. The field will immediately disappear from API responses and values on existing contacts will be permanently removed. tags: - subpackage_customFieldsContact parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.contact_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /custom_field/opportunity/: get: operationId: list summary: List Opportunity Custom Fields description: List all the opportunity custom fields for your organization. tags: - subpackage_customFieldsOpportunity parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.opportunity_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new Opportunity Custom Field tags: - subpackage_customFieldsOpportunity parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.opportunity_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_field/opportunity/{id}/: get: operationId: get summary: Fetch Opportunity Custom Field's details tags: - subpackage_customFieldsOpportunity parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.opportunity_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an Opportunity Custom Field description: >- You can rename it, change its type, change whether it accepts multiple values or not, change whether editing its values is restricted to specific Roles, or update the options for a "choices" field type. The updated name will immediately appear in the Close UI and only valid values for the updated `type` will be returned by the Contact API. Some of the type changes need to convert all of the existing values for a given Custom Field to the new type. When this is required, the response will include an additional `converting_to_type` field. When the conversion is done, `converting_to_type` will no longer be returned. tags: - subpackage_customFieldsOpportunity parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.opportunity_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete an Opportunity Custom Field description: >- Delete an opportunity custom field. The field will immediately disappear from API responses and values on existing opportunities will be permanently removed. tags: - subpackage_customFieldsOpportunity parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.opportunity_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /custom_field/activity/: get: operationId: list summary: List Activity Custom Fields description: List all the activity custom fields for your organization. tags: - subpackage_customFieldsActivity parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.activity_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new Activity Custom Field description: |- Activity Custom Fields belong to Custom Activities, and have additional attributes: - `custom_activity_type_id` – the ID of the Custom Activity Type this Field should belong to. - `required` – whether the Field will be required to publish the activity. tags: - subpackage_customFieldsActivity parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.activity_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_field/activity/{id}/: get: operationId: get summary: Fetch Activity Custom Field's details tags: - subpackage_customFieldsActivity parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.activity_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an Activity Custom Field description: >- You can rename it, change whether it accepts multiple values or not, change the "required" flag, change whether editing its values is restricted to specific Roles, or update the options for a "choices" field type. The updated name will immediately appear in the Close UI and only valid values for the updated `type` will be returned by the Custom Activity API. The `custom_activity_type_id` and `type` values cannot be changed. tags: - subpackage_customFieldsActivity parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.activity_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete an Activity Custom Field description: >- Delete an activity custom field. The field will immediately disappear from API responses and values on existing activities will be permanently removed. tags: - subpackage_customFieldsActivity parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.activity_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /custom_field/custom_object_type/: get: operationId: list summary: List Custom Object Custom Fields description: List all the custom object custom fields for your organization. tags: - subpackage_customFieldsCustomObject parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.custom_object_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new Custom Object Custom Field description: |- Custom Object Custom Fields belong to Custom Objects, and have additional attributes: - `custom_object_type_id` – the ID of the Custom Object Type this Field should belong to. - `required` – whether the Field will be required to save the object. tags: - subpackage_customFieldsCustomObject parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.custom_object_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_field/custom_object_type/{id}/: get: operationId: get summary: Fetch Custom Object Custom Field's details tags: - subpackage_customFieldsCustomObject parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.custom_object_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Custom Object Custom Field description: >- You can rename it, change whether it accepts multiple values or not, change the "required" flag, change whether editing its values is restricted to specific Roles, or update the options for a "choices" field type. The updated name will immediately appear in the Close UI and only valid values for the updated `type` will be returned by the Custom Object API. The `custom_object_type_id` and `type` values cannot be changed. tags: - subpackage_customFieldsCustomObject parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.custom_object_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Custom Object Custom Field description: >- Delete a custom field from a custom object type. The field will immediately disappear from API responses and values on existing custom object instances will be permanently removed. tags: - subpackage_customFieldsCustomObject parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /custom_field/shared/: get: operationId: list summary: List Shared Custom Fields description: List all the shared custom fields for your organization. tags: - subpackage_customFieldsShared parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.shared_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new Shared Custom Field tags: - subpackage_customFieldsShared parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.shared_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_field/shared/{id}/: get: operationId: get summary: Fetch Shared Custom Field's details tags: - subpackage_customFieldsShared parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.shared_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Shared Custom Field description: >- You can rename it or update the options for a "choices" field type. The updated name will immediately appear in the Close UI and only valid values for the updated `choices` will be returned by the Lead/Contact/Custom Activity APIs. The `type` value cannot be changed. tags: - subpackage_customFieldsShared parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.shared_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Shared Custom Field description: >- Delete a shared custom field and all its associations. The field will immediately disappear from API responses and values on all associated object types will be permanently removed. tags: - subpackage_customFieldsShared parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.shared_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /custom_field/shared/{scf_id}/association/: post: operationId: create-association summary: Associate a Shared Custom Field with an object type description: "Associates a Shared Custom Field with an object type such as Lead, Contact, or Custom Activity Type. Once associated, the Shared Custom Field can be set on objects of that type.\n\nThis endpoint accepts the following attributes:\n\n- `object_type` –\_can be one of: `lead`, `contact`, `opportunity`, `custom_activity_type`,\n `custom_object_type`.\n- `custom_activity_type_id` – ID of the Custom Activity Type that you want to\n associate this Shared Field with. Only relevant if you chose the `object_type` of `custom_activity_type`.\n- `custom_object_type_id` – ID of the Custom Object Type that you want to\n associate this Shared Field with. Only relevant if you chose the `object_type` of `custom_object_type`.\n- `editable_with_roles` – list of [Roles](https://developer.close.com/api/resources/roles) that can edit the values of\n this Field on the given object. Note that this is a per-association setting, meaning that editing of the Shared Custom Field can be restricted on one object and not restricted on another.\n- `required` – whether a value *must* be provided for this Field on the given\n object. Only relevant if you chose the `object_type` of `custom_activity_type` or `custom_object_type`. Note that this is a per-association setting, meaning that this Shared Custom Field can be required on one object and not required on another." tags: - subpackage_customFieldsShared parameters: - name: scf_id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.shared_createAssociation_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_field/shared/{scf_id}/association/{object_type}/: get: operationId: get-association summary: Fetch a Shared Custom Field Association tags: - subpackage_customFieldsShared parameters: - name: scf_id in: path required: true schema: type: string - name: object_type in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.shared_getAssociation_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update-association summary: Update an existing Shared Custom Field Association description: |- You can change the `required` or the `editable_with_roles` attributes. Everything else cannot be changed. The `object_type` in the URL can be either: - `lead` when editing the association with the Lead object. - `contact` when editing the association with the Contact object. - `opportunity` when editing the association with the Opportunity object. - `custom_activity_type/` when editing the association with a specific Custom Activity Type. - `custom_object_type/` when editing the association with a specific Custom Object Type. tags: - subpackage_customFieldsShared parameters: - name: scf_id in: path required: true schema: type: string - name: object_type in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_fields.shared_updateAssociation_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete-association summary: Disassociate a Shared Custom Field from an object type description: >- Remove the association between a shared custom field and an object type. The field will immediately disappear from API responses for that object type and all stored values will be permanently deleted. The `object_type` in the URL can be `lead`, `contact`, `opportunity`, `custom_activity_type/`, or `custom_object_type/`. If the field was `required` on the associated type, removing the association also removes that requirement. tags: - subpackage_customFieldsShared parameters: - name: scf_id in: path required: true schema: type: string - name: object_type in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /custom_activity/: get: operationId: list summary: List Custom Activity Types description: >- List all custom activity types defined in the organization. The response includes all Custom Activity Types, including their Custom Field metadata. tags: - subpackage_customActivityTypes parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_activity_types_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create new Custom Activity Type description: The type must be created before activity custom fields can be added. tags: - subpackage_customActivityTypes parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_activity_types_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_activity/{id}/: get: operationId: get summary: Retrieve a single Custom Activity Type description: The response contains the Custom Activity Type including most Custom Field metadata. tags: - subpackage_customActivityTypes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_activity_types_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update existing Custom Activity Type description: >- The type's `name`, `description`, `api_create_only`, `editable_with_roles` and `is_archived` may be updated here. These properties will be updated immediately in the Custom Activity API. Field order can be set here, but adding, modifying or removing fields from a Custom Activity Type must be done using the Custom Field API. The field order is a display property only, and does not affect the request and response for the Custom Activity API. tags: - subpackage_customActivityTypes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_activity_types_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Custom Activity Type tags: - subpackage_customActivityTypes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /custom_object_type/: get: operationId: list summary: List Custom Object Types description: >- The response will include all Custom Object Types, including Custom Field metadata for your organization. Each Custom Object Type has two lists of Custom Fields. The `fields` property contains the list of fields that belong to the Custom Object Type. The `back_reference_fields` property contains the list of any objects (Leads, Contacts, Opportunities, Custom Activities, Custom Objects) that reference the Custom Object Type. tags: - subpackage_customObjectTypes parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_object_types_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create new Custom Object Type description: |- The type must be created before Custom Fields can be added. The following fields are required: - `name`: The name of the Custom Object Type - `name_plural`: A pluralized version of the name, for some UI display. The following fields are optional: - `description`: A longer description of the Custom Object Type. - `api_create_only`: If `true`, instances can only be created by API clients. Defaults to `false`. - `editable_with_roles`: Only users with the given roles can edit instances of this type. By default, any user in your organization can make changes to the instances of this type. tags: - subpackage_customObjectTypes parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_object_types_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /custom_object_type/{id}/: get: operationId: get summary: Retrieve a single Custom Object Type description: >- Retrieve a single custom object type by ID. The response contains the Custom Object Type including most Custom Field metadata. tags: - subpackage_customObjectTypes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_object_types_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update existing Custom Object Type description: >- The type's `name`, `name_plural`, `description`, `api_create_only` and `editable_with_roles` properties may be updated here. These properties will be updated immediately in the Custom Object API. You cannot add, modify, remove or reorder fields from a Custom Object Type using this resource. See [Custom Object Custom Fields](https://developer.close.com/api/resources/custom-fields/custom-fields-custom-object) and [Custom Field Schema API](https://developer.close.com/api/resources/custom-fields/custom-field-schemas) for these features. tags: - subpackage_customObjectTypes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/custom_object_types_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Custom Object Type tags: - subpackage_customObjectTypes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /pipeline/: get: operationId: list summary: List Pipelines for your organization tags: - subpackage_pipelines parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/pipelines_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a Pipeline tags: - subpackage_pipelines parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/pipelines_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /pipeline/{id}/: put: operationId: update summary: Update a Pipeline description: |- You can use this endpoint to: * Rename a Pipeline. * Reorder Opportunity Statuses within a Pipeline. * Move an Opportunity Status from a different Pipeline into this one. * To do so, include `{"id": "id_of_the_status_from_another_pipeline"}` in the `statuses` list. tags: - subpackage_pipelines parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/pipelines_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Pipeline description: >- Deletion is only allowed if the Pipeline doesn't contain any Opportunity Statuses. Delete all statuses first or move them to another pipeline. tags: - subpackage_pipelines parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /status/opportunity/: get: operationId: list summary: List opportunity statuses for your organization tags: - subpackage_opportunityStatuses parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/opportunity_statuses_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create an opportunity status description: >- Create a new opportunity status. The status must belong to a pipeline (specified by `pipeline_id`) and have a `type` of `active`, `won`, or `lost`. tags: - subpackage_opportunityStatuses parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/opportunity_statuses_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /status/opportunity/{id}/: put: operationId: update summary: Rename an opportunity status tags: - subpackage_opportunityStatuses parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/opportunity_statuses_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete an opportunity status description: You should make sure no opportunities are assigned this status, first. tags: - subpackage_opportunityStatuses parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/opportunity_statuses_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /status/lead/: get: operationId: list summary: List lead statuses for your organization tags: - subpackage_leadStatuses parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/lead_statuses_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new status that can be applied to leads tags: - subpackage_leadStatuses parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/lead_statuses_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /status/lead/{id}/: put: operationId: update summary: Rename a lead status description: >- Update a lead status. The `label` and `color` can be changed. To update the status of a particular lead, see PUT `/lead/{lead_id}/`. tags: - subpackage_leadStatuses parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/lead_statuses_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a lead status description: You should make sure no leads are assigned this status, first. tags: - subpackage_leadStatuses parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/lead_statuses_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /integration_link/: get: operationId: list summary: Get all integration links for your organization tags: - subpackage_integrationLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/integration_links_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create an integration link tags: - subpackage_integrationLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/IntegrationLink' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateIntegrationLink' /integration_link/{id}/: get: operationId: get summary: Get a single integration link tags: - subpackage_integrationLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/IntegrationLink' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an integration link tags: - subpackage_integrationLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/IntegrationLink' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateIntegrationLink' delete: operationId: delete summary: Delete an integration link tags: - subpackage_integrationLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/integration_links_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /email_template/: get: operationId: list summary: List email templates tags: - subpackage_emailTemplates parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: is_archived in: query required: false schema: type: boolean - name: is_shared in: query required: false schema: type: boolean - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/email_templates_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create an email template tags: - subpackage_emailTemplates parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/email_templates_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /email_template/{id}/: get: operationId: get summary: Fetch an email template tags: - subpackage_emailTemplates parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: include_embedded in: query description: Include embedded templates used by Workflows. required: false schema: type: boolean - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/email_templates_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an email template tags: - subpackage_emailTemplates parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/email_templates_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete an email template tags: - subpackage_emailTemplates parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/email_templates_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /email_template/{id}/render/: get: operationId: render summary: Render an email template description: |- Render an email template for the given lead/contact using the current user context. Accepts two forms of usage: - Single lead/contact: - `lead_id` and `contact_id` is supplied (both required) - Preview results from a search query - `query` (required) contains a search query - `entry` (optional, ranges from 0 to 99) specifies the index of the lead/contact that should be rendered. - `mode` (optional), which can have a value of: - `lead` (default), the first contact of the lead with the index given by `entry` will be rendered (excluding leads that have no email addresses). - `contact`, then `entry` refers to the index of the contact (excluding contacts that have no emails). Will return an empty dict if there are no more entries. tags: - subpackage_emailTemplates parameters: - name: id in: path required: true schema: type: string - name: email_account_id in: query required: false schema: type: string - name: bulk_object_type in: query required: false schema: $ref: '#/components/schemas/EmailTemplateIdRenderGetParametersBulkObjectType' - name: contact_id in: query required: false schema: type: string - name: contact_preference in: query required: false schema: $ref: '#/components/schemas/EmailTemplateIdRenderGetParametersContactPreference' - name: entry in: query required: false schema: type: integer - name: lead_id in: query required: false schema: type: string - name: limit in: query required: false schema: type: integer - name: query in: query required: false schema: type: string - name: results_limit in: query required: false schema: type: integer - name: s_query in: query required: false schema: type: string - name: sender in: query required: false schema: type: string format: email - name: sort in: query required: false schema: type: array items: $ref: '#/components/schemas/EmailTemplateIdRenderGetParametersSortSchemaItems' - name: mode in: query required: false schema: $ref: '#/components/schemas/EmailTemplateIdRenderGetParametersMode' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/email_templates_render_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /sms_template/: get: operationId: list summary: List SMS templates tags: - subpackage_smsTemplates parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sms_templates_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create an SMS template tags: - subpackage_smsTemplates parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sms_templates_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateSMSTemplate' /sms_template/{id}/: get: operationId: get summary: Fetch an SMS template tags: - subpackage_smsTemplates parameters: - name: id in: path required: true schema: type: string - name: include_attachments in: query description: Include file attachments in the response. required: false schema: type: boolean default: false - name: include_embedded in: query description: Include embedded templates used by Workflows. required: false schema: type: boolean default: false - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sms_templates_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an SMS template tags: - subpackage_smsTemplates parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/sms_templates_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateSMSTemplate' delete: operationId: delete summary: Delete an SMS template tags: - subpackage_smsTemplates parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /outcome/: get: operationId: list summary: List or filter outcomes description: Fetch a list of outcomes. tags: - subpackage_outcomes parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/outcomes_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create an outcome description: Create a new outcome for the organization. tags: - subpackage_outcomes parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Outcome' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateOutcome' /outcome/{id}/: get: operationId: get summary: Fetch a single outcome tags: - subpackage_outcomes parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Outcome' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an outcome description: Update an existing outcome. tags: - subpackage_outcomes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Outcome' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateOutcome' delete: operationId: delete summary: Delete an outcome description: >- Delete an existing outcome. All of the calls and/or meetings associated with this outcome will still retain that reference, but you won't be able to set that outcome on any new calls & meetings nor find its definition in the API. tags: - subpackage_outcomes parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/outcomes_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /playbook/: get: operationId: list summary: List or filter playbooks description: Fetch a list of playbooks for the organization. Results are sorted by position ascending. tags: - subpackage_playbooks parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: is_archived in: query description: >- Filter for archived or not-archived playbooks. When not provided, both archived and not-archived playbooks will be returned. required: false schema: type: - boolean - 'null' - name: position__gt in: query description: Filters for where the playbook's `position` is greater than the given value. required: false schema: type: - integer - 'null' - name: created_at__lt in: query description: Filters for where the playbook's `created_at` (creation date) is before the given value. required: false schema: type: - string - 'null' format: date-time - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/playbooks_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a playbook description: Create a new playbook for the organization. tags: - subpackage_playbooks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Playbook' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreatePlaybook' /playbook/{id}/: get: operationId: get summary: Fetch a single playbook tags: - subpackage_playbooks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Playbook' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a playbook description: Update an existing playbook. tags: - subpackage_playbooks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Playbook' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdatePlaybook' delete: operationId: delete summary: Delete a playbook description: Delete an existing playbook. tags: - subpackage_playbooks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /playbook/{id}/archive/: post: operationId: archive summary: Archive a playbook description: >- Archive an existing playbook. Archived playbooks are hidden from active listings but retain their associated history. tags: - subpackage_playbooks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Playbook' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /playbook/{id}/unarchive/: post: operationId: unarchive summary: Unarchive a playbook description: Restore a previously archived playbook to active status. tags: - subpackage_playbooks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Playbook' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /scheduling_link/: get: operationId: list summary: List User Scheduling Links tags: - subpackage_schedulingLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a User Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /scheduling_link/integration/: post: operationId: create-integration summary: Create or update a Scheduling Link via OAuth description: >- Please note that only OAuth apps can perform this operation. Using API key will result in an error. See [Authentication with OAuth](https://developer.close.com/api/overview/oauth-authentication) for more information. Create or update a user scheduling link, managed by your application. Uses the integration-provided `source_id` field to identify and merge duplicate resources created by the same OAuth Application. If a scheduling link created by your OAuth application with the specified `source_id` does not exist, a new one will be created. Otherwise, the scheduling link resource will be updated. Requires authentication via OAuth. tags: - subpackage_schedulingLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_createIntegration_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /scheduling_link/integration/{source_id}/: delete: operationId: delete-integration summary: Delete a User Scheduling Link via OAuth integration description: >- Please note that only OAuth apps can perform this operation. Using API key will result in an error. See [Authentication with OAuth](https://developer.close.com/api/overview/oauth-authentication) for more information. Uses the `source_id` field to identify and delete the specified User Scheduling Link created by your OAuth Application. tags: - subpackage_schedulingLinks parameters: - name: source_id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /scheduling_link/{id}/: get: operationId: get summary: Fetch a User Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a User Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a User Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /shared_scheduling_link/: get: operationId: list-shared summary: List Shared Scheduling Links tags: - subpackage_schedulingLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_listShared_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create-shared summary: Create a Shared Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_createShared_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /shared_scheduling_link/{id}/: get: operationId: get-shared summary: Fetch a Shared Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_getShared_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update-shared summary: Update a Shared Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_updateShared_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete-shared summary: Delete a Shared Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /shared_scheduling_link_association/: post: operationId: create-shared-association summary: Map a Shared Scheduling Link description: |- Map a Shared Scheduling Link to either a User Scheduling Link or a URL. See the examples below for both mapping options. tags: - subpackage_schedulingLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_createSharedAssociation_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /shared_scheduling_link_association/unmap/: post: operationId: delete-shared-association summary: Unmap a Shared Scheduling Link tags: - subpackage_schedulingLinks parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/scheduling_links_deleteSharedAssociation_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /connected_account/: get: operationId: list summary: List connected accounts description: You can filter down to a specific user by passing the `?user_id` query parameter. tags: - subpackage_connectedAccounts parameters: - name: _fields in: query required: false schema: type: array items: type: string default: - _type - available_calendars - available_features - calendar_receive_status - calendly - date_created - default_identity - email - email_receive_status - enabled_features - has_meeting_creation_scopes - id - identities - imap - is_imap_archive_sync_enabled - latest_receive_error - latest_send_error - lead_suggestions_updated_at - organization_id - receive_status - send_status - smtp - sync_all_calendars - synced_calendars - user_id - zoom_account_plan - name: user_id in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/connected_accounts_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /connected_account/{id}/: get: operationId: get summary: Fetch a single connected account tags: - subpackage_connectedAccounts parameters: - name: id in: path required: true schema: type: string - name: _fields in: query required: false schema: type: array items: type: string default: - _type - available_calendars - available_features - calendar_receive_status - calendly - date_created - default_identity - email - email_receive_status - enabled_features - has_meeting_creation_scopes - id - identities - imap - is_imap_archive_sync_enabled - latest_receive_error - latest_send_error - lead_suggestions_updated_at - organization_id - receive_status - send_status - smtp - sync_all_calendars - synced_calendars - user_id - zoom_account_plan - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/connected_accounts_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /send_as/: get: operationId: list summary: List Send As Associations description: >- A user only has access to associations they are involved in. This means that when using this endpoint, `allowing_user_id` or `allowed_user_id` must be equal to your user ID. If neither filter is provided, `allowing_user_id` is assumed by default. tags: - subpackage_sendAs parameters: - name: allowed_user_id in: query required: false schema: type: string - name: allowing_user_id in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/send_as_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a Send As Association description: Create a send-as permission. The `allowing_user_id` must be equal to your own user ID. tags: - subpackage_sendAs parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/send_as_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete-by-user summary: Delete a Send As Association by allowed user description: |- The `allowing_user_id` must be equal to your user ID. Supply both the `allowing_user_id` and the `allowed_user_id` to delete an association by those users. tags: - subpackage_sendAs parameters: - name: allowed_user_id in: query required: false schema: type: string - name: allowing_user_id in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /send_as/bulk/: post: operationId: bulk-create summary: Edit Send As Associations in bulk description: >- You can allow and disallow many other users to send as you in a single command by supplying the user IDs you want to allow and disallow. Once completed, this endpoint returns all existing associations where your user is the allowing user. tags: - subpackage_sendAs parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/send_as_bulkCreate_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /send_as/{id}/: get: operationId: get summary: Retrieve a single Send As Association tags: - subpackage_sendAs parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/send_as_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a Send As Association by ID tags: - subpackage_sendAs parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /unsubscribe/email/: get: operationId: list summary: List all unsubscribed emails description: Get a list of unsubscribed email addresses. tags: - subpackage_unsubscribedEmails parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/unsubscribed_emails_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Unsubscribe an email address description: >- This is useful for when you have an email address that has unsubscribed in another context (like a mailing list) and you want to unsubscribe them from messages from Close as well. tags: - subpackage_unsubscribedEmails parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/unsubscribed_emails_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateUnsubscribedEmail' /unsubscribe/email/{email_address}/: delete: operationId: delete summary: Resubscribe an email address tags: - subpackage_unsubscribedEmails parameters: - name: email_address in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/unsubscribed_emails_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /phone_number/: get: operationId: list summary: List or search for phone numbers tags: - subpackage_phoneNumbers parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: number in: query required: false schema: type: - string - 'null' - name: user_id in: query required: false schema: type: - string - 'null' - name: is_group_number in: query required: false schema: type: - boolean - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/phone_numbers_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /phone_number/request/internal/: post: operationId: create summary: Request an internal phone number description: >- Renting a phone number incurs a cost. You need the "Manage Group Phone Numbers" permission to rent group numbers. If a number was rented, a 201 response is returned with the new number. If no number was rented (4xx response code), the response contains a `status` field which may contain one of the values below. New statuses may be added in the future. * `has-voice-only`: This country/prefix combination only has non-SMS-capable numbers. You can attempt renting the number by passing `with_sms` as `false`. * `needs-more-info`: More information (such as proof of address) is needed to rent this number. This number can only be rented by contacting Close support. * `billing-error`: An error related to billing has occurred. For example, the telephony budget has been reached, or there are not enough funds and recharging failed. * `error`: An error has occurred while renting this number. A human-readable message is returned in the `error` field. tags: - subpackage_phoneNumbers parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/phone_numbers_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreatePhoneNumberRequest' /phone_number/{id}/: get: operationId: get summary: Retrieve a single phone number tags: - subpackage_phoneNumbers parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/PhoneNumber' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a phone number description: >- You need the "Manage Group Phone Numbers" permission to update a group number. You can only update your own personal numbers. You can: - Change a `label` of your number. - Set up call forwarding via `forward_to` and `forward_to_enabled`. - Set up a voicemail greeting by including a URL of an mp3 recording in `voicemail_greeting_url`. We require the URL to be secure (i.e. starting with https://). - Modify which team members are part of a group number via `participants`. This should be a list of user IDs. - Modify which external phone numbers are part of a group number via `phone_numbers`. This should be a list of phone numbers in E.164 international format, e.g. "+16503334444". tags: - subpackage_phoneNumbers parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/PhoneNumber' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdatePhoneNumber' delete: operationId: delete summary: Delete a phone number description: >- You need the "Manage Group Phone Numbers" permission to delete a group number. You can only delete your own personal numbers. tags: - subpackage_phoneNumbers parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/phone_numbers_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /blocked_phone_number/: get: operationId: list summary: List Blocked Phone Numbers tags: - subpackage_blockedPhoneNumbers parameters: - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/blocked_phone_numbers_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a Blocked Phone Number description: >- Once this record is created, the phone number you have specified will no longer work for outbound nor inbound calls. That means: * Nobody in your organization will be able to call that phone number. * That phone number will not be able to call anybody in your organization. tags: - subpackage_blockedPhoneNumbers parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BlockedPhoneNumber' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateBlockedPhoneNumber' /blocked_phone_number/settings/: get: operationId: get-settings summary: Retrieve Blocked Phone Number settings tags: - subpackage_blockedPhoneNumbers parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BlockedPhoneNumberSettings' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update-settings summary: Update Blocked Phone Number settings tags: - subpackage_blockedPhoneNumbers parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BlockedPhoneNumberSettings' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateBlockedPhoneNumberSettings' /blocked_phone_number/{id}/: get: operationId: get summary: Retrieve a single Blocked Phone Number tags: - subpackage_blockedPhoneNumbers parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BlockedPhoneNumber' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Blocked Phone Number tags: - subpackage_blockedPhoneNumbers parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/BlockedPhoneNumber' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateBlockedPhoneNumber' delete: operationId: delete summary: Delete a Blocked Phone Number description: |- Once the given Blocked Phone Number record is deleted, the specified " "phone number will again be able to make calls into your organization " "and you'll be able to make calls to it. tags: - subpackage_blockedPhoneNumbers parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /dialer/: get: operationId: list summary: List or filter all dialer sessions tags: - subpackage_dialers parameters: - name: organization_id in: query required: false schema: type: - string - 'null' - name: source_type in: query required: false schema: oneOf: - $ref: '#/components/schemas/DialerGetParametersSourceTypeSchema' - type: 'null' - name: source_value in: query required: false schema: type: - string - 'null' - name: status in: query required: false schema: type: - string - 'null' - name: status__in in: query required: false schema: type: - string - 'null' - name: user_id in: query required: false schema: type: - string - 'null' - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/dialers_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /dialer/{id}/: get: operationId: get summary: Get a single dialer session description: >- Once you have a `source_value` for a dialer session and `source_type=saved-search`, you can use the [saved_search endpoint](https://developer.close.com/api/resources/smart-views/get) to find out more information about the Smart View being used. tags: - subpackage_dialers parameters: - name: id in: path required: true schema: type: string - name: organization_id in: query required: false schema: type: - string - 'null' - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/dialers_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /me/: get: operationId: get-me summary: Fetch information about yourself description: >- A special instance of the Users endpoint for the current user. Useful for determining your own `id` and `organization_id`. tags: - subpackage_users parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/users_getMe_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /user/: get: operationId: list summary: List users in your organization description: List all the users who are members of the same organizations as you are. tags: - subpackage_users parameters: - name: _order_by in: query required: false schema: $ref: '#/components/schemas/UserGetParametersOrderBy' - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/users_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /user/availability/: get: operationId: list-availabilities summary: List user availability statuses description: |- List user availability statuses for all users in an organization. The `active_calls` field is an array of call metadata for calls that the user is currently participating in. tags: - subpackage_users parameters: - name: organization_id in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/users_listAvailabilities_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /user/{id}/: get: operationId: get summary: Fetch a single user tags: - subpackage_users parameters: - name: id in: path required: true schema: type: string - name: _order_by in: query required: false schema: $ref: '#/components/schemas/UserIdGetParametersOrderBy' - name: _limit in: query description: Number of results to return. required: false schema: type: integer default: 100 - name: _skip in: query description: Number of results to skip before returning, for pagination. required: false schema: type: integer default: 0 - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/users_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /organization/{id}/: get: operationId: get summary: Get an organization's details description: >- By default, `memberships` and `inactive_memberships` are populated with user data prefixed with `user_`. If you'd rather have a nested `user` field, use a query string like `?_expand=memberships__user,inactive_memberships__user`. tags: - subpackage_organizations parameters: - name: id in: path required: true schema: type: string - name: _expand in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/organizations_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update an organization description: Update an organization's `name`, `currency`, and reorder existing `lead_statuses`. tags: - subpackage_organizations parameters: - name: id in: path required: true schema: type: string - name: _expand in: query required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/organizations_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /membership/: post: operationId: create summary: Create a membership description: >- Ensures an active membership for the given email will be provisioned. - If the user already exists, they will be added to the requestor's organization. - If it doesn't exist, a new user will be provisioned. `role_id` can be one of `'admin'`, `'superuser'`, `'user'` or `'restricteduser'` for the corresponding predefined role, or an ID of a [Role](https://developer.close.com/api/resources/roles). This request requires "Manage Organization" permissions. API access to this endpoint is supported via OAuth only. tags: - subpackage_memberships parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/memberships_create_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateMembership' put: operationId: bulk-update summary: Bulk update memberships description: >- Any field that can be updated on a membership individually can also be used to bulk update multiple memberships. To issue a bulk update, pass their comma separated ids into `id__in` in `_params` as shown in the example below. tags: - subpackage_memberships parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/memberships_bulkUpdate_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /membership/{id}/: put: operationId: update summary: Update a membership description: >- You can update the field `role_id` and its value can be one of `'admin'`, `'superuser'`, `'user'` or `'restricteduser'` for the corresponding predefined role, or an ID of a [Role](https://developer.close.com/api/resources/roles). The field `auto_record_calls` is used to manage whether or not calls are automatically recorded. The initial value for a membership is `'unset'`. It can be updated to `'disabled'`, or `'enabled'`. tags: - subpackage_memberships parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/memberships_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /membership/{id}/pinned_views/: get: operationId: get-pinned-views summary: Get pinned views for a membership description: Get the ordered list of pinned views for the given membership. tags: - subpackage_memberships parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/memberships_getPinnedViews_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update-pinned-views summary: Update pinned views for a membership description: >- Set the pinned views for the given membership. Provide an ordered list that will overwrite the entire current list. tags: - subpackage_memberships parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/memberships_updatePinnedViews_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/SetPinnedSavedView' /role/: get: operationId: list summary: List all the roles defined for your organization tags: - subpackage_roles parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/roles_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a new role description: >- `visibility_user_lcf_ids` (optional) A list of Lead Custom Field IDs that define which leads user with this role can see. If the role has `view_all_leads` permission, this field should be empty. `visibility_user_lcf_behavior` (optional) Defines how lead visibility works for leads that don't have assigned users. If the role has `view_all_leads` permission, this field should be empty. - `require_assignment` - leads without assigned users are not visible to this role - `allow_unassigned` - leads without assigned users are visible to this role tags: - subpackage_roles parameters: - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/roles_create_Response_201' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type /role/{id}/: get: operationId: get summary: Fetch a single role tags: - subpackage_roles parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/roles_get_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update existing role tags: - subpackage_roles parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/roles_update_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: description: Any type delete: operationId: delete summary: Delete a role description: Delete a custom role. You must first move all users off this role by reassigning them to another role. tags: - subpackage_roles parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/roles_delete_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /group/: get: operationId: list summary: List Groups for your organization description: >- Note that list endpoint does not support retrieving members for all groups. Use individual group endpoint instead. tags: - subpackage_groups parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/groups_list_Response_200' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type post: operationId: create summary: Create a Group description: >- Create a new group. The `name` is required and must be unique within the organization. The group is created with no members. Use the member endpoint to add users. tags: - subpackage_groups parameters: - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Group' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateGroup' /group/{group_id}/member/: post: operationId: add-member summary: Add a User to a Group description: Add a user to a group by providing the `user_id`. If the user is already a member, nothing changes. tags: - subpackage_groups parameters: - name: group_id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '201': description: Successful response content: application/json: schema: $ref: '#/components/schemas/GroupMember' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateGroupMember' /group/{group_id}/member/{user_id}/: delete: operationId: remove-member summary: Remove a User from a Group description: If the user is not a member of the group, nothing changes. tags: - subpackage_groups parameters: - name: group_id in: path required: true schema: type: string - name: user_id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type /group/{id}/: get: operationId: get summary: Fetch an individual Group tags: - subpackage_groups parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Group' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type put: operationId: update summary: Update a Group description: You can use this endpoint to rename a Group. If a name is not unique, an error will be returned. tags: - subpackage_groups parameters: - name: id in: path required: true schema: type: string - name: _fields in: query description: Comma-separated list of fields to include in the response. required: false schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Group' '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateGroup' delete: operationId: delete summary: Delete a Group description: >- Delete a group. Members will be removed from the group but not from the organization. Deletion is only allowed if the group is not referenced by saved reports or smart views. tags: - subpackage_groups parameters: - name: id in: path required: true schema: type: string - name: Authorization in: header description: Use your API key as the username and leave the password empty. required: true schema: type: string responses: '204': description: No content content: application/json: schema: type: object properties: {} '400': description: Bad request content: application/json: schema: description: Any type '401': description: Unauthorized content: application/json: schema: description: Any type '404': description: Not found content: application/json: schema: description: Any type servers: - url: https://api.close.com/api/v1 components: schemas: LeadAddress: type: object properties: address_1: type: - string - 'null' address_2: type: - string - 'null' city: type: - string - 'null' country: type: - string - 'null' label: type: - string - 'null' state: type: - string - 'null' tz_ids: type: array items: type: string zipcode: type: - string - 'null' required: - address_1 - address_2 - city - country - label - state - zipcode title: LeadAddress ContactEmail: type: object properties: email: type: string is_unsubscribed: type: boolean type: type: string required: - email - is_unsubscribed - type title: ContactEmail RenderedIntegrationLink: type: object properties: name: type: string url: type: string required: - name - url title: RenderedIntegrationLink ContactPhone: 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 title: ContactPhone CallStatus: type: string enum: - created - in-progress - completed - cancel - no-answer - busy - failed - timeout description: Current status of the call. title: CallStatus ContactRecentCall: type: object properties: dialer_id: type: - string - 'null' duration: type: integer finish_timestamp: type: string format: date-time id: type: string status: $ref: '#/components/schemas/CallStatus' required: - dialer_id - duration - finish_timestamp - id - status title: ContactRecentCall WorkflowStatus: type: string enum: - active - paused - draft title: WorkflowStatus WorkflowRunStatus: type: string enum: - active - paused - finished - goal - error title: WorkflowRunStatus StatusReason: type: string enum: - manual - pending-call-timed-out - bulk-action - rate-limited - sequence-deleted - workflow-paused - filter-not-matched - 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 description: Reason for each higher level status on a Workflow run. title: StatusReason BasicSubscriptionInfoForContact: 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: $ref: '#/components/schemas/WorkflowStatus' start_date: type: - string - 'null' format: date-time subscription_id: type: string subscription_status: $ref: '#/components/schemas/WorkflowRunStatus' subscription_status_reason: oneOf: - $ref: '#/components/schemas/StatusReason' - type: 'null' required: - contact_email - date_created - initial_email_id - sequence_id - sequence_name - sequence_status - start_date - subscription_id - subscription_status - subscription_status_reason title: BasicSubscriptionInfoForContact ContactUrl: type: object properties: type: type: string url: type: string required: - type - url title: ContactUrl Contact: type: object 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: $ref: '#/components/schemas/ContactEmail' id: type: string integration_links: type: array items: $ref: '#/components/schemas/RenderedIntegrationLink' lead_id: type: - string - 'null' lead_suggestions_operation_id: type: - string - 'null' name: type: - string - 'null' organization_id: type: string phones: type: array items: $ref: '#/components/schemas/ContactPhone' recent_calls: type: array items: $ref: '#/components/schemas/ContactRecentCall' subscriptions: type: array items: $ref: '#/components/schemas/BasicSubscriptionInfoForContact' timezone: type: - string - 'null' timezone_source: type: - string - 'null' title: type: - string - 'null' updated_by: type: - string - 'null' urls: type: array items: $ref: '#/components/schemas/ContactUrl' required: - created_by - date_created - date_updated - display_name - id - name - organization_id - title - updated_by title: Contact Attachment: type: object properties: content_type: type: - string - 'null' filename: type: - string - 'null' size: type: - integer - 'null' thumbnail_url: type: - string - 'null' url: type: string required: - content_type - filename - size - url title: Attachment CommentSummary: type: object properties: comment_count: type: integer thread_id: type: string required: - comment_count - thread_id title: CommentSummary StalledOpportunityCommunicationIssue: type: string enum: - no_issue - cant_get_in_touch - no_communication_attempts title: StalledOpportunityCommunicationIssue StalledOpportunityActionTypeV1: type: string enum: - mark_as_lost - change_status - follow_up - adjust_close_date - ask_someone_else_to_reach_out - change_communication_method title: StalledOpportunityActionTypeV1 ActionItem: type: object properties: action: $ref: '#/components/schemas/StalledOpportunityActionTypeV1' description: The recommended next step to progress or resolve the stalled opportunity justification: type: string description: A short justification for the recommended action in the sales pipeline. Maximum 2 sentences. required: - action - justification title: ActionItem StalledOpportunityActionItems: type: object properties: communication_issue: $ref: '#/components/schemas/StalledOpportunityCommunicationIssue' description: The communication issue that is causing the stalled opportunity. If there is no issue, set to NoIssue. next_action: $ref: '#/components/schemas/ActionItem' description: An action item recommended to progress or resolve the stalled opportunity. required: - communication_issue - next_action title: StalledOpportunityActionItems OpportunityStatusType: type: string enum: - won - lost - active title: OpportunityStatusType StalledOpportunityActionTypeV2: type: string enum: - change_status - adjust_close_date - follow_up_email - follow_up_call - follow_up_sms title: StalledOpportunityActionTypeV2 OpportunityChangeStatusActionDetails: type: object properties: status_id: type: string required: - status_id title: OpportunityChangeStatusActionDetails OpportunityFollowUpEmailActionDetails: type: object properties: contact_id: type: string message_draft: type: string subject_draft: type: string required: - contact_id - message_draft - subject_draft title: OpportunityFollowUpEmailActionDetails OpportunityFollowUpSMSActionDetails: type: object properties: contact_id: type: string message_draft: type: string required: - contact_id - message_draft title: OpportunityFollowUpSMSActionDetails OpportunityFollowUpCallActionDetails: type: object properties: call_plan: type: string contact_id: type: string required: - call_plan - contact_id title: OpportunityFollowUpCallActionDetails OpportunityAdjustCloseDateActionDetails: type: object properties: close_date: type: string format: date required: - close_date title: OpportunityAdjustCloseDateActionDetails OpportunitySuggestedActionDetails: oneOf: - $ref: '#/components/schemas/OpportunityChangeStatusActionDetails' - $ref: '#/components/schemas/OpportunityFollowUpEmailActionDetails' - $ref: '#/components/schemas/OpportunityFollowUpSMSActionDetails' - $ref: '#/components/schemas/OpportunityFollowUpCallActionDetails' - $ref: '#/components/schemas/OpportunityAdjustCloseDateActionDetails' title: OpportunitySuggestedActionDetails OpportunitySuggestedAction: type: object properties: action: $ref: '#/components/schemas/StalledOpportunityActionTypeV2' details: oneOf: - $ref: '#/components/schemas/OpportunitySuggestedActionDetails' - type: 'null' justification: type: string required: - action - details - justification title: OpportunitySuggestedAction OpportunityValuePeriod: type: string enum: - one_time - monthly - annual title: OpportunityValuePeriod Opportunity: type: object properties: annualized_expected_value: type: - integer - 'null' annualized_value: type: - integer - 'null' attachments: type: array items: $ref: '#/components/schemas/Attachment' comment_summary: oneOf: - $ref: '#/components/schemas/CommentSummary' - type: 'null' confidence: type: integer contact_id: type: - string - 'null' contact_name: type: - string - 'null' created_by: type: - string - 'null' created_by_name: type: - string - 'null' date_created: type: string format: date-time date_lost: type: - string - 'null' format: date-time date_updated: type: string format: date-time date_won: type: - string - 'null' format: date expected_value: type: - integer - 'null' id: type: string integration_links: type: array items: $ref: '#/components/schemas/RenderedIntegrationLink' is_stalled: type: boolean lead_id: type: string lead_name: type: - string - 'null' lead_primary_email: oneOf: - $ref: '#/components/schemas/ContactEmail' - type: 'null' lead_primary_phone: type: - array - 'null' items: $ref: '#/components/schemas/ContactPhone' note: type: - string - 'null' organization_id: type: string pipeline_id: type: - string - 'null' pipeline_name: type: - string - 'null' stall_status: oneOf: - $ref: '#/components/schemas/StalledOpportunityActionItems' - type: 'null' status_display_name: type: string status_id: type: string status_label: type: string status_type: $ref: '#/components/schemas/OpportunityStatusType' suggested_action: oneOf: - $ref: '#/components/schemas/OpportunitySuggestedAction' - type: 'null' updated_by: type: - string - 'null' updated_by_name: type: - string - 'null' user_id: type: string user_name: type: - string - 'null' value: type: - integer - 'null' value_currency: type: - string - 'null' value_formatted: type: - string - 'null' value_period: $ref: '#/components/schemas/OpportunityValuePeriod' required: - annualized_expected_value - annualized_value - confidence - contact_id - created_by - date_created - date_lost - date_updated - date_won - expected_value - id - lead_id - note - organization_id - status_id - updated_by - user_id - value - value_period title: Opportunity Lead: type: object properties: addresses: type: array items: $ref: '#/components/schemas/LeadAddress' contact_ids: type: array items: type: string contacts: type: array items: $ref: '#/components/schemas/Contact' contacts_summary: type: string created_by: type: - string - 'null' created_by_name: type: - string - 'null' date_created: type: string format: date-time date_updated: type: string format: date-time description: type: - string - 'null' display_name: type: string html_url: type: string id: type: string integration_links: type: array items: $ref: '#/components/schemas/RenderedIntegrationLink' localtime: type: - string - 'null' format: date-time name: type: - string - 'null' opportunities: type: array items: $ref: '#/components/schemas/Opportunity' organization_id: type: string primary_address_summary: type: - string - 'null' primary_email: oneOf: - $ref: '#/components/schemas/ContactEmail' - type: 'null' primary_phone: oneOf: - $ref: '#/components/schemas/ContactPhone' - type: 'null' recent_calls: type: array items: type: object additionalProperties: description: Any type source: type: - string - 'null' status_id: type: string status_label: type: string summaries: type: array items: type: object additionalProperties: description: Any type tasks: type: array items: type: object additionalProperties: description: Any type updated_by: type: - string - 'null' updated_by_name: type: - string - 'null' url: type: - string - 'null' required: - contact_ids - created_by - date_created - date_updated - description - html_url - id - name - organization_id - status_id - updated_by - url title: Lead leads_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/Lead' has_more: type: boolean required: - data - has_more title: leads_list_Response_200 leads_merge_Response_200: type: object properties: {} description: Empty response body title: leads_merge_Response_200 leads_delete_Response_200: type: object properties: {} description: Empty response body title: leads_delete_Response_200 contacts_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/Contact' has_more: type: boolean required: - data - has_more title: contacts_list_Response_200 contacts_delete_Response_200: type: object properties: {} description: Empty response body title: contacts_delete_Response_200 opportunities_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/Opportunity' has_more: type: boolean required: - data - has_more title: opportunities_list_Response_200 AttachmentIn: type: object properties: content_type: type: string default: '' filename: type: string url: type: string required: - filename - url title: AttachmentIn CreateOpportunity: type: object properties: attachments: type: - array - 'null' items: $ref: '#/components/schemas/AttachmentIn' confidence: type: - integer - 'null' contact_id: type: - string - 'null' created_by: type: - string - 'null' custom_fields: type: - object - 'null' additionalProperties: description: Any type date_created: type: - string - 'null' format: date-time date_won: type: - string - 'null' format: date-time lead_id: type: - string - 'null' note: type: - string - 'null' pipeline_id: type: - string - 'null' description: >- Specify which pipeline this opportunity should belong to. When supplied without `status_id`, the opportunity will be created with the first available status of that pipeline. When supplied with `status_id`, the status must belong to the specified pipeline or a 400 error will be returned. If the pipeline does not exist, a 400 error will be returned. See the [Pipelines API](https://developer.close.com/api/resources/pipelines). status_id: type: - string - 'null' description: >- Post a `status_id` to create an opportunity with a specific status. If omitted, the organization's default (first) status will be used (or the first status of the `pipeline_id` if provided). See the [Opportunity Status API](https://developer.close.com/api/resources/opportunity-statuses). user_id: type: - string - 'null' value: type: - integer - 'null' value_period: oneOf: - $ref: '#/components/schemas/OpportunityValuePeriod' - type: 'null' title: CreateOpportunity opportunities_delete_Response_200: type: object properties: {} description: Empty response body title: opportunities_delete_Response_200 tasks_list_Response_200: type: object properties: {} description: Empty response body title: tasks_list_Response_200 tasks_create_Response_200: type: object properties: {} description: Empty response body title: tasks_create_Response_200 BulkUpdateNotificationsDate: oneOf: - type: string format: date-time - type: string format: date title: BulkUpdateNotificationsDate TaskPriority: type: string enum: - high - medium title: TaskPriority NotificationResolution: type: string enum: - abandoned - skipped title: NotificationResolution BulkUpdateNotifications: type: object properties: assigned_to: type: string date: $ref: '#/components/schemas/BulkUpdateNotificationsDate' is_complete: type: boolean organization_id: type: string priority: $ref: '#/components/schemas/TaskPriority' resolution: oneOf: - $ref: '#/components/schemas/NotificationResolution' - type: 'null' text: type: string title: BulkUpdateNotifications tasks_bulkUpdate_Response_200: type: object properties: {} description: Empty response body title: tasks_bulkUpdate_Response_200 tasks_get_Response_200: type: object properties: {} description: Empty response body title: tasks_get_Response_200 UpdateNotificationDate: oneOf: - type: string format: date-time - type: string format: date title: UpdateNotificationDate UpdateNotificationDueDate: oneOf: - type: string format: date-time - type: string format: date title: UpdateNotificationDueDate UpdateNotification: type: object properties: agent_config_id: type: - string - 'null' assigned_to: type: string contact_id: type: - string - 'null' created_by: type: string date: $ref: '#/components/schemas/UpdateNotificationDate' due_date: $ref: '#/components/schemas/UpdateNotificationDueDate' is_complete: type: boolean is_dateless: type: boolean lead_id: type: string organization_id: type: string priority: $ref: '#/components/schemas/TaskPriority' resolution: oneOf: - $ref: '#/components/schemas/NotificationResolution' - type: 'null' text: type: string title: UpdateNotification tasks_update_Response_200: type: object properties: {} description: Empty response body title: tasks_update_Response_200 tasks_delete_Response_200: type: object properties: {} description: Empty response body title: tasks_delete_Response_200 UploadFile: type: object properties: content_type: type: string filename: type: string required: - content_type - filename title: UploadFile files_create_Response_200: type: object properties: {} description: Empty response body title: files_create_Response_200 custom_objects_list_Response_200: type: object properties: {} description: Empty response body title: custom_objects_list_Response_200 custom_objects_create_Response_201: type: object properties: {} description: Empty response body title: custom_objects_create_Response_201 custom_objects_get_Response_200: type: object properties: {} description: Empty response body title: custom_objects_get_Response_200 custom_objects_update_Response_200: type: object properties: {} description: Empty response body title: custom_objects_update_Response_200 comments_list_Response_200: type: object properties: {} description: Empty response body title: comments_list_Response_200 CreateComment: type: object properties: body: type: string object_id: type: string required: - body - object_id title: CreateComment comments_create_Response_201: type: object properties: {} description: Empty response body title: comments_create_Response_201 comments_get_Response_200: type: object properties: {} description: Empty response body title: comments_get_Response_200 UpdateCommentThreads: type: object properties: body: type: string required: - body title: UpdateCommentThreads comments_update_Response_200: type: object properties: {} description: Empty response body title: comments_update_Response_200 comments_listThreads_Response_200: type: object properties: {} description: Empty response body title: comments_listThreads_Response_200 comments_getThread_Response_200: type: object properties: {} description: Empty response body title: comments_getThread_Response_200 ActivityGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityGetParametersDateCreatedGte ActivityGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityGetParametersDateCreatedLte ActivityGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityGetParametersDateCreatedGt ActivityGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityGetParametersDateCreatedLt ActivityGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityGetParametersActivityAtGte ActivityGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityGetParametersActivityAtLte ActivityGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityGetParametersActivityAtGt ActivityGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityGetParametersActivityAtLt activities_list_Response_200: type: object properties: {} description: Empty response body title: activities_list_Response_200 ActivityNoteGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityNoteGetParametersDateCreatedGte ActivityNoteGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityNoteGetParametersDateCreatedLte ActivityNoteGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityNoteGetParametersDateCreatedGt ActivityNoteGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityNoteGetParametersDateCreatedLt ActivityNoteGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityNoteGetParametersActivityAtGte ActivityNoteGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityNoteGetParametersActivityAtLte ActivityNoteGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityNoteGetParametersActivityAtGt ActivityNoteGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityNoteGetParametersActivityAtLt ActivityBase: type: object properties: _type: type: string activity_at: type: - string - 'null' format: date-time contact_id: type: - string - 'null' created_by: type: - string - 'null' created_by_name: type: - string - 'null' date_created: type: string format: date-time date_updated: type: string format: date-time id: type: string lead_id: type: - string - 'null' organization_id: type: string updated_by: type: - string - 'null' updated_by_name: type: - string - 'null' user_id: type: - string - 'null' user_name: type: - string - 'null' users: type: array items: type: string required: - _type - activity_at - contact_id - created_by - date_created - date_updated - id - lead_id - organization_id - updated_by - user_id - users title: ActivityBase activities.notes_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/ActivityBase' has_more: type: boolean required: - data - has_more title: activities.notes_list_Response_200 CreateNoteActivityAttachmentsItems: type: object properties: content_type: type: - string - 'null' filename: type: string url: type: string format: uri required: - filename - url title: CreateNoteActivityAttachmentsItems CreateNoteActivity: type: object properties: activity_at: type: - string - 'null' format: date-time attachments: type: - array - 'null' items: $ref: '#/components/schemas/CreateNoteActivityAttachmentsItems' contact_id: type: - string - 'null' created_by_id: type: - string - 'null' date_created: type: - string - 'null' format: date-time lead_id: type: string note: type: - string - 'null' note_html: type: - string - 'null' organization_id: type: - string - 'null' pinned: type: - boolean - 'null' title: type: - string - 'null' user_id: type: - string - 'null' required: - lead_id title: CreateNoteActivity UpdateNoteActivityAttachmentsItems: type: object properties: content_type: type: - string - 'null' filename: type: string url: type: string format: uri required: - filename - url title: UpdateNoteActivityAttachmentsItems UpdateNoteActivity: type: object properties: activity_at: type: - string - 'null' format: date-time attachments: type: - array - 'null' items: $ref: '#/components/schemas/UpdateNoteActivityAttachmentsItems' contact_id: type: - string - 'null' note: type: - string - 'null' note_html: type: - string - 'null' pinned: type: - boolean - 'null' title: type: - string - 'null' title: UpdateNoteActivity activities.notes_delete_Response_200: type: object properties: {} description: Empty response body title: activities.notes_delete_Response_200 ActivityCallGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCallGetParametersDateCreatedGte ActivityCallGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCallGetParametersDateCreatedLte ActivityCallGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCallGetParametersDateCreatedGt ActivityCallGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCallGetParametersDateCreatedLt ActivityCallGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCallGetParametersActivityAtGte ActivityCallGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCallGetParametersActivityAtLte ActivityCallGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCallGetParametersActivityAtGt ActivityCallGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCallGetParametersActivityAtLt PhoneActivitySource: type: string enum: - Close.io - External description: >- Source of a phone activity. Describes whether the phone activity (such as a call or an SMS) was handled by Close's telephony provider or handled externally by a 3rd party and is merely logged in Close. title: PhoneActivitySource CallActivity: type: object properties: _type: type: string activity_at: type: - string - 'null' format: date-time contact_id: type: - string - 'null' created_by: type: - string - 'null' created_by_name: type: - string - 'null' date_created: type: string format: date-time date_updated: type: string format: date-time id: type: string lead_id: type: - string - 'null' organization_id: type: string outcome_id: type: - string - 'null' sequence_id: type: - string - 'null' sequence_name: type: - string - 'null' sequence_subscription_id: type: - string - 'null' source: $ref: '#/components/schemas/PhoneActivitySource' status: $ref: '#/components/schemas/CallStatus' updated_by: type: - string - 'null' updated_by_name: type: - string - 'null' user_id: type: - string - 'null' user_name: type: - string - 'null' users: type: array items: type: string required: - _type - activity_at - contact_id - created_by - date_created - date_updated - id - lead_id - organization_id - outcome_id - source - status - updated_by - user_id - users title: CallActivity activities.calls_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/CallActivity' has_more: type: boolean required: - data - has_more title: activities.calls_list_Response_200 CreateCallActivityDirection: type: string enum: - inbound - outbound title: CreateCallActivityDirection CreateCallActivitySource: type: string enum: - Close.io - External title: CreateCallActivitySource CreateCallActivityStatus: type: string enum: - created - in-progress - completed - cancel - no-answer - busy - failed - timeout title: CreateCallActivityStatus CreateCallActivity: type: object properties: activity_at: type: - string - 'null' format: date-time contact_id: type: - string - 'null' conversation_type_id: type: - string - 'null' created_by_id: type: - string - 'null' custom_fields: type: - object - 'null' additionalProperties: description: Any type date_created: type: - string - 'null' format: date-time direction: $ref: '#/components/schemas/CreateCallActivityDirection' duration: type: - integer - 'null' lead_id: type: - string - 'null' note: type: - string - 'null' note_html: type: - string - 'null' organization_id: type: - string - 'null' outcome_id: type: - string - 'null' phone: type: - string - 'null' description: Phone number in E.164 format playbook_id: type: - string - 'null' quality_info: type: - string - 'null' recording_url: type: - string - 'null' format: uri source: $ref: '#/components/schemas/CreateCallActivitySource' status: $ref: '#/components/schemas/CreateCallActivityStatus' user_id: type: - string - 'null' voicemail_url: type: - string - 'null' format: uri title: CreateCallActivity UpdateCallActivityStatus: type: string enum: - created - in-progress - completed - cancel - no-answer - busy - failed - timeout title: UpdateCallActivityStatus UpdateCallActivity: type: object properties: activity_at: type: - string - 'null' format: date-time contact_id: type: - string - 'null' conversation_type_id: type: - string - 'null' custom_fields: type: - object - 'null' additionalProperties: description: Any type duration: type: - integer - 'null' lead_id: type: - string - 'null' note: type: - string - 'null' note_html: type: - string - 'null' outcome_id: type: - string - 'null' phone: type: - string - 'null' description: Phone number in E.164 format playbook_id: type: - string - 'null' quality_info: type: - string - 'null' recording_url: type: - string - 'null' format: uri status: $ref: '#/components/schemas/UpdateCallActivityStatus' user_id: type: - string - 'null' voicemail_url: type: - string - 'null' format: uri title: UpdateCallActivity activities.calls_delete_Response_200: type: object properties: {} description: Empty response body title: activities.calls_delete_Response_200 ActivityEmailGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailGetParametersDateCreatedGte ActivityEmailGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailGetParametersDateCreatedLte ActivityEmailGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailGetParametersDateCreatedGt ActivityEmailGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailGetParametersDateCreatedLt ActivityEmailGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailGetParametersActivityAtGte ActivityEmailGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailGetParametersActivityAtLte ActivityEmailGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailGetParametersActivityAtGt ActivityEmailGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailGetParametersActivityAtLt CommunicationDirection: type: string enum: - incoming - outgoing description: >- Direction of communication. Outgoing means the communication flowing from the user to the lead/contact. Inbound means the opposite. title: CommunicationDirection MessageStatus: type: string enum: - inbox - draft - scheduled - outbox - sent - error description: Status of a message, such as Email or SMS. title: MessageStatus EmailActivity: type: object properties: _type: type: string activity_at: type: - string - 'null' format: date-time agent_action_reason: type: - string - 'null' agent_config_id: type: - string - 'null' attachments: type: - array - 'null' items: $ref: '#/components/schemas/Attachment' bcc: type: array items: type: string body_html: type: - string - 'null' body_preview: type: - string - 'null' body_text: type: - string - 'null' bulk_email_action_id: type: - string - 'null' cc: type: array items: type: string contact_id: type: - string - 'null' created_by: type: - string - 'null' created_by_name: type: - string - 'null' date_created: type: string format: date-time date_scheduled: type: - string - 'null' format: date-time date_sent: type: - string - 'null' format: date-time date_updated: type: string format: date-time direction: oneOf: - $ref: '#/components/schemas/CommunicationDirection' - type: 'null' email_account_id: type: - string - 'null' envelope: type: - object - 'null' additionalProperties: description: Any type followup_sequence_add_cc_bcc: type: boolean followup_sequence_delay: type: - integer - 'null' followup_sequence_id: type: - string - 'null' has_reply: type: boolean id: type: string in_reply_to_id: type: - string - 'null' lead_id: type: - string - 'null' message_ids: type: array items: type: string need_smtp_credentials: type: boolean opens: type: - array - 'null' items: type: object additionalProperties: type: string opens_summary: type: - string - 'null' organization_id: type: string references: type: array items: type: string send_as_id: type: - string - 'null' send_attempts: type: - array - 'null' items: type: object additionalProperties: type: string sender: type: - string - 'null' sequence_id: type: - string - 'null' sequence_name: type: - string - 'null' sequence_subscription_id: type: - string - 'null' status: $ref: '#/components/schemas/MessageStatus' subject: type: - string - 'null' template_id: type: - string - 'null' template_name: type: - string - 'null' thread_id: type: - string - 'null' to: type: array items: type: string updated_by: type: - string - 'null' updated_by_name: type: - string - 'null' user_id: type: - string - 'null' user_name: type: - string - 'null' users: type: array items: type: string required: - _type - activity_at - bcc - body_html - body_text - bulk_email_action_id - cc - contact_id - created_by - date_created - date_scheduled - date_sent - date_updated - direction - followup_sequence_add_cc_bcc - followup_sequence_delay - has_reply - id - in_reply_to_id - lead_id - message_ids - need_smtp_credentials - opens_summary - organization_id - references - send_as_id - sender - status - subject - template_id - thread_id - to - updated_by - user_id - users title: EmailActivity activities.emails_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/EmailActivity' has_more: type: boolean required: - data - has_more title: activities.emails_list_Response_200 CreateEmailActivityAttachmentsItems: type: object properties: content_id: type: - string - 'null' content_type: type: - string - 'null' filename: type: string inline_only: type: boolean size: type: integer url: type: string format: uri required: - filename - size - url title: CreateEmailActivityAttachmentsItems CreateEmailActivityOpensItems: type: object properties: opened_at: type: string format: date-time required: - opened_at title: CreateEmailActivityOpensItems CreateEmailActivityStatus: type: string enum: - inbox - draft - scheduled - outbox - sent - error title: CreateEmailActivityStatus CreateEmailActivity: type: object properties: account_id: type: - string - 'null' activity_at: type: - string - 'null' format: date-time attachments: type: - array - 'null' items: $ref: '#/components/schemas/CreateEmailActivityAttachmentsItems' bcc: type: - array - 'null' items: type: string body_html: type: - string - 'null' body_text: type: - string - 'null' cc: type: - array - 'null' items: type: string contact_id: type: - string - 'null' created_by_id: type: - string - 'null' date_created: type: - string - 'null' format: date-time followup_date: type: - string - 'null' format: date-time followup_sequence_add_cc_bcc: type: - boolean - 'null' followup_sequence_delay: type: - integer - 'null' followup_sequence_id: type: - string - 'null' in_reply_to_id: type: - string - 'null' lead_id: type: string opens: type: - array - 'null' items: $ref: '#/components/schemas/CreateEmailActivityOpensItems' organization_id: type: - string - 'null' sender: type: - string - 'null' format: email status: $ref: '#/components/schemas/CreateEmailActivityStatus' subject: type: - string - 'null' template_id: type: - string - 'null' to: type: - array - 'null' items: type: string user_id: type: - string - 'null' required: - lead_id - status title: CreateEmailActivity UpdateEmailActivityAttachmentsItems: type: object properties: content_id: type: - string - 'null' content_type: type: - string - 'null' filename: type: string inline_only: type: boolean size: type: integer url: type: string format: uri required: - filename - size - url title: UpdateEmailActivityAttachmentsItems UpdateEmailActivityOpensItems: type: object properties: opened_at: type: string format: date-time required: - opened_at title: UpdateEmailActivityOpensItems UpdateEmailActivityStatus: type: string enum: - inbox - draft - scheduled - outbox - sent - error title: UpdateEmailActivityStatus UpdateEmailActivity: type: object properties: account_id: type: - string - 'null' activity_at: type: - string - 'null' format: date-time attachments: type: - array - 'null' items: $ref: '#/components/schemas/UpdateEmailActivityAttachmentsItems' bcc: type: - array - 'null' items: type: string body_html: type: - string - 'null' body_text: type: - string - 'null' cc: type: - array - 'null' items: type: string contact_id: type: - string - 'null' followup_date: type: - string - 'null' format: date-time followup_sequence_add_cc_bcc: type: - boolean - 'null' followup_sequence_delay: type: - integer - 'null' followup_sequence_id: type: - string - 'null' in_reply_to_id: type: - string - 'null' opens: type: - array - 'null' items: $ref: '#/components/schemas/UpdateEmailActivityOpensItems' sender: type: - string - 'null' format: email status: $ref: '#/components/schemas/UpdateEmailActivityStatus' subject: type: - string - 'null' template_id: type: - string - 'null' to: type: - array - 'null' items: type: string user_id: type: - string - 'null' title: UpdateEmailActivity activities.emails_delete_Response_200: type: object properties: {} description: Empty response body title: activities.emails_delete_Response_200 ActivityEmailthreadGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailthreadGetParametersDateCreatedGte ActivityEmailthreadGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailthreadGetParametersDateCreatedLte ActivityEmailthreadGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailthreadGetParametersDateCreatedGt ActivityEmailthreadGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailthreadGetParametersDateCreatedLt ActivityEmailthreadGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailthreadGetParametersActivityAtGte ActivityEmailthreadGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailthreadGetParametersActivityAtLte ActivityEmailthreadGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailthreadGetParametersActivityAtGt ActivityEmailthreadGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityEmailthreadGetParametersActivityAtLt activities.email_threads_list_Response_200: type: object properties: {} description: Empty response body title: activities.email_threads_list_Response_200 activities.email_threads_get_Response_200: type: object properties: {} description: Empty response body title: activities.email_threads_get_Response_200 activities.email_threads_delete_Response_200: type: object properties: {} description: Empty response body title: activities.email_threads_delete_Response_200 ActivitySmsGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivitySmsGetParametersDateCreatedGte ActivitySmsGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivitySmsGetParametersDateCreatedLte ActivitySmsGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivitySmsGetParametersDateCreatedGt ActivitySmsGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivitySmsGetParametersDateCreatedLt ActivitySmsGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivitySmsGetParametersActivityAtGte ActivitySmsGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivitySmsGetParametersActivityAtLte ActivitySmsGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivitySmsGetParametersActivityAtGt ActivitySmsGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivitySmsGetParametersActivityAtLt PhoneActivityDirection: type: string enum: - inbound - outbound description: Direction of a phone activity, such as a call or an SMS message. title: PhoneActivityDirection SMSActivity: type: object properties: _type: type: string activity_at: type: - string - 'null' format: date-time agent_action_reason: type: - string - 'null' agent_config_id: type: - string - 'null' contact_id: type: - string - 'null' cost: type: - string - 'null' created_by: type: - string - 'null' created_by_name: type: - string - 'null' date_created: type: string format: date-time date_scheduled: type: - string - 'null' format: date-time date_sent: type: - string - 'null' format: date-time date_updated: type: string format: date-time direction: $ref: '#/components/schemas/PhoneActivityDirection' error_message: type: - string - 'null' id: type: string lead_id: type: - string - 'null' local_country_iso: type: - string - 'null' local_phone: type: - string - 'null' local_phone_formatted: type: - string - 'null' organization_id: type: string remote_country_iso: type: - string - 'null' remote_phone: type: - string - 'null' remote_phone_formatted: type: - string - 'null' sequence_id: type: - string - 'null' sequence_name: type: - string - 'null' sequence_subscription_id: type: - string - 'null' source: $ref: '#/components/schemas/PhoneActivitySource' status: $ref: '#/components/schemas/MessageStatus' template_id: type: - string - 'null' text: type: - string - 'null' updated_by: type: - string - 'null' updated_by_name: type: - string - 'null' user_id: type: - string - 'null' user_name: type: - string - 'null' users: type: array items: type: string required: - _type - activity_at - contact_id - cost - created_by - date_created - date_scheduled - date_sent - date_updated - direction - error_message - id - lead_id - local_country_iso - local_phone - local_phone_formatted - organization_id - remote_country_iso - remote_phone - remote_phone_formatted - source - status - template_id - text - updated_by - user_id - users title: SMSActivity activities.sms_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/SMSActivity' has_more: type: boolean required: - data - has_more title: activities.sms_list_Response_200 CreateSmsActivityAttachmentsItemsContentType: type: string enum: - application/pdf - application/vcard - audio/3gpp - audio/3gpp2 - audio/L24 - audio/ac3 - audio/amr - audio/amr-nb - audio/basic - audio/mp4 - audio/mpeg - audio/ogg - audio/vnd.rn-realaudio - audio/vnd.wave - audio/webm - image/bmp - image/gif - image/jpeg - image/jpg - image/png - image/tiff - text/calendar - text/csv - text/directory - text/richtext - text/rtf - text/vcard - text/x-vcard - video/3gpp - video/3gpp-tt - video/3gpp2 - video/H261 - video/H263 - video/H263-1998 - video/H263-2000 - video/H264 - video/mp4 - video/mpeg - video/quicktime - video/webm title: CreateSmsActivityAttachmentsItemsContentType CreateSmsActivityAttachmentsItems: type: object properties: content_type: $ref: '#/components/schemas/CreateSmsActivityAttachmentsItemsContentType' filename: type: string url: type: string required: - content_type - filename - url title: CreateSmsActivityAttachmentsItems CreateSmsActivityDirection: type: string enum: - inbound - outbound title: CreateSmsActivityDirection CreateSmsActivitySource: type: string enum: - Close.io - External title: CreateSmsActivitySource CreateSmsActivityStatus: type: string enum: - inbox - draft - scheduled - outbox - sent - error title: CreateSmsActivityStatus CreateSMSActivity: type: object properties: activity_at: type: - string - 'null' format: date-time attachments: type: - array - 'null' items: $ref: '#/components/schemas/CreateSmsActivityAttachmentsItems' contact_id: type: - string - 'null' created_by_id: type: - string - 'null' date_created: type: - string - 'null' format: date-time direction: $ref: '#/components/schemas/CreateSmsActivityDirection' lead_id: type: - string - 'null' local_phone: type: - string - 'null' description: Phone number in E.164 format organization_id: type: - string - 'null' remote_phone: type: - string - 'null' description: Phone number in E.164 format source: $ref: '#/components/schemas/CreateSmsActivitySource' status: $ref: '#/components/schemas/CreateSmsActivityStatus' template_id: type: - string - 'null' text: type: - string - 'null' user_id: type: - string - 'null' required: - status title: CreateSMSActivity UpdateSmsActivityAttachmentsItemsContentType: type: string enum: - application/pdf - application/vcard - audio/3gpp - audio/3gpp2 - audio/L24 - audio/ac3 - audio/amr - audio/amr-nb - audio/basic - audio/mp4 - audio/mpeg - audio/ogg - audio/vnd.rn-realaudio - audio/vnd.wave - audio/webm - image/bmp - image/gif - image/jpeg - image/jpg - image/png - image/tiff - text/calendar - text/csv - text/directory - text/richtext - text/rtf - text/vcard - text/x-vcard - video/3gpp - video/3gpp-tt - video/3gpp2 - video/H261 - video/H263 - video/H263-1998 - video/H263-2000 - video/H264 - video/mp4 - video/mpeg - video/quicktime - video/webm title: UpdateSmsActivityAttachmentsItemsContentType UpdateSmsActivityAttachmentsItems: type: object properties: content_type: $ref: '#/components/schemas/UpdateSmsActivityAttachmentsItemsContentType' filename: type: string url: type: string required: - content_type - filename - url title: UpdateSmsActivityAttachmentsItems UpdateSmsActivityStatus: type: string enum: - inbox - draft - scheduled - outbox - sent - error title: UpdateSmsActivityStatus UpdateSMSActivity: type: object properties: activity_at: type: - string - 'null' format: date-time attachments: type: - array - 'null' items: $ref: '#/components/schemas/UpdateSmsActivityAttachmentsItems' contact_id: type: - string - 'null' lead_id: type: - string - 'null' local_phone: type: - string - 'null' description: Phone number in E.164 format remote_phone: type: - string - 'null' description: Phone number in E.164 format status: $ref: '#/components/schemas/UpdateSmsActivityStatus' template_id: type: - string - 'null' text: type: - string - 'null' user_id: type: - string - 'null' title: UpdateSMSActivity activities.sms_delete_Response_200: type: object properties: {} description: Empty response body title: activities.sms_delete_Response_200 ActivityWhatsappMessageGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityWhatsappMessageGetParametersDateCreatedGte ActivityWhatsappMessageGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityWhatsappMessageGetParametersDateCreatedLte ActivityWhatsappMessageGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityWhatsappMessageGetParametersDateCreatedGt ActivityWhatsappMessageGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityWhatsappMessageGetParametersDateCreatedLt ActivityWhatsappMessageGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityWhatsappMessageGetParametersActivityAtGte ActivityWhatsappMessageGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityWhatsappMessageGetParametersActivityAtLte ActivityWhatsappMessageGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityWhatsappMessageGetParametersActivityAtGt ActivityWhatsappMessageGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityWhatsappMessageGetParametersActivityAtLt CreationSource: type: string enum: - ui - api - import - clipper - email - suggestion - segment-integration - customerio-integration - calendly-integration - ai - whatsapp - webform title: CreationSource WhatsAppMessageActivity: type: object properties: _type: type: string activity_at: type: - string - 'null' format: date-time attachments: type: array items: $ref: '#/components/schemas/Attachment' contact_id: type: - string - 'null' created_by: type: - string - 'null' created_by_name: type: - string - 'null' date_created: type: string format: date-time date_updated: type: string format: date-time direction: $ref: '#/components/schemas/CommunicationDirection' external_whatsapp_message_id: type: string id: type: string integration_link: type: - string - 'null' integration_name: type: - string - 'null' lead_id: type: - string - 'null' local_phone: type: string local_phone_formatted: type: string message_html: type: string message_markdown: type: string organization_id: type: string remote_phone: type: string remote_phone_formatted: type: string response_to_id: type: - string - 'null' sequence_id: type: - string - 'null' sequence_name: type: - string - 'null' sequence_subscription_id: type: - string - 'null' source: $ref: '#/components/schemas/CreationSource' text: type: string updated_by: type: - string - 'null' updated_by_name: type: - string - 'null' user_id: type: - string - 'null' user_name: type: - string - 'null' users: type: array items: type: string required: - _type - activity_at - contact_id - created_by - date_created - date_updated - direction - external_whatsapp_message_id - id - integration_link - integration_name - lead_id - local_phone - local_phone_formatted - message_html - message_markdown - organization_id - remote_phone - remote_phone_formatted - response_to_id - source - text - updated_by - user_id - users title: WhatsAppMessageActivity activities.whatsapp_messages_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/WhatsAppMessageActivity' has_more: type: boolean required: - data - has_more title: activities.whatsapp_messages_list_Response_200 WhatsAppAttachmentData: type: object properties: content_type: type: string filename: type: string url: type: string required: - content_type - filename - url title: WhatsAppAttachmentData CreateWhatsAppMessage: type: object properties: activity_at: type: string format: date-time attachments: type: array items: $ref: '#/components/schemas/WhatsAppAttachmentData' contact_id: type: string direction: $ref: '#/components/schemas/CommunicationDirection' external_whatsapp_message_id: type: string integration_link: type: - string - 'null' format: uri lead_id: type: string local_phone: type: string message_markdown: type: string remote_phone: type: string response_to_id: type: - string - 'null' user_id: type: - string - 'null' required: - activity_at - contact_id - direction - external_whatsapp_message_id - lead_id - local_phone - message_markdown - remote_phone title: CreateWhatsAppMessage UpdateWhatsAppMessage: type: object properties: activity_at: type: string format: date-time attachments: type: array items: $ref: '#/components/schemas/WhatsAppAttachmentData' contact_id: type: string direction: $ref: '#/components/schemas/CommunicationDirection' integration_link: type: - string - 'null' format: uri local_phone: type: string message_markdown: type: string remote_phone: type: string response_to_id: type: - string - 'null' user_id: type: string title: UpdateWhatsAppMessage activities.whatsapp_messages_delete_Response_200: type: object properties: {} description: Empty response body title: activities.whatsapp_messages_delete_Response_200 ActivityMeetingGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityMeetingGetParametersDateCreatedGte ActivityMeetingGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityMeetingGetParametersDateCreatedLte ActivityMeetingGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityMeetingGetParametersDateCreatedGt ActivityMeetingGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityMeetingGetParametersDateCreatedLt ActivityMeetingGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityMeetingGetParametersActivityAtGte ActivityMeetingGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityMeetingGetParametersActivityAtLte ActivityMeetingGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityMeetingGetParametersActivityAtGt ActivityMeetingGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityMeetingGetParametersActivityAtLt activities.meetings_list_Response_200: type: object properties: {} description: Empty response body title: activities.meetings_list_Response_200 activities.meetings_get_Response_200: type: object properties: {} description: Empty response body title: activities.meetings_get_Response_200 activities.meetings_update_Response_200: type: object properties: {} description: Empty response body title: activities.meetings_update_Response_200 activities.meetings_delete_Response_200: type: object properties: {} description: Empty response body title: activities.meetings_delete_Response_200 activities.meetings_createIntegration_Response_200: type: object properties: {} description: Empty response body title: activities.meetings_createIntegration_Response_200 ActivityCustomGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCustomGetParametersDateCreatedGte ActivityCustomGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCustomGetParametersDateCreatedLte ActivityCustomGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCustomGetParametersDateCreatedGt ActivityCustomGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCustomGetParametersDateCreatedLt ActivityCustomGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCustomGetParametersActivityAtGte ActivityCustomGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCustomGetParametersActivityAtLte ActivityCustomGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCustomGetParametersActivityAtGt ActivityCustomGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCustomGetParametersActivityAtLt activities.custom_activities_list_Response_200: type: object properties: {} description: Empty response body title: activities.custom_activities_list_Response_200 CreateCustomActivityStatus: type: string enum: - draft - published title: CreateCustomActivityStatus CreateCustomActivity: type: object properties: activity_at: type: - string - 'null' format: date-time contact_id: type: - string - 'null' created_by_id: type: - string - 'null' custom_activity_type_id: type: string custom_fields: type: - object - 'null' additionalProperties: description: Any type date_created: type: - string - 'null' format: date-time lead_id: type: string organization_id: type: - string - 'null' pinned: type: - boolean - 'null' status: $ref: '#/components/schemas/CreateCustomActivityStatus' user_id: type: - string - 'null' required: - custom_activity_type_id - lead_id title: CreateCustomActivity activities.custom_activities_create_Response_200: type: object properties: {} description: Empty response body title: activities.custom_activities_create_Response_200 activities.custom_activities_get_Response_200: type: object properties: {} description: Empty response body title: activities.custom_activities_get_Response_200 UpdateCustomActivityStatus: type: string enum: - draft - published title: UpdateCustomActivityStatus UpdateCustomActivity: type: object properties: activity_at: type: - string - 'null' format: date-time contact_id: type: - string - 'null' custom_fields: type: - object - 'null' additionalProperties: description: Any type pinned: type: - boolean - 'null' status: $ref: '#/components/schemas/UpdateCustomActivityStatus' title: UpdateCustomActivity activities.custom_activities_update_Response_200: type: object properties: {} description: Empty response body title: activities.custom_activities_update_Response_200 activities.custom_activities_delete_Response_200: type: object properties: {} description: Empty response body title: activities.custom_activities_delete_Response_200 ActivityCreatedGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCreatedGetParametersDateCreatedGte ActivityCreatedGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCreatedGetParametersDateCreatedLte ActivityCreatedGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCreatedGetParametersDateCreatedGt ActivityCreatedGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCreatedGetParametersDateCreatedLt ActivityCreatedGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCreatedGetParametersActivityAtGte ActivityCreatedGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityCreatedGetParametersActivityAtLte ActivityCreatedGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCreatedGetParametersActivityAtGt ActivityCreatedGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityCreatedGetParametersActivityAtLt activities.creations_list_Response_200: type: object properties: {} description: Empty response body title: activities.creations_list_Response_200 activities.creations_get_Response_200: type: object properties: {} description: Empty response body title: activities.creations_get_Response_200 ActivityFormSubmissionGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityFormSubmissionGetParametersDateCreatedGte ActivityFormSubmissionGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityFormSubmissionGetParametersDateCreatedLte ActivityFormSubmissionGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityFormSubmissionGetParametersDateCreatedGt ActivityFormSubmissionGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityFormSubmissionGetParametersDateCreatedLt ActivityFormSubmissionGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityFormSubmissionGetParametersActivityAtGte ActivityFormSubmissionGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityFormSubmissionGetParametersActivityAtLte ActivityFormSubmissionGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityFormSubmissionGetParametersActivityAtGt ActivityFormSubmissionGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityFormSubmissionGetParametersActivityAtLt FormSubmissionActivityValues: oneOf: - type: string - type: boolean title: FormSubmissionActivityValues FormSubmissionActivityValuesByName: oneOf: - type: string - type: boolean title: FormSubmissionActivityValuesByName FormSubmissionActivity: type: object properties: _type: type: string activity_at: type: - string - 'null' format: date-time contact_id: type: - string - 'null' created_by: type: - string - 'null' created_by_name: type: - string - 'null' date_created: type: string format: date-time date_updated: type: string format: date-time form_configuration_id: type: string form_id: type: string form_name: type: - string - 'null' id: type: string ip_address: type: - string - 'null' lead_id: type: - string - 'null' organization_id: type: string origin: type: - string - 'null' source_url: type: - string - 'null' source_url_normalized: type: - string - 'null' updated_by: type: - string - 'null' updated_by_name: type: - string - 'null' user_id: type: - string - 'null' user_name: type: - string - 'null' users: type: array items: type: string values: type: object additionalProperties: oneOf: - $ref: '#/components/schemas/FormSubmissionActivityValues' - type: 'null' values_by_name: type: object additionalProperties: oneOf: - $ref: '#/components/schemas/FormSubmissionActivityValuesByName' - type: 'null' required: - _type - activity_at - contact_id - created_by - date_created - date_updated - form_configuration_id - form_id - id - ip_address - lead_id - organization_id - origin - source_url - source_url_normalized - updated_by - user_id - users - values - values_by_name title: FormSubmissionActivity activities.form_submissions_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/FormSubmissionActivity' has_more: type: boolean required: - data - has_more title: activities.form_submissions_list_Response_200 activities.form_submissions_delete_Response_200: type: object properties: {} description: Empty response body title: activities.form_submissions_delete_Response_200 ActivityStatusChangeLeadGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeLeadGetParametersDateCreatedGte ActivityStatusChangeLeadGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeLeadGetParametersDateCreatedLte ActivityStatusChangeLeadGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeLeadGetParametersDateCreatedGt ActivityStatusChangeLeadGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeLeadGetParametersDateCreatedLt ActivityStatusChangeLeadGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeLeadGetParametersActivityAtGte ActivityStatusChangeLeadGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeLeadGetParametersActivityAtLte ActivityStatusChangeLeadGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeLeadGetParametersActivityAtGt ActivityStatusChangeLeadGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeLeadGetParametersActivityAtLt activities.lead_status_changes_list_Response_200: type: object properties: {} description: Empty response body title: activities.lead_status_changes_list_Response_200 activities.lead_status_changes_create_Response_200: type: object properties: {} description: Empty response body title: activities.lead_status_changes_create_Response_200 activities.lead_status_changes_get_Response_200: type: object properties: {} description: Empty response body title: activities.lead_status_changes_get_Response_200 activities.lead_status_changes_delete_Response_200: type: object properties: {} description: Empty response body title: activities.lead_status_changes_delete_Response_200 ActivityStatusChangeOpportunityGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeOpportunityGetParametersDateCreatedGte ActivityStatusChangeOpportunityGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeOpportunityGetParametersDateCreatedLte ActivityStatusChangeOpportunityGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeOpportunityGetParametersDateCreatedGt ActivityStatusChangeOpportunityGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeOpportunityGetParametersDateCreatedLt ActivityStatusChangeOpportunityGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeOpportunityGetParametersActivityAtGte ActivityStatusChangeOpportunityGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeOpportunityGetParametersActivityAtLte ActivityStatusChangeOpportunityGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeOpportunityGetParametersActivityAtGt ActivityStatusChangeOpportunityGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityStatusChangeOpportunityGetParametersActivityAtLt activities.opportunity_status_changes_list_Response_200: type: object properties: {} description: Empty response body title: activities.opportunity_status_changes_list_Response_200 activities.opportunity_status_changes_create_Response_200: type: object properties: {} description: Empty response body title: activities.opportunity_status_changes_create_Response_200 activities.opportunity_status_changes_get_Response_200: type: object properties: {} description: Empty response body title: activities.opportunity_status_changes_get_Response_200 activities.opportunity_status_changes_delete_Response_200: type: object properties: {} description: Empty response body title: activities.opportunity_status_changes_delete_Response_200 ActivityLeadMergeGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityLeadMergeGetParametersDateCreatedGte ActivityLeadMergeGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityLeadMergeGetParametersDateCreatedLte ActivityLeadMergeGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityLeadMergeGetParametersDateCreatedGt ActivityLeadMergeGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityLeadMergeGetParametersDateCreatedLt ActivityLeadMergeGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityLeadMergeGetParametersActivityAtGte ActivityLeadMergeGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityLeadMergeGetParametersActivityAtLte ActivityLeadMergeGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityLeadMergeGetParametersActivityAtGt ActivityLeadMergeGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityLeadMergeGetParametersActivityAtLt activities.lead_merges_list_Response_200: type: object properties: {} description: Empty response body title: activities.lead_merges_list_Response_200 activities.lead_merges_get_Response_200: type: object properties: {} description: Empty response body title: activities.lead_merges_get_Response_200 ActivityTaskCompletedGetParametersDateCreatedGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityTaskCompletedGetParametersDateCreatedGte ActivityTaskCompletedGetParametersDateCreatedLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityTaskCompletedGetParametersDateCreatedLte ActivityTaskCompletedGetParametersDateCreatedGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityTaskCompletedGetParametersDateCreatedGt ActivityTaskCompletedGetParametersDateCreatedLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityTaskCompletedGetParametersDateCreatedLt ActivityTaskCompletedGetParametersActivityAtGte: oneOf: - type: string format: date-time - type: string format: date title: ActivityTaskCompletedGetParametersActivityAtGte ActivityTaskCompletedGetParametersActivityAtLte: oneOf: - type: string format: date-time - type: string format: date title: ActivityTaskCompletedGetParametersActivityAtLte ActivityTaskCompletedGetParametersActivityAtGt: oneOf: - type: string format: date-time - type: string format: date title: ActivityTaskCompletedGetParametersActivityAtGt ActivityTaskCompletedGetParametersActivityAtLt: oneOf: - type: string format: date-time - type: string format: date title: ActivityTaskCompletedGetParametersActivityAtLt activities.task_completions_list_Response_200: type: object properties: {} description: Empty response body title: activities.task_completions_list_Response_200 activities.task_completions_get_Response_200: type: object properties: {} description: Empty response body title: activities.task_completions_get_Response_200 activities.task_completions_delete_Response_200: type: object properties: {} description: Empty response body title: activities.task_completions_delete_Response_200 webhooks_list_Response_200: type: object properties: {} description: Empty response body title: webhooks_list_Response_200 WebhookSubscriptionEvent: type: object properties: action: type: string extra_filter: type: - object - 'null' additionalProperties: description: Any type object_type: type: string required: - action - object_type title: WebhookSubscriptionEvent CreateWebhook: type: object properties: event_filter: type: - object - 'null' additionalProperties: description: Any type events: type: array items: $ref: '#/components/schemas/WebhookSubscriptionEvent' url: type: string verify_ssl: type: boolean default: true required: - events - url title: CreateWebhook webhooks_create_Response_201: type: object properties: {} description: Empty response body title: webhooks_create_Response_201 webhooks_get_Response_200: type: object properties: {} description: Empty response body title: webhooks_get_Response_200 webhooks_update_Response_200: type: object properties: {} description: Empty response body title: webhooks_update_Response_200 webhooks_delete_Response_200: type: object properties: {} description: Empty response body title: webhooks_delete_Response_200 events_list_Response_200: type: object properties: {} description: Empty response body title: events_list_Response_200 events_get_Response_200: type: object properties: {} description: Empty response body title: events_get_Response_200 SavedSearchType: type: string enum: - lead - contact - opportunity - call - email - sms - meeting - note - whatsapp_message - custom_activity - form_submission title: SavedSearchType SharingSettingsEmbeddedResponse: type: object properties: created_at: type: - string - 'null' format: date-time created_by_id: type: - string - 'null' group_ids: type: array items: type: string updated_at: type: - string - 'null' format: date-time updated_by_id: type: - string - 'null' user_ids: type: array items: type: string whole_org: type: boolean required: - created_at - created_by_id - group_ids - updated_at - updated_by_id - user_ids - whole_org title: SharingSettingsEmbeddedResponse SavedSearch: type: object properties: date_created: type: string format: date-time date_updated: type: string format: date-time description: type: - string - 'null' id: type: string is_shared: type: boolean is_user_dependent: type: - boolean - 'null' name: type: string organization_id: type: string query: type: - string - 'null' s_query: type: - object - 'null' additionalProperties: description: Any type selected_fields: type: - array - 'null' items: type: object additionalProperties: description: Any type shared_with: type: - array - 'null' items: type: string sharing_settings: oneOf: - $ref: '#/components/schemas/SharingSettingsEmbeddedResponse' - type: 'null' type: $ref: '#/components/schemas/SavedSearchType' user_id: type: - string - 'null' required: - date_created - date_updated - description - id - is_shared - is_user_dependent - name - organization_id - query - s_query - type - user_id title: SavedSearch smart_views_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/SavedSearch' has_more: type: boolean required: - data - has_more title: smart_views_list_Response_200 smart_views_delete_Response_200: type: object properties: {} description: Empty response body title: smart_views_delete_Response_200 reporting_getActivity_Response_200: type: object properties: {} description: Empty response body title: reporting_getActivity_Response_200 reporting_listActivityMetrics_Response_200: type: object properties: {} description: Empty response body title: reporting_listActivityMetrics_Response_200 ReportCustomOrgIdGetParametersTransformY: type: string enum: - sum - avg - min - max title: ReportCustomOrgIdGetParametersTransformY reporting_getCustom_Response_200: type: object properties: {} description: Empty response body title: reporting_getCustom_Response_200 reporting_getFunnelStages_Response_200: type: object properties: {} description: Empty response body title: reporting_getFunnelStages_Response_200 reporting_getFunnelTotals_Response_200: type: object properties: {} description: Empty response body title: reporting_getFunnelTotals_Response_200 reporting_getSentEmails_Response_200: type: object properties: {} description: Empty response body title: reporting_getSentEmails_Response_200 reporting_getLeadStatuses_Response_200: type: object properties: {} description: Empty response body title: reporting_getLeadStatuses_Response_200 reporting_getOpportunityStatuses_Response_200: type: object properties: {} description: Empty response body title: reporting_getOpportunityStatuses_Response_200 sequences_list_Response_200: type: object properties: {} description: Empty response body title: sequences_list_Response_200 sequences_create_Response_200: type: object properties: {} description: Empty response body title: sequences_create_Response_200 sequences_get_Response_200: type: object properties: {} description: Empty response body title: sequences_get_Response_200 sequences_update_Response_200: type: object properties: {} description: Empty response body title: sequences_update_Response_200 sequences_delete_Response_200: type: object properties: {} description: Empty response body title: sequences_delete_Response_200 sequences_listSubscriptions_Response_200: type: object properties: {} description: Empty response body title: sequences_listSubscriptions_Response_200 sequences_createSubscription_Response_201: type: object properties: {} description: Empty response body title: sequences_createSubscription_Response_201 sequences_getSubscription_Response_200: type: object properties: {} description: Empty response body title: sequences_getSubscription_Response_200 sequences_updateSubscription_Response_200: type: object properties: {} description: Empty response body title: sequences_updateSubscription_Response_200 BulkEmailContactPreference: type: string enum: - lead - contact - all title: BulkEmailContactPreference BulkActionStatus: type: string enum: - created - loading - processing - done - paused - resuming - error title: BulkActionStatus BulkEmailAction: type: object properties: contact_preference: oneOf: - $ref: '#/components/schemas/BulkEmailContactPreference' - type: 'null' created_by: type: - string - 'null' date_created: type: - string - 'null' format: date-time date_updated: type: - string - 'null' format: date-time email_account_id: type: - string - 'null' id: type: string n_leads: type: - integer - 'null' n_leads_processed: type: integer n_objects: type: - integer - 'null' n_objects_processed: type: integer organization_id: type: string query: type: - string - 'null' results_limit: type: - integer - 'null' s_query: type: object additionalProperties: description: Any type send_done_email: type: boolean sender: type: - string - 'null' sort: type: array items: type: object additionalProperties: description: Any type status: oneOf: - $ref: '#/components/schemas/BulkActionStatus' - type: 'null' template_id: type: - string - 'null' updated_by: type: - string - 'null' required: - contact_preference - created_by - date_created - date_updated - email_account_id - id - n_leads - n_leads_processed - n_objects - n_objects_processed - organization_id - query - results_limit - s_query - send_done_email - sender - sort - status - template_id - updated_by title: BulkEmailAction bulk_actions.email_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/BulkEmailAction' has_more: type: boolean required: - data - has_more title: bulk_actions.email_list_Response_200 BulkEditActionType: type: string enum: - set_custom_field - clear_custom_field - set_lead_status - set_contact_custom_field - clear_contact_custom_field - set_activity_custom_field - clear_activity_custom_field - set_global_custom_field - clear_global_custom_field - set_opportunity_custom_field - clear_opportunity_custom_field - set_custom_object_custom_field - clear_custom_object_custom_field title: BulkEditActionType BulkEditAction: type: object properties: created_by: type: - string - 'null' custom_field_name: type: - string - 'null' custom_field_value: type: - string - 'null' date_created: type: - string - 'null' format: date-time date_updated: type: - string - 'null' format: date-time id: type: string lead_status_id: type: - string - 'null' n_leads: type: - integer - 'null' n_leads_processed: type: integer n_objects: type: - integer - 'null' n_objects_processed: type: integer organization_id: type: string query: type: - string - 'null' results_limit: type: - integer - 'null' s_query: type: object additionalProperties: description: Any type send_done_email: type: boolean sort: type: array items: type: object additionalProperties: description: Any type status: oneOf: - $ref: '#/components/schemas/BulkActionStatus' - type: 'null' type: $ref: '#/components/schemas/BulkEditActionType' updated_by: type: - string - 'null' required: - created_by - custom_field_name - custom_field_value - date_created - date_updated - id - lead_status_id - n_leads - n_leads_processed - n_objects - n_objects_processed - organization_id - query - results_limit - s_query - send_done_email - sort - status - type - updated_by title: BulkEditAction bulk_actions.edit_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/BulkEditAction' has_more: type: boolean required: - data - has_more title: bulk_actions.edit_list_Response_200 BulkActionObjectType: type: string enum: - lead - contact - call - custom_activity - form_submission title: BulkActionObjectType BulkDeleteAction: type: object properties: bulk_object_type: $ref: '#/components/schemas/BulkActionObjectType' created_by: type: - string - 'null' date_created: type: - string - 'null' format: date-time date_updated: type: - string - 'null' format: date-time id: type: string n_leads: type: - integer - 'null' n_leads_processed: type: integer n_objects: type: - integer - 'null' n_objects_processed: type: integer organization_id: type: string query: type: - string - 'null' results_limit: type: - integer - 'null' s_query: type: object additionalProperties: description: Any type send_done_email: type: boolean sort: type: array items: type: object additionalProperties: description: Any type status: oneOf: - $ref: '#/components/schemas/BulkActionStatus' - type: 'null' updated_by: type: - string - 'null' required: - bulk_object_type - created_by - date_created - date_updated - id - n_leads - n_leads_processed - n_objects - n_objects_processed - organization_id - query - results_limit - s_query - send_done_email - sort - status - updated_by title: BulkDeleteAction bulk_actions.delete_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/BulkDeleteAction' has_more: type: boolean required: - data - has_more title: bulk_actions.delete_list_Response_200 BulkSequenceSubscriptionActionType: type: string enum: - subscribe - resume - resume_finished - pause - reassign title: BulkSequenceSubscriptionActionType BulkSequenceSubscriptionContactPreference: type: string enum: - lead - contact title: BulkSequenceSubscriptionContactPreference BulkSequenceSubscriptionAction: type: object properties: action_type: $ref: '#/components/schemas/BulkSequenceSubscriptionActionType' calls_assigned_to: type: - array - 'null' items: type: string contact_preference: oneOf: - $ref: '#/components/schemas/BulkSequenceSubscriptionContactPreference' - type: 'null' created_by: type: - string - 'null' date_created: type: - string - 'null' format: date-time date_updated: type: - string - 'null' format: date-time from_phone_number_id: type: - string - 'null' id: type: string n_leads: type: - integer - 'null' n_leads_processed: type: integer n_objects: type: - integer - 'null' n_objects_processed: type: integer organization_id: type: string query: type: - string - 'null' results_limit: type: - integer - 'null' s_query: type: object additionalProperties: description: Any type send_done_email: type: boolean sender_account_id: type: - string - 'null' sender_email: type: - string - 'null' sender_name: type: - string - 'null' sequence_id: type: - string - 'null' sort: type: array items: type: object additionalProperties: description: Any type status: oneOf: - $ref: '#/components/schemas/BulkActionStatus' - type: 'null' updated_by: type: - string - 'null' required: - action_type - calls_assigned_to - contact_preference - created_by - date_created - date_updated - from_phone_number_id - id - n_leads - n_leads_processed - n_objects - n_objects_processed - organization_id - query - results_limit - s_query - send_done_email - sender_account_id - sender_email - sender_name - sequence_id - sort - status - updated_by title: BulkSequenceSubscriptionAction bulk_actions.sequence_subscriptions_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/BulkSequenceSubscriptionAction' has_more: type: boolean required: - data - has_more title: bulk_actions.sequence_subscriptions_list_Response_200 exports_list_Response_200: type: object properties: {} description: Empty response body title: exports_list_Response_200 CreateExportFlags: type: object properties: include_activities: type: boolean default: false include_addresses: type: boolean include_custom_objects: type: boolean default: false include_smart_fields: type: boolean default: false title: CreateExportFlags exports_createLead_Response_200: type: object properties: {} description: Empty response body title: exports_createLead_Response_200 exports_createOpportunity_Response_200: type: object properties: {} description: Empty response body title: exports_createOpportunity_Response_200 exports_get_Response_200: type: object properties: {} description: Empty response body title: exports_get_Response_200 RunFieldEnrichmentObjectType: type: string enum: - lead - contact title: RunFieldEnrichmentObjectType RunFieldEnrichment: type: object properties: field_id: type: string object_id: type: string object_type: $ref: '#/components/schemas/RunFieldEnrichmentObjectType' organization_id: type: string overwrite_existing_value: type: boolean default: false set_new_value: type: boolean default: true required: - field_id - object_id - object_type - organization_id title: RunFieldEnrichment field_enrichment_create_Response_200: type: object properties: {} description: Empty response body title: field_enrichment_create_Response_200 custom_field_schemas_get_Response_200: type: object properties: {} description: Empty response body title: custom_field_schemas_get_Response_200 custom_field_schemas_update_Response_200: type: object properties: {} description: Empty response body title: custom_field_schemas_update_Response_200 custom_fields.lead_list_Response_200: type: object properties: {} description: Empty response body title: custom_fields.lead_list_Response_200 custom_fields.lead_create_Response_200: type: object properties: {} description: Empty response body title: custom_fields.lead_create_Response_200 custom_fields.lead_get_Response_200: type: object properties: {} description: Empty response body title: custom_fields.lead_get_Response_200 custom_fields.lead_update_Response_200: type: object properties: {} description: Empty response body title: custom_fields.lead_update_Response_200 custom_fields.lead_delete_Response_200: type: object properties: {} description: Empty response body title: custom_fields.lead_delete_Response_200 custom_fields.contact_list_Response_200: type: object properties: {} description: Empty response body title: custom_fields.contact_list_Response_200 custom_fields.contact_create_Response_200: type: object properties: {} description: Empty response body title: custom_fields.contact_create_Response_200 custom_fields.contact_get_Response_200: type: object properties: {} description: Empty response body title: custom_fields.contact_get_Response_200 custom_fields.contact_update_Response_200: type: object properties: {} description: Empty response body title: custom_fields.contact_update_Response_200 custom_fields.contact_delete_Response_200: type: object properties: {} description: Empty response body title: custom_fields.contact_delete_Response_200 custom_fields.opportunity_list_Response_200: type: object properties: {} description: Empty response body title: custom_fields.opportunity_list_Response_200 custom_fields.opportunity_create_Response_200: type: object properties: {} description: Empty response body title: custom_fields.opportunity_create_Response_200 custom_fields.opportunity_get_Response_200: type: object properties: {} description: Empty response body title: custom_fields.opportunity_get_Response_200 custom_fields.opportunity_update_Response_200: type: object properties: {} description: Empty response body title: custom_fields.opportunity_update_Response_200 custom_fields.opportunity_delete_Response_200: type: object properties: {} description: Empty response body title: custom_fields.opportunity_delete_Response_200 custom_fields.activity_list_Response_200: type: object properties: {} description: Empty response body title: custom_fields.activity_list_Response_200 custom_fields.activity_create_Response_200: type: object properties: {} description: Empty response body title: custom_fields.activity_create_Response_200 custom_fields.activity_get_Response_200: type: object properties: {} description: Empty response body title: custom_fields.activity_get_Response_200 custom_fields.activity_update_Response_200: type: object properties: {} description: Empty response body title: custom_fields.activity_update_Response_200 custom_fields.activity_delete_Response_200: type: object properties: {} description: Empty response body title: custom_fields.activity_delete_Response_200 custom_fields.custom_object_list_Response_200: type: object properties: {} description: Empty response body title: custom_fields.custom_object_list_Response_200 custom_fields.custom_object_create_Response_201: type: object properties: {} description: Empty response body title: custom_fields.custom_object_create_Response_201 custom_fields.custom_object_get_Response_200: type: object properties: {} description: Empty response body title: custom_fields.custom_object_get_Response_200 custom_fields.custom_object_update_Response_200: type: object properties: {} description: Empty response body title: custom_fields.custom_object_update_Response_200 custom_fields.shared_list_Response_200: type: object properties: {} description: Empty response body title: custom_fields.shared_list_Response_200 custom_fields.shared_create_Response_200: type: object properties: {} description: Empty response body title: custom_fields.shared_create_Response_200 custom_fields.shared_get_Response_200: type: object properties: {} description: Empty response body title: custom_fields.shared_get_Response_200 custom_fields.shared_update_Response_200: type: object properties: {} description: Empty response body title: custom_fields.shared_update_Response_200 custom_fields.shared_delete_Response_200: type: object properties: {} description: Empty response body title: custom_fields.shared_delete_Response_200 custom_fields.shared_createAssociation_Response_201: type: object properties: {} description: Empty response body title: custom_fields.shared_createAssociation_Response_201 custom_fields.shared_getAssociation_Response_200: type: object properties: {} description: Empty response body title: custom_fields.shared_getAssociation_Response_200 custom_fields.shared_updateAssociation_Response_200: type: object properties: {} description: Empty response body title: custom_fields.shared_updateAssociation_Response_200 custom_activity_types_list_Response_200: type: object properties: {} description: Empty response body title: custom_activity_types_list_Response_200 custom_activity_types_create_Response_201: type: object properties: {} description: Empty response body title: custom_activity_types_create_Response_201 custom_activity_types_get_Response_200: type: object properties: {} description: Empty response body title: custom_activity_types_get_Response_200 custom_activity_types_update_Response_200: type: object properties: {} description: Empty response body title: custom_activity_types_update_Response_200 custom_object_types_list_Response_200: type: object properties: {} description: Empty response body title: custom_object_types_list_Response_200 custom_object_types_create_Response_201: type: object properties: {} description: Empty response body title: custom_object_types_create_Response_201 custom_object_types_get_Response_200: type: object properties: {} description: Empty response body title: custom_object_types_get_Response_200 custom_object_types_update_Response_200: type: object properties: {} description: Empty response body title: custom_object_types_update_Response_200 pipelines_list_Response_200: type: object properties: {} description: Empty response body title: pipelines_list_Response_200 pipelines_create_Response_201: type: object properties: {} description: Empty response body title: pipelines_create_Response_201 pipelines_update_Response_200: type: object properties: {} description: Empty response body title: pipelines_update_Response_200 opportunity_statuses_list_Response_200: type: object properties: {} description: Empty response body title: opportunity_statuses_list_Response_200 opportunity_statuses_create_Response_200: type: object properties: {} description: Empty response body title: opportunity_statuses_create_Response_200 opportunity_statuses_update_Response_200: type: object properties: {} description: Empty response body title: opportunity_statuses_update_Response_200 opportunity_statuses_delete_Response_200: type: object properties: {} description: Empty response body title: opportunity_statuses_delete_Response_200 lead_statuses_list_Response_200: type: object properties: {} description: Empty response body title: lead_statuses_list_Response_200 lead_statuses_create_Response_200: type: object properties: {} description: Empty response body title: lead_statuses_create_Response_200 lead_statuses_update_Response_200: type: object properties: {} description: Empty response body title: lead_statuses_update_Response_200 lead_statuses_delete_Response_200: type: object properties: {} description: Empty response body title: lead_statuses_delete_Response_200 IntegrationLinkType: type: string enum: - lead - contact - opportunity title: IntegrationLinkType IntegrationLink: type: object properties: created_by: type: - string - 'null' date_created: type: - string - 'null' format: date-time date_updated: type: - string - 'null' format: date-time id: type: string name: type: string organization_id: type: string type: $ref: '#/components/schemas/IntegrationLinkType' updated_by: type: - string - 'null' url: type: string required: - created_by - date_created - date_updated - id - name - organization_id - type - updated_by - url title: IntegrationLink integration_links_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/IntegrationLink' has_more: type: boolean required: - data - has_more title: integration_links_list_Response_200 CreateIntegrationLink: type: object properties: name: type: string type: $ref: '#/components/schemas/IntegrationLinkType' url: type: string required: - name - type - url title: CreateIntegrationLink UpdateIntegrationLink: type: object properties: name: type: - string - 'null' type: oneOf: - $ref: '#/components/schemas/IntegrationLinkType' - type: 'null' url: type: - string - 'null' title: UpdateIntegrationLink integration_links_delete_Response_200: type: object properties: {} description: Empty response body title: integration_links_delete_Response_200 email_templates_list_Response_200: type: object properties: {} description: Empty response body title: email_templates_list_Response_200 email_templates_create_Response_200: type: object properties: {} description: Empty response body title: email_templates_create_Response_200 email_templates_get_Response_200: type: object properties: {} description: Empty response body title: email_templates_get_Response_200 email_templates_update_Response_200: type: object properties: {} description: Empty response body title: email_templates_update_Response_200 email_templates_delete_Response_200: type: object properties: {} description: Empty response body title: email_templates_delete_Response_200 EmailTemplateIdRenderGetParametersBulkObjectType: type: string enum: - lead - contact title: EmailTemplateIdRenderGetParametersBulkObjectType EmailTemplateIdRenderGetParametersContactPreference: type: string enum: - lead - contact - all title: EmailTemplateIdRenderGetParametersContactPreference EmailTemplateIdRenderGetParametersSortSchemaItemsDirection: type: string enum: - asc - desc title: EmailTemplateIdRenderGetParametersSortSchemaItemsDirection EmailTemplateIdRenderGetParametersSortSchemaItems: type: object properties: direction: $ref: '#/components/schemas/EmailTemplateIdRenderGetParametersSortSchemaItemsDirection' field: type: string required: - direction - field title: EmailTemplateIdRenderGetParametersSortSchemaItems EmailTemplateIdRenderGetParametersMode: type: string enum: - lead - contact title: EmailTemplateIdRenderGetParametersMode email_templates_render_Response_200: type: object properties: {} description: Empty response body title: email_templates_render_Response_200 sms_templates_list_Response_200: type: object properties: {} description: Empty response body title: sms_templates_list_Response_200 CreateSMSTemplateAttachment: type: object properties: content_type: type: string filename: type: string url: type: string required: - content_type - filename - url title: CreateSMSTemplateAttachment CreateSMSTemplate: type: object properties: attachments: type: array items: $ref: '#/components/schemas/CreateSMSTemplateAttachment' is_shared: type: boolean name: type: string text: type: string required: - name title: CreateSMSTemplate sms_templates_create_Response_201: type: object properties: {} description: Empty response body title: sms_templates_create_Response_201 sms_templates_get_Response_200: type: object properties: {} description: Empty response body title: sms_templates_get_Response_200 UpdateSMSTemplateAttachment: type: object properties: content_type: type: string filename: type: string url: type: string required: - content_type - filename - url title: UpdateSMSTemplateAttachment SMSTemplateStatus: type: string enum: - active - archived title: SMSTemplateStatus UpdateSMSTemplate: type: object properties: attachments: type: array items: $ref: '#/components/schemas/UpdateSMSTemplateAttachment' is_shared: type: boolean name: type: string status: $ref: '#/components/schemas/SMSTemplateStatus' text: type: string title: UpdateSMSTemplate sms_templates_update_Response_200: type: object properties: {} description: Empty response body title: sms_templates_update_Response_200 OutcomeAppliesTo: type: string enum: - calls - meetings title: OutcomeAppliesTo OutcomeType: type: string enum: - vm-dropped - custom title: OutcomeType Outcome: type: object properties: applies_to: type: array items: $ref: '#/components/schemas/OutcomeAppliesTo' created_by: type: - string - 'null' date_created: type: string format: date-time date_updated: type: string format: date-time description: type: - string - 'null' id: type: string name: type: string organization_id: type: string type: $ref: '#/components/schemas/OutcomeType' updated_by: type: - string - 'null' required: - applies_to - created_by - date_created - date_updated - description - id - name - organization_id - type - updated_by title: Outcome outcomes_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/Outcome' has_more: type: boolean required: - data - has_more title: outcomes_list_Response_200 CreateOutcome: type: object properties: applies_to: type: - array - 'null' items: $ref: '#/components/schemas/OutcomeAppliesTo' description: >- Deprecated. This field will be derived from `type` in a future update: `custom` applies to calls and meetings, `vm-dropped` applies to calls only. description: type: - string - 'null' description: Explain what the outcome means and when it should be used. name: type: string description: Displayed to users wherever outcomes can be selected. type: $ref: '#/components/schemas/OutcomeType' description: >- Set to `vm-dropped` if this outcome should be automatically set on calls whenever a team member performs a Voicemail Drop. Otherwise, leave empty or explicitly set to `custom` (default). required: - name title: CreateOutcome UpdateOutcome: type: object properties: applies_to: type: - array - 'null' items: $ref: '#/components/schemas/OutcomeAppliesTo' description: >- Deprecated. This field will be derived from `type` in a future update: `custom` applies to calls and meetings, `vm-dropped` applies to calls only. description: type: - string - 'null' description: Explain what the outcome means and when it should be used. name: type: - string - 'null' description: Displayed to users wherever outcomes can be selected. type: oneOf: - $ref: '#/components/schemas/OutcomeType' - type: 'null' description: >- Set to `vm-dropped` if this outcome should be automatically set on calls whenever a team member performs a Voicemail Drop. Otherwise, leave empty or explicitly set to `custom` (default). title: UpdateOutcome outcomes_delete_Response_200: type: object properties: {} description: Empty response body title: outcomes_delete_Response_200 Playbook: type: object properties: archived_at: type: - string - 'null' format: date-time archived_by_id: type: - string - 'null' created_at: type: string format: date-time created_by_id: type: string custom_field_ids: type: array items: type: string description: type: - string - 'null' id: type: string name: type: string organization_id: type: string outcome_ids: type: array items: type: string position: type: - integer - 'null' summary_guidance: type: - string - 'null' updated_at: type: string format: date-time updated_by_id: type: string required: - archived_at - archived_by_id - created_at - created_by_id - custom_field_ids - description - id - name - organization_id - outcome_ids - position - summary_guidance - updated_at - updated_by_id title: Playbook playbooks_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/Playbook' has_more: type: boolean required: - data - has_more title: playbooks_list_Response_200 CreatePlaybook: type: object properties: custom_field_ids: type: array items: type: string description: >- IDs of [Shared Custom Fields](/api/resources/custom-fields/custom-fields-shared) to associate with this Playbook. description: type: - string - 'null' description: Description of the playbook. name: type: string outcome_ids: type: array items: type: string description: IDs of [Outcomes](/api/resources/outcomes/) that should be associated with this Playbook. summary_guidance: type: - string - 'null' description: Guidance for AI summaries of calls and meetings associated with this Playbook. required: - name title: CreatePlaybook UpdatePlaybook: type: object properties: custom_field_ids: type: array items: type: string description: >- IDs of [Shared Custom Fields](/api/resources/custom-fields/custom-fields-shared) to associate with this Playbook. description: type: - string - 'null' description: Description of the playbook. name: type: string outcome_ids: type: array items: type: string description: IDs of [Outcomes](/api/resources/outcomes/) that should be associated with this Playbook. summary_guidance: type: - string - 'null' description: Guidance for AI summaries of calls and meetings associated with this Playbook. title: UpdatePlaybook scheduling_links_list_Response_200: type: object properties: {} description: Empty response body title: scheduling_links_list_Response_200 scheduling_links_create_Response_201: type: object properties: {} description: Empty response body title: scheduling_links_create_Response_201 scheduling_links_createIntegration_Response_200: type: object properties: {} description: Empty response body title: scheduling_links_createIntegration_Response_200 scheduling_links_get_Response_200: type: object properties: {} description: Empty response body title: scheduling_links_get_Response_200 scheduling_links_update_Response_200: type: object properties: {} description: Empty response body title: scheduling_links_update_Response_200 scheduling_links_listShared_Response_200: type: object properties: {} description: Empty response body title: scheduling_links_listShared_Response_200 scheduling_links_createShared_Response_201: type: object properties: {} description: Empty response body title: scheduling_links_createShared_Response_201 scheduling_links_getShared_Response_200: type: object properties: {} description: Empty response body title: scheduling_links_getShared_Response_200 scheduling_links_updateShared_Response_200: type: object properties: {} description: Empty response body title: scheduling_links_updateShared_Response_200 scheduling_links_createSharedAssociation_Response_201: type: object properties: {} description: Empty response body title: scheduling_links_createSharedAssociation_Response_201 scheduling_links_deleteSharedAssociation_Response_200: type: object properties: {} description: Empty response body title: scheduling_links_deleteSharedAssociation_Response_200 connected_accounts_list_Response_200: type: object properties: {} description: Empty response body title: connected_accounts_list_Response_200 connected_accounts_get_Response_200: type: object properties: {} description: Empty response body title: connected_accounts_get_Response_200 send_as_list_Response_200: type: object properties: {} description: Empty response body title: send_as_list_Response_200 send_as_create_Response_201: type: object properties: {} description: Empty response body title: send_as_create_Response_201 send_as_bulkCreate_Response_200: type: object properties: {} description: Empty response body title: send_as_bulkCreate_Response_200 send_as_get_Response_200: type: object properties: {} description: Empty response body title: send_as_get_Response_200 unsubscribed_emails_list_Response_200: type: object properties: {} description: Empty response body title: unsubscribed_emails_list_Response_200 CreateUnsubscribedEmail: type: object properties: email: type: string format: email required: - email title: CreateUnsubscribedEmail unsubscribed_emails_create_Response_201: type: object properties: {} description: Empty response body title: unsubscribed_emails_create_Response_201 unsubscribed_emails_delete_Response_200: type: object properties: {} description: Empty response body title: unsubscribed_emails_delete_Response_200 UnderlyingCarrier: type: string enum: - twilio - plivo title: UnderlyingCarrier CarrierNumberType: type: string enum: - local - national - mobile - tollfree - shortcode title: CarrierNumberType PhoneNumberType: type: string enum: - internal - external - virtual title: PhoneNumberType PhoneNumber: type: object properties: address_id: type: - string - 'null' bundle_id: type: - string - 'null' carrier: oneOf: - $ref: '#/components/schemas/UnderlyingCarrier' - type: 'null' carrier_type: oneOf: - $ref: '#/components/schemas/CarrierNumberType' - type: 'null' country: type: - string - 'null' date_created: type: string format: date-time date_updated: type: string format: date-time forward_to: type: - string - 'null' forward_to_enabled: type: boolean forward_to_formatted: type: - string - 'null' id: type: string is_group_number: type: boolean is_premium: type: boolean is_verified: type: boolean label: type: string last_billed_price: type: - number - 'null' format: double mms_enabled: type: boolean next_billing_on: type: - string - 'null' format: date-time number: type: string number_formatted: type: string organization_id: type: string participants: type: array items: type: string phone_numbers: type: array items: type: string phone_numbers_formatted: type: array items: type: string press_1_to_accept: type: boolean sms_enabled: type: boolean supports_mms_to_countries: type: array items: type: string supports_sms_to_countries: type: array items: type: string type: $ref: '#/components/schemas/PhoneNumberType' user_id: type: - string - 'null' voicemail_greeting_url: type: - string - 'null' was_ported: type: boolean required: - address_id - bundle_id - carrier - carrier_type - country - date_created - date_updated - id - is_group_number - is_premium - is_verified - label - last_billed_price - mms_enabled - next_billing_on - number - number_formatted - organization_id - sms_enabled - supports_mms_to_countries - supports_sms_to_countries - type - user_id title: PhoneNumber phone_numbers_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/PhoneNumber' has_more: type: boolean required: - data - has_more title: phone_numbers_list_Response_200 CreatePhoneNumberRequestCarrierType: type: string enum: - local - national - mobile - tollfree title: CreatePhoneNumberRequestCarrierType PhoneNumberSharing: type: string enum: - personal - group title: PhoneNumberSharing CreatePhoneNumberRequest: type: object properties: bundle_id: type: - string - 'null' carrier_type: oneOf: - $ref: '#/components/schemas/CreatePhoneNumberRequestCarrierType' - type: 'null' country: type: string description: A two letter ISO country code (e.g. `US` for United States). prefix: type: string default: '' description: A string with the phone number prefix or area code, not including the country code. sharing: $ref: '#/components/schemas/PhoneNumberSharing' description: '`personal` for a number that belongs to an individual user, or `group` for a group number.' with_mms: type: - boolean - 'null' description: >- By default, MMS-capable numbers are rented if Close supports MMS for the given country. Renting an MMS-capable number can be forced by setting this flag to `true`. If set to `false`, certain prefixes that don't support MMS can be rented in countries where Close supports MMS. In most scenarios, this flag should not be passed. When you request an MMS number, you must set `with_sms` to `true` as well. with_sms: type: - boolean - 'null' description: >- By default, SMS-capable numbers are rented if Close supports SMS for the given country. Renting an SMS-capable number can be forced by setting this flag to `true`. If set to `false`, certain prefixes that don't support SMS can be rented in countries where Close supports SMS. In most scenarios, this flag should not be passed unless a `has-voice-only` error status is received. required: - country - sharing title: CreatePhoneNumberRequest phone_numbers_create_Response_201: type: object properties: {} description: Empty response body title: phone_numbers_create_Response_201 UpdatePhoneNumber: type: object properties: forward_to: type: string forward_to_enabled: type: boolean label: type: string participants: type: array items: type: string phone_numbers: type: array items: type: string press_1_to_accept: type: boolean voicemail_greeting_url: type: - string - 'null' title: UpdatePhoneNumber phone_numbers_delete_Response_200: type: object properties: {} description: Empty response body title: phone_numbers_delete_Response_200 BlockedPhoneNumber: type: object properties: created_by: type: string description: User who created this Blocked Number initially. date_created: type: string format: date-time description: When this Blocked Number was created. date_updated: type: string format: date-time description: When this Blocked Number was last updated. id: type: string organization_id: type: string phone: type: string description: The phone number (in E.164 format) to block. reason: type: string description: The reason for blocking the given phone number. updated_by: type: string description: User who most recently updated this Blocked Number. required: - created_by - date_created - date_updated - id - organization_id - phone - reason - updated_by title: BlockedPhoneNumber blocked_phone_numbers_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/BlockedPhoneNumber' has_more: type: boolean required: - data - has_more title: blocked_phone_numbers_list_Response_200 CreateBlockedPhoneNumber: type: object properties: phone: type: string description: The phone number (in E.164 format) that you wish to block. reason: type: string description: The reason why you wish to block a given phone number. required: - phone - reason title: CreateBlockedPhoneNumber BlockedPhoneNumberSettings: type: object properties: reject_anonymous_inbound_calls: type: boolean required: - reject_anonymous_inbound_calls title: BlockedPhoneNumberSettings UpdateBlockedPhoneNumberSettings: type: object properties: reject_anonymous_inbound_calls: type: boolean required: - reject_anonymous_inbound_calls title: UpdateBlockedPhoneNumberSettings UpdateBlockedPhoneNumber: type: object properties: reason: type: string description: The updated reason for blocking the given phone number. required: - reason title: UpdateBlockedPhoneNumber DialerGetParametersSourceTypeSchema: type: string enum: - saved-search - shared-entry title: DialerGetParametersSourceTypeSchema dialers_list_Response_200: type: object properties: {} description: Empty response body title: dialers_list_Response_200 dialers_get_Response_200: type: object properties: {} description: Empty response body title: dialers_get_Response_200 users_getMe_Response_200: type: object properties: {} description: Empty response body title: users_getMe_Response_200 UserGetParametersOrderBy: type: string enum: - last_name,first_name - first_name,last_name title: UserGetParametersOrderBy users_list_Response_200: type: object properties: {} description: Empty response body title: users_list_Response_200 users_listAvailabilities_Response_200: type: object properties: {} description: Empty response body title: users_listAvailabilities_Response_200 UserIdGetParametersOrderBy: type: string enum: - last_name,first_name - first_name,last_name title: UserIdGetParametersOrderBy users_get_Response_200: type: object properties: {} description: Empty response body title: users_get_Response_200 organizations_get_Response_200: type: object properties: {} description: Empty response body title: organizations_get_Response_200 organizations_update_Response_200: type: object properties: {} description: Empty response body title: organizations_update_Response_200 CreateMembership: type: object properties: email: type: string format: email role_id: type: string required: - email - role_id title: CreateMembership memberships_create_Response_200: type: object properties: {} description: Empty response body title: memberships_create_Response_200 memberships_bulkUpdate_Response_200: type: object properties: {} description: Empty response body title: memberships_bulkUpdate_Response_200 memberships_update_Response_200: type: object properties: {} description: Empty response body title: memberships_update_Response_200 memberships_getPinnedViews_Response_200: type: object properties: {} description: Empty response body title: memberships_getPinnedViews_Response_200 SetPinnedSavedView: type: object properties: saved_view_ids: type: array items: type: string required: - saved_view_ids title: SetPinnedSavedView memberships_updatePinnedViews_Response_200: type: object properties: {} description: Empty response body title: memberships_updatePinnedViews_Response_200 roles_list_Response_200: type: object properties: {} description: Empty response body title: roles_list_Response_200 roles_create_Response_201: type: object properties: {} description: Empty response body title: roles_create_Response_201 roles_get_Response_200: type: object properties: {} description: Empty response body title: roles_get_Response_200 roles_update_Response_200: type: object properties: {} description: Empty response body title: roles_update_Response_200 roles_delete_Response_200: type: object properties: {} description: Empty response body title: roles_delete_Response_200 GroupMember: type: object properties: user_id: type: string required: - user_id title: GroupMember Group: type: object properties: id: type: string members: type: - array - 'null' items: $ref: '#/components/schemas/GroupMember' name: type: string organization_id: type: string required: - id - name - organization_id title: Group groups_list_Response_200: type: object properties: data: type: array items: $ref: '#/components/schemas/Group' has_more: type: boolean required: - data - has_more title: groups_list_Response_200 CreateGroup: type: object properties: name: type: string required: - name title: CreateGroup CreateGroupMember: type: object properties: user_id: type: string required: - user_id title: CreateGroupMember securitySchemes: ApiKeyAuth: type: http scheme: basic description: Use your API key as the username and leave the password empty. OAuth2: type: http scheme: bearer