List engagements

View as Markdown
Returns workspace engagements using cursor pagination ordered by `updated_at` descending by default. Engagement filtering follows MCP-style bucket semantics: AskElephant `company_ids` plus CRM company associations share one company bucket, AskElephant `contact_ids` plus CRM contact associations share one participant bucket, and CRM deal associations resolve into a project bucket. Values within the same bucket match with OR semantics; populated buckets combine with AND semantics. This operation requires the `engagements:read` scope. Requesting `expand=companies` also requires `companies:read`. Requesting `expand=contacts` also requires `contacts:read`. Requesting `expand=owner` also requires `users:read`.

Authentication

AuthorizationBearer

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

Query parameters

limitintegerOptional1-100Defaults to 25
Maximum number of results to return. Defaults to 25 and is capped at 100.
cursorstringOptional
Opaque cursor from a previous list response.
searchstringOptional

Free-text search string matched against engagement titles only. This does not search transcripts, descriptions, participant names, or CRM fields.

order_byenumOptional

Sort order for the list. Defaults to updated_at:desc.

Allowed values:
filter[engagement_type][eq]enumOptional
filter[engagement_type][in]list of enumsOptional

Comma-separated engagement types.

filter[processing_status][eq]enumOptional
Allowed values:
filter[processing_status][in]stringOptional

Comma-separated processing statuses.

filter[company_ids][eq]stringOptionalformat: "^cmp_[A-Za-z0-9]+$"
Filter engagements by one AskElephant company ID.
filter[company_ids][in]stringOptional

Filter engagements by any of the comma-separated AskElephant company IDs. Supports up to 25 values.

filter[contact_ids][eq]stringOptionalformat: "^cnt_[A-Za-z0-9]+$"
Filter engagements by one AskElephant contact ID.
filter[contact_ids][in]stringOptional

Filter engagements by any of the comma-separated AskElephant contact IDs. Supports up to 25 values.

filter[tag_ids][eq]stringOptionalformat: "^tag_[A-Za-z0-9]+$"
Filter engagements by one AskElephant tag ID.
filter[tag_ids][in]stringOptional

Filter engagements by any of the comma-separated AskElephant tag IDs. Supports up to 25 values.

filter[crm_associations][eq]stringOptional
Filter resources by CRM associations. For readability, docs examples use indexed bracket syntax such as `filter[crm_associations][eq][0][id]=123` plus `filter[crm_associations][eq][0][object_type]=<supported-object-type>`. The API also accepts a JSON-encoded array string with objects containing `id` and `object_type`. CRM source is inferred from the workspace's connected CRM state. Supported `object_type` values depend on the endpoint. Supports up to 20 objects.
filter[start_at][gt]datetimeOptional
filter[start_at][gte]datetimeOptional
filter[start_at][lt]datetimeOptional
filter[start_at][lte]datetimeOptional
filter[updated_at][gt]datetimeOptional

Return resources updated strictly after the provided ISO-8601 UTC timestamp.

filter[updated_at][gte]datetimeOptional

Return resources updated at or after the provided ISO-8601 UTC timestamp.

filter[updated_at][lt]datetimeOptional

Return resources updated strictly before the provided ISO-8601 UTC timestamp.

filter[updated_at][lte]datetimeOptional

Return resources updated at or before the provided ISO-8601 UTC timestamp.

expandlist of enumsOptional
Comma-separated list of additional fields to include in the response. Valid values: `companies`, `contacts`, `owner`, `action_items`, `signals`, `transcript`, `media_url`, `tags`. `companies` additionally requires `companies:read`. `contacts` additionally requires `contacts:read`. `owner` additionally requires `users:read`.

Response headers

X-Api-Versionstring

Response

Paginated engagements list.
objectenum
Allowed values:
datalist of objects
has_moreboolean
next_cursorstring or null

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
429
Too Many Requests Error
500
Internal Server Error