Use Cases
- Bulk Update User Attributes: Use the JSON endpoint to update custom attributes for multiple users.
- Bulk Update Company Information: Send an array of company records to update details like company name, partner contact, or company type.
- Large-Scale Data Synchronization: When updating tens of thousands of users/companies, use the file upload endpoints with NDJSON formatted files for better performance and error handling.
Authentication
All requests require an API token in theAuthorization header:
Authorization: Token {YOUR_API_KEY}
Limitations
- File size up to 50 MB (for file uploads).
- JSON/NDJSON list up to 10,000 users or companies per request.
- Up to 1,200 rows processed per minute.
- Only primitive types (string, number, boolean, null) are supported in metadata.
Endpoints
1. Update User Profiles (JSON)
Endpoint
The endpoint URL uses the
analytex environment. For EU data residency, use
analytex-eu instead. See Environment
Settings for your specific endpoint.Headers
Content-Type: application/jsonAccept: application/json, text/plain, */*Authorization: Token {YOUR_API_KEY}
Request Body
Send a JSON payload containing an array of user profile objects:Response
A successful call returns a job object:2. Update Company Profiles (JSON)
Endpoint
The endpoint URL uses the
analytex environment. For EU data residency, use
analytex-eu instead. See Environment
Settings for your specific endpoint.Headers
Content-Type: application/jsonAccept: application/json, text/plain, */*Authorization: Token {YOUR_API_KEY}
Request Body
Send a JSON payload containing an array of company profile objects:Response
A successful call returns a job object:3. Update Profiles via File Upload (NDJSON)
For very large updates, you may upload NDJSON files containing user or company profiles.3.1 Update User Profiles via File Upload
Endpoint
The endpoint URL uses the
analytex environment. For EU data residency, use
analytex-eu instead. See Environment
Settings for your specific endpoint.Headers
Content-Type: multipart/form-dataAccept: application/json, text/plain, */*Authorization: Token {YOUR_API_KEY}
Request Body
Submit the file using multipart/form-data. Include a key calledfile with your NDJSON file:
3.2 Update Company Profiles via File Upload
Endpoint
Headers
Content-Type: multipart/form-dataAccept: application/json, text/plain, */*Authorization: Token {YOUR_API_KEY}
Request Body
Use multipart/form-data with a key namedfile containing your NDJSON file:
4. Bulk Update Job Monitoring
After submitting a bulk update, a job is created to process your profiles asynchronously.4.1 List All Bulk Update Jobs
Endpoint
Headers
Authorization: Token {YOUR_API_KEY}Accept: application/json, text/plain, */*
Response
Returns a list of jobs with their statuses, IDs, and submission timestamps:4.2 Get Bulk Update Job Status by ID
Endpoint
{job_id} with the ID of the job you want to inspect.
Headers
Authorization: Token {YOUR_API_KEY}Accept: application/json, text/plain, */*
Response
Returns details about the specific job, including its current status and any errors encountered:Best Practices
- Validate Your Data: Ensure each record includes the required identifiers (
user_idorcompany_id) and that metadata is formatted correctly. - Monitor Jobs: Always use the job monitoring endpoints to check the status of your bulk updates.
- Rate Limits and Retries: If you experience rate limits or timeouts, batch your requests and monitor job statuses before submitting more.
Troubleshooting
- Authentication Errors: Verify your API token and that it is sent in the
Authorizationheader. - Invalid Payload: Ensure your JSON/NDJSON is well-formed and required fields are present.
- Job Failures: Use the job status endpoint to inspect error messages for failed records or processing issues.