Export users
Export users from a workspace.
Example
Here is an example of how to export users:
const url = new URL('https://api.croct.io/export/user');url.searchParams.append('start', '1440990000000');url.searchParams.append('end', '1441076400000');url.searchParams.append('pageSize', '100');
const response = await fetch(url, { headers: { 'X-Api-Key': '<API KEY>', },});
const {items, nextCursor} = await response.json();Headers
This endpoint requires the following HTTP headers:
- X-Api-Keystring
The API key of the application associated with the workspace from which to export users.
Parameters
This endpoint accepts the following query parameters:
- start(optional)integer
The earliest user last-modified time to include, in milliseconds since epoch.
Only users updated at or after this time are included.
- end(optional)integer
The latest user last-modified time to include, in milliseconds since epoch.
Only users updated before this time are included. If not provided, there is no upper time limit.
- pageSize(optional)integer
The maximum number of users returned per request.
Must be between 1 and 1000.
Default:100- cursor(optional)string
A cursor for retrieving the next page of results.
If omitted, export starts from the beginning of the specified time window.
Response
This endpoint returns a JSON response with the following properties:
- dataobject
The response containing exported users and pagination information.
- itemsArray<object>
The list of exported users.
- userIdstring
The internal ID assigned to the user, unique across the workspace, in UUID format.
- externalUserIdstring|null
The external user ID used to identify the user on the application side.
Always null for anonymous users.
- firstNamestring|null
The user's first name.
- lastNamestring|null
The user's last name.
- birthDateinteger|null
The user's birth date, in milliseconds since epoch.
- genderstring
The user's gender.
These are the possible values and what they represent:
Value Description MALE Male gender. FEMALE Female gender. NEUTRAL Neither male nor female gender. UNKNOWN An unspecified gender. - emailstring|null
The user's primary email address.
- alternateEmailstring|null
The user's alternate email address.
- phonestring|null
The user's primary phone number.
- alternatePhonestring|null
The user's alternate phone number.
- addressUserAddress
- avatarstring|null
The URL of the user's avatar image.
- companystring|null
The user's company name.
- companyUrlstring|null
The user's company website URL.
- jobTitlestring|null
The user's job title.
- activitiesArray<string>
The user's activities.
- interestsArray<string>
The user's interests.
- customAttributesobject
Custom attributes associated with the user.
- lastModifiedTimeinteger
The timestamp when the user was last modified, in milliseconds since epoch.
Not updated on sync operations.
- statisticsUserStatistics
- userId
- nextCursorstring
An opaque cursor for retrieving the next page of results.
The value is an empty string when there are no more results. Treat it as opaque and pass it back unchanged on the next request.
- items
Example response
Here is an example of a JSON response from this endpoint:
{ "items": [ { "userId": "e9fc50b8-1773-42a0-ac51-fab9a1ee48de", "externalUserId": "john-doe-acme-123", "firstName": "John", "lastName": "Doe", "birthDate": 631152000000, "gender": "MALE", "email": "john@acme.com", "alternateEmail": "john@example.com", "phone": "000000000", "alternatePhone": "999999999", "address": { "street": "Av. Paulista, 2202", "district": "Bela Vista", "city": "São Paulo", "region": "São Paulo", "country": "BR", "postalCode": "12345-678" }, "avatar": "https://example.com/avatar", "company": "Acme", "companyUrl": "https://acme.com", "jobTitle": "CEO", "activities": ["content-share", "newsletter-subscription"], "interests": ["business", "politics"], "customAttributes": { "plan": "Pro", "subscriptionDate": "2025-01-01" }, "lastModifiedTime": 1440979201000, "statistics": { "orders": 2, "sessions": 1 } } ], "nextCursor": "eyJzZXNzaW9uSWQiOiIxMjM0NSIsImNsb3NlVGltZSI6MTYwOTQ1OTMwMDAwMH0"}