Create Batch Import
Creates a batch user import job with the given list of users' information.
Users are upserted (created if they do not exist or updated if they do exist). This is the first step in an asynchronous workflow. This request can be made idempotent.
Payload Limits
The number of request objects that can be included in a single batch request is 50,000
.
Special Batch Rate Limits
The limit for in-progress batches per Fullstory org is 100
. After 100
in-progress batches, future batch requests will be accepted, but will not start
until some complete.
Once there are 200
in-progress batches or 500,000
individual operations, the API will return 429
rate limit errors until some complete, regardless
of request frequency.
Header Parameters
Optional header for making the request idempotent
Request Body required
requests object[] required
A successful response.
Schema
job object required
{
"job": {
"id": "abc123",
"status": "PROCESSING",
"created": "2017-01-15T01:30:15.01Z"
}
}
Returned when invalid input has been provided. Fix the issue and retry.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "uid is required",
"code": "required_field"
}
Returned when access to the resource is unauthorized.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "access is unauthorized",
"code": "unauthorized"
}
Returned when access is not allowed due to insufficient permissions.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "insufficient permissions",
"code": "forbidden"
}
Returned when the resource does not exist.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "Requested resource does not exist",
"code": "resource_not_found"
}
Returned when the client has exceeded the rate limit for this endpoint. A Retry-After
header will be included with the response. This header will contain the number of seconds that you should wait before attempting to send another request.
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "Too many requests. Client has exceeded the rate limit for this endpoint.",
"code": "too_many_requests"
}
Returned when a server error is encountered
Schema
Long form description of what went wrong
A short snake-cased value that is safe to handle programmatically
{
"message": "Server error was encountered",
"code": "server_error"
}
POST /v2/users/batch
Authorization: ApiKeyAuth
name: Authorizationin: headertype: apiKey
https://api.fullstory.com/v2/users/batch
- cURL
- Python
- Go
- Javascript
curl -L -X POST 'https://api.fullstory.com/v2/users/batch' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Basic <API_KEY_VALUE>' \
--data-raw '{
"requests": [
{
"uid": "xyz123",
"properties": {
"rewards_status": "platinum"
}
}
]
}'
curl -L -X POST 'https://api.fullstory.com/v2/users/batch' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Basic <API_KEY_VALUE>' \
--data-raw '{
"requests": [
{
"uid": "xyz123",
"properties": {
"rewards_status": "platinum"
}
}
]
}'
curl -L -X POST 'https://api.fullstory.com/v2/users/batch' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Basic <API_KEY_VALUE>' \
--data-raw '{
"requests": [
{
"uid": "xyz123",
"properties": {
"rewards_status": "platinum"
}
}
]
}'
curl -L -X POST 'https://api.fullstory.com/v2/users/batch' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Basic <API_KEY_VALUE>' \
--data-raw '{
"requests": [
{
"uid": "xyz123",
"properties": {
"rewards_status": "platinum"
}
}
]
}'