[BETA] Batch create or update trainings by external reference ID

Upsert up to 1000 trainings in a single request. Matches by trainingId or externalReferenceId within school scope; items without either are always created. Update semantics: scalar fields are a partial update (omit a field to leave it unchanged; send an explicit null to clear goals/tags/externalReferenceType). Linked collections (students, groups, professors) are a full replace: send the array to overwrite the roster, send [] to clear it, omit it to leave it untouched. metadata is an opaque flat key/value map (string or number values, stored and returned as-is). By default a match on an archived training fails with ARCHIVED_TRAINING_EXISTS; set options.allowUnarchive to true to unarchive and update it instead. Returns 200 for all success, 207 for partial success with per-item failures.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
trainings
array of objects
required

Array of trainings to create or update

trainings*
options
object

Options applied to the whole batch.

Responses

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json