---
title: "Create a training"
method: POST
path: "/talent-training/api/v1/trainings"
tags: ["Trainings"]
---

# Create a training

`POST /talent-training/api/v1/trainings`

Creates a training with the state 'ready', which by default is not displayed in the public catalog.

## Request body

- V1Training — A training is a structured program of study offered by a training provider, focused on teaching specific knowledge or skills.
  - `id` integer — Unique identifier of the training
  - `type` 'External' | 'Internal' — External trainings are managed by external organizations, whereas internal trainings are managed by employees within your company.
  - `state` 'Ready' | 'Archived' — - `ready`: the training object is published and as such can be referenced by a new realized-training. - `archived`: the training object is archived and as such should no longer be referenced in new realized-trainings.
  - `title` string, required — Name of the training (maximum length = 250 characters)
  - `subtitle` string, required — Short summary of the training (maximum length = 1000 characters)
  - `description` string, required — Detailed description of the training (maximum length = 6000 characters)
  - `provider` object
    - `id` integer — Unique identifier of the provider
    - `name` string — Name of the provider
    - `websiteHref` string, uri — Remote URL to a page presenting the provider
  - `level` 'Beginner' | 'Middle' | 'Expert', required — - `Beginner` : For finding out about the subject - `Middle` : For deepening your knowledge - `Expert` : For becoming a specialist
  - `isCertifying` boolean, required — Is it an accredited training?
  - `isMandatory` boolean, required — Is the training mandatory according to legal requirements?
  - `category` object
    - `id` integer — Unique identifier of the category
    - `name` string — Name of the category
    - `t9n` object — Translations object
      - `name` T9n, nullable
        - `De` string, nullable — German (Germany)
        - `En` string, nullable — English (United States of America)
        - `Es` string, nullable — Spanish (Spain)
        - `Fr` string, nullable — French (France)
        - `It` string, nullable — Italian (Italy)
        - `Nl` string, nullable — Dutch (Belgium)
        - `Pt` string, nullable — Portuguese (Portugal)

## Response `201`

Created

- V1Training — A training is a structured program of study offered by a training provider, focused on teaching specific knowledge or skills.
  - `id` integer — Unique identifier of the training
  - `type` 'External' | 'Internal' — External trainings are managed by external organizations, whereas internal trainings are managed by employees within your company.
  - `state` 'Ready' | 'Archived' — - `ready`: the training object is published and as such can be referenced by a new realized-training. - `archived`: the training object is archived and as such should no longer be referenced in new realized-trainings.
  - `title` string, required — Name of the training (maximum length = 250 characters)
  - `subtitle` string, required — Short summary of the training (maximum length = 1000 characters)
  - `description` string, required — Detailed description of the training (maximum length = 6000 characters)
  - `provider` object
    - `id` integer — Unique identifier of the provider
    - `name` string — Name of the provider
    - `websiteHref` string, uri — Remote URL to a page presenting the provider
  - `level` 'Beginner' | 'Middle' | 'Expert', required — - `Beginner` : For finding out about the subject - `Middle` : For deepening your knowledge - `Expert` : For becoming a specialist
  - `isCertifying` boolean, required — Is it an accredited training?
  - `isMandatory` boolean, required — Is the training mandatory according to legal requirements?
  - `category` object
    - `id` integer — Unique identifier of the category
    - `name` string — Name of the category
    - `t9n` object — Translations object
      - `name` T9n, nullable
        - `De` string, nullable — German (Germany)
        - `En` string, nullable — English (United States of America)
        - `Es` string, nullable — Spanish (Spain)
        - `Fr` string, nullable — French (France)
        - `It` string, nullable — Italian (Italy)
        - `Nl` string, nullable — Dutch (Belgium)
        - `Pt` string, nullable — Portuguese (Portugal)

---

[API](https://skmtc.net/luccasoftware/apis/lucca-expenses.md) · [All operations](https://skmtc.net/luccasoftware/apis/lucca-expenses/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/luccasoftware/lucca-expenses/revisions/110f9897756c/schema)
