> ## Documentation Index
> Fetch the complete documentation index at: https://developers.lucca.fr/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a training

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



## OpenAPI

````yaml /openapi-specs/poplee-training.yaml post /talent-training/api/v1/trainings
openapi: 3.1.0
info:
  title: Lucca Training
  version: '1.0'
  description: |
    Welcome on the documentation for the Lucca Training API.
  contact:
    name: API Support
    url: https://support.lucca.fr
    email: contact@luccasoftware.com
  license:
    name: Unlicensed
    url: https://www.luccasoftware.com
servers:
  - url: https://{host}
    description: Your Lucca account URL.
    variables:
      host:
        default: example.ilucca.net
        description: >-
          The URL of your dedicated Lucca account: `{account}.{env}.{region}`.


          Account reflects your company name. Env indicates the environment.
          Region depends on your server location.


          **Please, use your test or sandbox environments (and not your
          production env.) for testing purposes.**


          Environments:

          - `ilucca`: production environment for customers.

          - `ilucca-test`: test environment for customers.

          - `ilucca-demo`: demo environment for prospects.


          Regions:

          - `.ch` for Swiss located accounts.

          - `.net` for the others.


          Regarding sandboxes, the pattern differs:
          `https://{account}-{sandboxName}.sandbox.{server}.luccasoftware.com`,
          where:

          - `{sandboxName}` is automatically generated upon creation.

          - `{server}` may be "eu1", "eu2" or "ch1".
security: []
tags:
  - name: Trainings
    description: Trainings in catalog
  - name: Training-demands
    description: Requests for a training session for an employee.
  - name: Realized-trainings
    description: Past realized training sessions.
paths:
  /talent-training/api/v1/trainings:
    parameters:
      - $ref: '#/components/parameters/Authorization'
    post:
      tags:
        - Trainings
      summary: Create a training
      description: >-
        Creates a training with the state 'ready', which by default is not
        displayed in the public catalog.
      operationId: v1.post-training
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1.Training'
            examples:
              training:
                $ref: '#/components/examples/v1.post.training.req'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1.Training'
              examples:
                training:
                  $ref: '#/components/examples/v1.get.training.res'
components:
  parameters:
    Authorization:
      name: Authorization
      required: true
      description: 'API key. Value must be formatted like so: `lucca application={api_key}`.'
      in: header
      schema:
        type: string
  schemas:
    v1.Training:
      title: Training
      description: >-
        A training is a structured program of study offered by a training
        provider, focused on teaching specific knowledge or skills.
      type: object
      required:
        - title
        - subtitle
        - description
        - level
        - isCertifying
        - isMandatory
      properties:
        id:
          type: integer
          description: Unique identifier of the training
          format: int32
          readOnly: true
        type:
          type: string
          enum:
            - External
            - Internal
          description: >-
            External trainings are managed by external organizations, whereas
            internal trainings are managed by employees within your company.
        state:
          type: string
          enum:
            - Ready
            - Archived
          description: >-
            - `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:
          type: string
          description: Name of the training (maximum length = 250 characters)
        subtitle:
          type: string
          description: Short summary of the training (maximum length = 1000 characters)
        description:
          type: string
          description: >-
            Detailed description of the training (maximum length = 6000
            characters)
        provider:
          type: object
          readOnly: true
          properties:
            id:
              type: integer
              description: Unique identifier of the provider
              format: int32
              readOnly: true
            name:
              type: string
              description: Name of the provider
              readOnly: true
            websiteHref:
              type: string
              description: Remote URL to a page presenting the provider
              format: uri
              readOnly: true
        level:
          $ref: '#/components/schemas/v1.training-level'
        isCertifying:
          type: boolean
          description: Is it an accredited training?
        isMandatory:
          type: boolean
          description: Is the training mandatory according to legal requirements?
        category:
          type: object
          readOnly: true
          properties:
            id:
              type: integer
              description: Unique identifier of the category
              format: int32
              readOnly: true
            name:
              type: string
              description: Name of the category
              readOnly: true
            t9n:
              type: object
              description: Translations object
              properties:
                name:
                  $ref: '#/components/schemas/t9n'
      example:
        id: 45
        state: Ready
        type: External
        title: 'Mastering French: From Basics to Fluency'
        subtitle: A Complete Training Program to Speak, Read, and Write with Confidence
        description: >-
          Unlock the beauty of the French language with this immersive training
          designed for learners at all levels. Whether you're a complete
          beginner or looking to refine your skills, this course covers
          essential grammar, vocabulary, pronunciation, and real-world
          conversation practice. Through interactive lessons, cultural insights,
          and practical exercises, you’ll gain the tools and confidence to use
          French in everyday and professional settings.
        provider:
          id: 12
          name: L'Élan Français
          websiteHref: https://elan-francais.fr
        level: Beginner
        isCertifying: false
        isMandatory: false
        category:
          id: 2
          name: Languages
          t9n:
            name:
              Fr: Langues
              Es: Idiomas
    v1.training-level:
      title: training level
      description: |-
        - `Beginner` : For finding out about the subject
        - `Middle` : For deepening your knowledge
        - `Expert` :  For becoming a specialist
      type: string
      enum:
        - Beginner
        - Middle
        - Expert
    t9n:
      type:
        - object
        - 'null'
      properties:
        De:
          description: German (Germany)
          type:
            - string
            - 'null'
        En:
          description: English (United States of America)
          type:
            - string
            - 'null'
        Es:
          description: Spanish (Spain)
          type:
            - string
            - 'null'
        Fr:
          description: French (France)
          type:
            - string
            - 'null'
        It:
          description: Italian (Italy)
          type:
            - string
            - 'null'
        Nl:
          description: Dutch (Belgium)
          type:
            - string
            - 'null'
        Pt:
          description: Portuguese (Portugal)
          type:
            - string
            - 'null'
  examples:
    v1.post.training.req:
      summary: POST training request example (v1)
      value:
        title: 'Mastering French: From Basics to Fluency'
        subtitle: A Complete Training Program to Speak, Read, and Write with Confidence
        description: >-
          Unlock the beauty of the French language with this immersive training
          designed for learners at all levels. Whether you're a complete
          beginner or looking to refine your skills, this course covers
          essential grammar, vocabulary, pronunciation, and real-world
          conversation practice. Through interactive lessons, cultural insights,
          and practical exercises, you'll gain the tools and confidence to use
          French in everyday and professional settings.
        providerId: 12
        level: Beginner
        isCertifying: false
        isMandatory: false
        categoryId: 2
    v1.get.training.res:
      summary: GET training response example (v1)
      value:
        id: 45
        state: Ready
        type: External
        title: 'Mastering French: From Basics to Fluency'
        subtitle: A Complete Training Program to Speak, Read, and Write with Confidence
        description: >-
          Unlock the beauty of the French language with this immersive training
          designed for learners at all levels. Whether you're a complete
          beginner or looking to refine your skills, this course covers
          essential grammar, vocabulary, pronunciation, and real-world
          conversation practice. Through interactive lessons, cultural insights,
          and practical exercises, you'll gain the tools and confidence to use
          French in everyday and professional settings.
        provider:
          id: 12
          name: L'Élan Français
          websiteHref: https://elan-francais.fr
        level: Beginner
        isCertifying: false
        isMandatory: false
        category:
          id: 2
          name: Languages
          t9n:
            name:
              Ff: Langues
              Es: Idiomas

````