List activities
Retrieve a list of activities with pagination support.
Request
- Base URLhttps://api.commonroom.io/api/v2
- AuthHTTP bearer
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Query parameters
The maximum number of activities to return per page
Pagination cursor from a previous response
Field to sort results by.
Sort direction
Comma-separated list of additional columns to include in the response. Valid column values: contactId, content, isUserInitiated, participantCount, providerId, providerName, replyCount, sentiment, subSourceNames, url. The meta column recordCount can be requested to return the total number of matching activities in meta.recordCount.
Filter activities by prefixed contact ID (format c_<number>)
Filter activities by prefixed organization ID (format o_<number>)
Only return activities occurring at or after this ISO-8601 datetime
Only return activities occurring at or before this ISO-8601 datetime
Structured filter as URL-encoded JSON — see the LightFilterExpression schema for the grammar. Conditions are combined (AND) with the other query parameters. To filter by contact or organization, use the dedicated contactId / organizationId query parameters above.
Filterable fields:
| Field | Filter type | Operators | Description |
|---|---|---|---|
| activityTime | dateRangeFilter | in, between, after, before | Filter activities by time range |
| activityType | stringListFilter | any, none | Filter activities by activity type ID. Use PascalCase enum names returned in activity records (e.g., "SlackPost", "GitHubIssueOpen"). |
| activityProviderId | stringListFilter | any, none | Filter activities by provider ID. Use provider IDs from GET /providers to discover available sources (e.g., Gong, Salesforce, Slack). |
| activityTopic | stringListFilter | any, all, none, empty, notEmpty | Filter activities by topic IDs. Use GET /topics to list available topics. |
| activityKeyword | stringListFilter | any, all, none | Keyword search across activity content |
| activityCategory | stringListFilter | any, all, none, empty, notEmpty | Filter activities by auto-category label IDs. Use GET /activity-categories to find IDs. |
| activitySentiment | stringListFilter | any, all, none, empty, notEmpty | Filter activities by sentiment label IDs. Use GET /activity-sentiment to find IDs. |
| activityIsParent | booleanFilter | eq, ne | Filter activities by whether they are parent activities (conversations) |
| activityIsUserInitiated | booleanFilter | eq, ne | Filter activities by whether they were initiated by the contact. |
| activityIsTeamMember | booleanFilter | eq, ne | Filter activities by whether the contact who performed them is a teammate (workspace user). |
Filtering by a related entity: a group whose target names another entity applies its clauses to that entity, using the fields of that entity's list endpoint. Every group must send target, objectConfigId and targetAssocPaths, using null for any it doesn't use. Targets this endpoint accepts:
| Target | Matches activities | Clauses use |
|---|---|---|
| Contact (alias Member) | whose contact matches | GET /contacts fields |
| Organization (alias Company) | whose organization matches | GET /organizations fields |
Any other target, including Object, returns a 400.
Response
OK
Changes
No recorded changes to this operation across all 1 revision of this API.