For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
HomepageProduct HelpLog inTry for Free
Developers HomeAPI ReferenceMCP
Developers HomeAPI ReferenceMCP
  • Getting Started
    • Introduction
    • Authentication with API Keys
    • Authentication with OAuth
    • API Clients
    • Pagination
    • Specifying Fields
    • Filter Parameters
    • HTTP Response Codes
    • Rate Limits
    • Timezone Offsets
    • Rich Text Fields
    • Changelog
  • CRM Core
    • Leads
    • Contacts
    • Opportunities
    • Tasks
    • Files
    • Custom Objects
    • Comments
  • Activities
    • Activities
    • Notes
    • Calls
    • Emails
    • Email Threads
    • WhatsApp Messages
    • Meetings
    • Custom Activities
    • Creations
    • Form Submissions
    • Lead Status Changes
    • Opportunity Status Changes
    • Lead Merges
    • Task Completions
  • Events & Webhooks
    • Webhooks
    • Events
      • List of Event Types
      • GETRetrieve a list of events
      • GETRetrieve a single event by ID
  • Search & Reporting
    • Advanced Filtering
    • Smart Views
    • Reporting
  • Automation & Bulk Actions
    • Sequences (Workflows)
    • Bulk Actions
    • Exports
    • AI Field Enrichment
  • CRM Configuration
    • Custom Fields
    • Custom Activity Types
    • Custom Object Types
    • Pipelines
    • Opportunity Statuses
    • Lead Statuses
    • Integration Links
    • Forms
  • Communication Configuration
    • Email Templates
    • SMS Templates
    • Outcomes
    • Playbooks
    • Scheduling Links Guide
    • Scheduling Links
    • Connected Accounts
    • Send As
    • Unsubscribed Emails
    • Phone Numbers
    • Blocked Phone Numbers
    • Dialers
  • Users & Organizations
    • Users
    • Organizations
    • Memberships
    • Roles
    • Groups
Close

Product

OverviewCommunicationAutomationIntegrationsReportingSMSCallingSecurityForms

Pricing & Use Cases

PricingClose vs Other CRMsCustomer Stories

Resources

Sales BlogSales ResourcesSales GuidesWebinarsOn-Demand DemoSales Tools

Company

AboutCareersPartner with CloseBrand GuidelinesTermsPrivacyGDPRCCPA

Get Help

+1-833-GO-CLOSEHelp CenterDownload the Close AppProduct UpdatesSystem Status
LogoLogo
HomepageProduct HelpLog inTry for Free
Events & WebhooksEvents

Retrieve a list of events

||View as Markdown|
GET
https://api.close.com/api/v1/event/
GET
/api/v1/event/
$curl https://api.close.com/api/v1/event/ \
> -u "<CLOSE_API_KEY>:"
1{
2 "cursor_next": "cursor2",
3 "cursor_previous": "cursor1",
4 "data": []
5}
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`.
Was this page helpful?
Previous

List of Event Types

Next

Retrieve a single event by ID

Built with

The list of available object types and actions is available here. 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.

Authentication

AuthorizationBasic
Use your API key as the username and leave the password empty.
OR
AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Query parameters

_limitintegerOptionalDefaults to 100
Number of results to return.
_skipintegerOptionalDefaults to 0
Number of results to skip before returning, for pagination.
object_typestring or nullOptional
object_idstring or nullOptional
lead_idstring or nullOptional
actionstring or nullOptional
user_idstring or nullOptional
date_updated__gtstring or nullOptional
date_updated__gtestring or nullOptional
date_updated__ltstring or nullOptional
date_updated__ltestring or nullOptional

Response

Successful response

Errors

400
Bad Request Error
401
Unauthorized Error
404
Not Found Error