Bulk API to insert User records. This API endpoint accepts POST requests with JSON data containing a list of User records wrapped in a dictionary.
POST /v1/users
{
"data": [user_1, user_2, user_3]
}
If a record with the same user_id already exists in the dataset, the existing record will
be replaced (no partial update is allowed at this time). We recommend limiting your calls to
around 100 records at a time to avoid memory issues or timeout risks.
This API validates the inserted records against the API schema. Any schema error will cause
the whole request to fail (status_code=422), and none of the records will be inserted. As
long as the request passes the schema validation, the API will return status_code=200, but
you should still check if there is any error occurring with individual records.
{
"errors": true,
"data": [
"data.0.user_id is invalid. The attribute was expected to be a `string`"
]
}
The API will return a JSON object with a task_id that can be used to retrieve.
{
"data": {
"task_id": "{task_id}"
}
}
To check the exact response body of this task_id, make a GET request to the following endpoint:
GET /v1/users/_status/{task_id}
Replace {task_id} with the task_id returned from the response.
Your secret API key is used to access every Miso API endpoint. You should secure this key and only use it on a backend server. Never leave this key in your client-side JavaScript code. If the private key is compromised, you can revoke it in Dojo and get a new one.
Specify your secret key in the api_key query parameter. For example:
POST /v1/users?api_key=039c501ac8dfcac91c6f05601cee876e1cc07e17