Skip to main content
https://.thoughtindustries.com

Bulk Import

Create bulkImport

Create bulkImport

POSThttps://example.thoughtindustries.com/incoming/v2/users/bulkImport

Example request

curl -X POST "https://example.thoughtindustries.com/incoming/v2/users/bulkImport" \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "url": "string",
  "inviteMessage": "string",
  "bundleIds": "00000000-0000-0000-0000-000000000000",
  "courseIds": "00000000-0000-0000-0000-000000000000"
}'

Parameters

NameTypeRequiredLocationDescription
urlstringYesbodyURL of the CSV file containing the users to import.
inviteMessagestringNobodyCustom message to include in the invitation email sent to imported users.
bundleIdsuuid[]YesbodyIDs of the bundles to enroll imported users in.
courseIdsuuid[]YesbodyIDs of the courses to enroll imported users in.
learningPathIdsuuid[]YesbodyIDs of the learning paths to enroll imported users in.
licenseIdsuuid[]YesbodyIDs of the licenses to assign to imported users.
clientIduuidNobodyID of the client portal to associate the imported users with.
rolestringNobodyRole to assign to each imported user within the platform.
dryRunbooleanNobodyWhen true, validates the import without creating or modifying any users.

Example response

{
  "data": {
    "APIBulkImport": {
      "id": "00000000-0000-0000-0000-000000000000",
      "type": "string",
      "description": "string",
      "errorMessage": "string",
      "createdAt": "2024-01-01T00:00:00.000Z",
      "repeatable": true,
      "status": "complete"
    }
  }
}

Response fields

FieldTypeDescription
iduuidUnique identifier of the bulk import background job.
typestringCategory or kind of background job that was created.
descriptionstringHuman-readable summary of the background job.
errorMessagestringError detail returned if the import job failed; empty when the job succeeded.
createdAtISO 8601 timestampDate and time when the import job was created, in ISO 8601 format.
repeatablebooleanIndicates whether the import job can be re-run with the same parameters.
statusBackgroundJobStatusCurrent processing state of the import job (e.g. complete).