Email SupportCall Us Go to Close

API Changelog

Jun 7th, 2024 - Lead API only returns incomplete tasks.

We have updated the Lead API so that it only returns incomplete tasks in the "tasks" field. Previously it returned both incomplete and completed tasks. This led to some Lead API responses being exceedingly large for some clients.

You can still access completed tasks for the given lead via the Task API, filtering by lead_id=DESIRED_LEAD_ID and view=archive.

Apr 24, 2024 - Rate limit body deprecated.

We have updated the rate limit documentation deprecating the request body. All rate limit information should be in the headers (which are compliant with the current RFC spec).

Mar 28th, 2024 - Commenting API

We have added a new Commenting API to enable commenting on objects within Close.

Mar 27th, 2024 - Pipeline fields in Opportunities

We have added pipeline_id and pipeline_name fields inside Opportunity responses. These can be used to retrieve the Opportunity Status Pipeline information without performing an extra request.

Feb 26th, 2024 - Files API, Email Attachments

We have added a new Files API for uploading files to Close for use as email attachments. Files uploaded using this API can be used as attachments on email activities and email templates.

Feb 21st, 2024 - Custom Objects (BETA)

We have added Custom Objects API (BETA) for managing Custom Objects, including Custom Object Types, Instances, and Custom Fields. Do note that this API is in Beta and can change at any time without notice.

Feb 15th, 2024 - Email Unsubscribe

Contact resource now has emails[].is_unsubscribed attribute, indicating that a contact has unsubscribed from automated emails.

We also introduced a new event unsubscribed_email.created, which you can subscribe to using webhooks. The event contains an email address of the unsubscribed contact.

We have added two new API endpoints to User Scheduling Links for integrating OAuth Applications to sync scheduling links into Close. Note this feature requires authenticating via OAuth.

Nov 10, 2023 - Returning single custom fields in the Leads API

We now support returning only a subset of custom fields when querying leads. See the Lead API for more information.

We have added the recording_transcript and voicemail_transcript fields to responses in the Call API.

Oct 2nd, 2023 - Change to Sequence Subscription API

We have added the lead_id field to responses in the Sequence Subscription API.

We have added an ability to create or update third party Meeting integrations. Note that this feature is only available to OAuth apps.

We also added an ability to search Meetings on calendar provider information they were synced from. This feature is available to OAuth apps and API key integrations.

Aug 29th, 2023 - Change to the Sequence API

We have added a new schedule field and removed the existing schedule_id field in the Sequence API.

July 21st, 2023 - Rate limit headers updated.

We have updated the rate limit header to comply with the current RFC spec.

We have added fields related to lead visibility to Roles.

June 20th, 2023 - OAuth Applications

We have added support for authentication and authorization using OAuth.

We have added support for Scheduling Links.

Dec 22nd, 2022 - "Hidden" type Custom Field values visible in Event Log

Previously, we did not display values of "Hidden" type Custom Fields (i.e. fields which are not visible in the UI and which are for API use only) in the Event Log. Now we do.

Sept 26th, 2022 - SMS Templates

We have added support for SMS Templates.

Mar 10th, 2022 - Sequences

We have added support for calling steps within Sequences.

Feb 15th, 2022 - MMS support

We have added support for requesting MMS-enabled phone numbers with our phone rental API: pass with_mms to get a phone number that can send and receive MMS messages (restricted to Canada and United States due to Twilio limitations).

We have added support for getting received MMS attachments to SMS activities: look for attachments field on returned JSON objects representing SMS activities.

We have added attachments to Incoming SMS tasks too.

Feb 14th, 2022 - Advanced Filtering API

We have added functionality to our Advanced Filtering API to allow you to filter Lead objects using a set of arbitrary filters. The query parameter on the lead endpoint is now deprecated in favor of using the Advanced Filtering API

Nov 16th, 2021 - New Webhook Filters

We have added 4 new filters to our Webhook filtering capabilities: is_null, non_null, not_equals, and not. Check out the Webhook filtering documentation for more information and examples.

Nov 9th, 2021 - Undocumented an old endpoint for Activity Reporting

We have removed the documentation for an old and deprecated version of the Activity Reporting endpoint, /report/activity/{organization_id}/. All new integrations should use the new version of the endpoint.

June 11th, 2021 - Custom Fields on Opportunities

Opportunities can now be associated with Custom Fields. A new API endpoint allows you to create Opportunity Custom Fields. The Shared Custom Field APIs are also extended to support associations with Opportunities. Values for Custom Fields can now be attached to an Opportunity through the Opportunity API.

June 7th, 2021 - Automatically pause failing webhook subscriptions

We will automatically pause webhook subscriptions to which all event delivery fails for 3 days.

May 17th, 2021 - Custom Field ID Format

Going forward, all new Custom Fields will share a common ID prefix, cf_, instead of object type specific prefixes like lcf_ for Lead Custom Fields, and ccf_ for Contact Custom Fields.

Existing Custom Field IDs will not change, but be advised that we will soon allow existing Custom Fields to become Shared Custom Fields. This means a Shared Custom Field may have an ID prefix previously reserved for another object type. The ID prefix should not be used to infer the type of object associated with the Custom Field.

Apr 22th, 2021 - Shared Custom Fields

Several new endpoints let you create a single Custom Field, share it across multiple object types, and reorder all your Custom Fields:

Apr 13th, 2021 - Contact Filtering

A new endpoint that lets you find Contacts by an arbitrary set of filters.

Mar 31st, 2021 - Change to the Sequence API

When listing Sequence Subscriptions, it is now required to filter by sequence_id, lead_id or contact_id.

Jan 5th, 2021 - Changes to the Sequence API

  1. Failed attempt at creation/update/deletion of a Sequence because of an issue with permissions will now return a 403 error instead of a 401 error.
  2. Errors pertaining to Sequence Steps will no longer give you a deep nested error structure (e.g. {"field-errors": {"steps": {"errors": {...}}}}), but rather a simple high-level error (e.g. {"error": "The delay of a Sequence Step must not be larger than 365 days."}).

Oct 29th, 2020 - Microsoft Connected Accounts

It is now possible to connect Microsoft Accounts via OAuth for connecting Office 365 email. The new Connected Account type is documented in the Connected Accounts API.

Oct 9th, 2020 - Send As API

It is now possible to use the Send As feature through the API by using the Send As API. You can get which email accounts you can use to send emails through the Connected Accounts API.

Oct 3rd, 2020 - Active Calls on the Users Availability API

You can now use the Users Availability API to determine which users in your organization are currently on active phone calls in Close.

Sep 18th, 2020 - New URL for the Custom Field API

The recommended URL for the Custom Field API has changed from /custom_fields/*/ to /custom_field/*/. The latter form is more consistent with every other endpoint in our API. The old endpoint will continue to work, however, we recommend everybody to migrate to the new endpoint.

Aug 13th, 2020 - Groups

Groups are collection of Users. If you often use the same set of Users for filtering and reporting, you can now name them and use a Group in various places in Close.

Aug 7th, 2020 - Custom Activities Beta

We are beginning a limited beta test of a new Custom Activities feature. This feature will allow users to define arbitrary activity types specific to their workflow. The custom_activities, activity/custom and custom_fields/activity defined here are not yet accessible to all API users, and may change before the feature is launched.

Jun 30th, 2020 - Connected Accounts and clarification on field usage in integrations

You can now use the Connected Accounts endpoint to get information about any accounts you have connected in Settings > Connected Accounts. This is particularly useful in finding a sender_account_id when subscribing a contact to a sequence

Additionally, we have also added a clarification to the Fields section regarding the use of response fields in integrations. Non-custom fields that are returned by an endpoint that are not listed in our sample response should not be used in integrations, as they may change without warning.

May 19th, 2020 - HTTP/2 and Header Casing

We have started deploying new infrastructure that supports HTTP/2 connections. The HTTP/2 specification requires lowercase headers and HTTP/1.1 states header names are case insensitive. Therefore, we have updated our documentation to specify lowercase header names but will continue to support case insensitive headers in requests for HTTP/1.1 connections. Responses will have header names normalized to lowercase.

Apr 30th, 2020 - Custom Field Description

Custom Fields now have an optional description property, which is a longer description of the field that may be shown to users for context. This applies to both Lead and Contact Custom Fields.

Apr 6th, 2020 - Custom Fields on Contacts

Contacts can now have Custom Fields attached to them. A new API endpoint allows you to create Contact Custom Fields. Values for Contact Custom Fields can be attached to a Contact through the Contact API.

Dec 10th, 2019 - Introducing Pipelines

Pipelines are named and ordered groups of Opportunity Statuses. You can:

  • Create, update, and delete Pipelines via the Pipeline API.
  • Create Opportunity Statuses in a specific Pipeline via the Opportunity Status API.
  • Reorder Opportunity Statuses within a Pipeline and move them between Pipelines by sending a PUT to the Pipeline API.

With the introduction of Pipelines, we are deprecating the opportunity_statuses field in the Organizanization API and Me API. Use the pipelines field instead.

Nov 13th, 2019 - Deprecate old Activity Report endpoint

The new Activity Report endpoint was released May 8th, 2019 and should now be used to retrieve all Activitiy Report data. The older version of this endpoint is deprecated and will be removed in the future. The new version uses a POST to /report/activity/ and the old version uses a GET to /report/activity/{ORGANIZATION_ID}/.

Oct 31st, 2019 - Deprecate setting a status on an Opportunity via the status field

All new integrations should use the status_id field when POST/PUTting to the Opportunity API. Using a status label in the status field, albeit conveninent at first, could lead to broken integrations when users rename statuses in the UI.

Oct 12th, 2019 - Add new endpoint for Meeting activities

A new /activity/meeting/ endpoint has been added that allows you to interact with Close Meeting activities synced from Google Calendar. This feature is currently in beta, so the API is subject to change.

Aug 20th, 2019 - POST HTTP Status Code

For newer APIs, we return a 201 HTTP Status Code for POST requests when creating an entity. We also include a Location header with the URL for the new entity. Existing APIs will continue to return a 200 for POST requests.

Jul 2nd, 2019 - Add multiple value support to the bulk edit action

custom_field_values and custom_field_operation can now be used when creating bulk edit actions to replace, add, or remove multiple values at once on custom fields that accept multiple values.

June 18th, 2019 - Add event filtering to webhook subscriptions

Webhook subscriptions now support the extra_filter field which allows filtering of events based on field and value changes.

May 10th, 2019 - Add API key ID to events

The events available from the event log and webhooks now contain the API key ID if the changes were made using an API key.

May 8th, 2019 - Add new activity report endpoint

A new activity report endpoint has been added that allows fetching more metrics. The list of available metrics is also exposed in the reporting API.

Apr. 25th, 2019 - Support for Multi-Select Custom Fields

"Choices" and "User" type Custom Fields can accept multiple values now:

  • Create a multi-value Custom Field by POSTing {"accepts_multiple_values": true} to the Lead Custom Field API.
  • Set multiple values for the Custom Field on a Lead by POSTing {"custom.lcf_xyz": ["Value 1", "Value 2", "Value 3"]} to the Lead API.

Apr. 9th, 2019 - All exports are now compressed with GZIP

All exports are now compressed with GZIP. Downloads will now set HTTP headers Content-Encoding: gzip, and Content-Type: text/csv or Content-Type: application/json depending on export format.

Mar. 7th, 2019 - Drop the field plan_type from the Membership API

The plan_type field for the Membership API has been dropped for organizations that use the new billing system, given they cannot have different plans for their members.

The field is still available to organizations using the previous billing system, until they switch to the new one.

Feb. 22, 2019 - New Base URL

We've switched the base URL of our API from to

The old base URL is now deprecated.

Feb. 18, 2019 - Additional country fields

We've added country information to a few of our endpoints:

  • Contact API responses include country information for each phone number.
  • Phone Number API includes a list of countries the number can send SMS to.
  • SMS API includes country information for the local and remote phone number.

Jan. 25, 2019 - Event Log Fields

Events retrieved by non-admins will now include the data and previous_data fields for events not older than 1 hour. Older events will not include these fields as before.

Nov. 28, 2018 - Webhooks Subscription API

Added Webhooks Subscription API.