Endpoints
Import users from CSV
Upload a CSV file, configure import options, and start processing immediately.
POST /api/import/csvAuthentication
Required. See Authentication.
Content type
Content-Type: multipart/form-dataRequest body (multipart fields)
file
file
Yes
CSV file to import. Field name must be file.
csvIdentifierColumn
string
Yes
Name of the CSV column used to identify users (e.g. user_id, email).
name
string
No
Auto-generated
Display name for the import in the Jimo dashboard.
description
string
No
null
Optional description for the import.
jimoIdentifier
string
No
ID
How Jimo matches users. Allowed values: ID, EMAIL.
enableAddUser
boolean
No
false
Create users that do not already exist in Jimo.
enableUpdateUser
boolean
No
true
Update existing users with values from the CSV.
createSegment
boolean
No
false
Create a segment containing all imported users.
allowNewProperties
boolean
No
true
Allow auto-creation of new custom attributes from CSV columns. Set to false to only update existing properties.
Example request
Send as multipart/form-data. Attach the CSV as the file field alongside the options below:
Success response
Status: 200 OK
Content-Type: application/json
importId
string (UUID)
Unique identifier of the launched import. Use it to poll status.
status
string
Initial import status. Typically IN_PROGRESS after a successful launch.
Import status values
DRAFT
Import created but not yet launched
IN_PROGRESS
Import is running
DONE
Import completed successfully
ERROR
Import failed
Error responses
Errors are returned as JSON with an HTTP 4xx or 5xx status code.
400
FILE_NOT_FOUND
No file was uploaded or the file field is missing
400
FILE_TOO_LARGE
File exceeds the maximum size allowed for your API credentials (default: 50 MB)
400
PROJECT_OWNER_NOT_FOUND
Project owner could not be resolved to launch the import
403
ACCESS_DENIED
Missing or invalid authentication (see home doc)
400
PROJECT_NOT_FOUND
No project is associated with the API credentials
Validation errors on body fields (e.g. missing csvIdentifierColumn, invalid jimoIdentifier) return 400 Bad Request with a standard NestJS validation error payload.
Get import status
Poll the progress and result of an import launched via the API.
Authentication
Required. See Authentication.
Path parameters
importId
string (UUID)
Yes
Import ID returned by POST /api/import/csv
Example request
Success response
Status: 200 OK
Content-Type: application/json
importId
string (UUID)
Import identifier
status
string
Current status (DRAFT, IN_PROGRESS, DONE, ERROR)
name
string
Import name
startedAt
string (ISO 8601) | null
When processing started
endedAt
string (ISO 8601) | null
When processing ended
totalRow
number
Total rows in the CSV
totalRowProceed
number
Rows processed so far
totalUserAdded
number
Users created
totalUserUpdated
number
Users updated
totalUserErrored
number
Rows that failed
error
string | null
Global error message if the import failed
errorsUser
string[]
Per-row error messages
Error responses
403
ACCESS_DENIED
Missing or invalid authentication
404
Import not found or does not belong to the authenticated project
Recommended workflow
Call
POST /api/import/csvwith your CSV file and options.Store the returned
importId.Poll
GET /api/import/csv/status/:importIduntilstatusisDONEorERROR.Review
totalUserAdded,totalUserUpdated,totalUserErrored, anderrorsUserin the final response.
Imports launched through this API are flagged in the Jimo dashboard with an API badge.
Last updated