> ## 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.

# List realized-trainings (v2)

> Retrieve a paginated list of realized trainings. It includes all realized trainings that have been manually imported via CSV file, imported through the process in Lucca Training, or created via the API.



## OpenAPI

````yaml /openapi-specs/poplee-training.yaml get /talent-training/api/v2/realized-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/v2/realized-trainings:
    parameters:
      - $ref: '#/components/parameters/Authorization'
    get:
      tags:
        - Realized-trainings
      summary: List realized-trainings (v2)
      description: >-
        Retrieve a paginated list of realized trainings. It includes all
        realized trainings that have been manually imported via CSV file,
        imported through the process in Lucca Training, or created via the API.
      operationId: v2.get-realized-trainings
      parameters:
        - name: ownerIds
          description: Filter out realized-trainings by employee ID.
          in: query
          required: false
          schema:
            type: array
            uniqueItems: true
            items:
              type: integer
              format: int32
              minimum: 1
            example:
              - 416
              - 23
        - name: hasAttended
          description: >-
            Filter out realized-trainings on whether their employee actually
            attended. When omitted, all realized-trainings are returned.
          in: query
          required: false
          schema:
            type: boolean
        - name: sessionEndOnBefore
          description: Filter out realized-trainings on their end date (lower).
          in: query
          required: false
          schema:
            type: string
            format: date
        - name: sessionEndOnAfter
          description: Filter out realized-trainings on their end date (greater).
          in: query
          required: false
          schema:
            type: string
            format: date
        - name: trainingId
          in: query
          description: Filter out realized-trainings based on the corresponding training.
          schema:
            type: array
            items:
              type: integer
              format: int32
              minimum: 1
        - $ref: '#/components/parameters/fields.root'
        - $ref: '#/components/parameters/page'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/v2.RealizedTraining'
                  prev:
                    type:
                      - string
                      - 'null'
                  next:
                    type:
                      - string
                      - 'null'
                  count:
                    type:
                      - integer
                      - 'null'
                    format: int32
                    minimum: 0
              examples:
                realized:
                  $ref: '#/components/examples/v2.get.realized-trainings.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
    fields.root:
      name: fields.root
      in: query
      description: >
        Include the total number of items across all pages, as well as pointers
        to the previous and next pages.
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
          enum:
            - prev
            - next
            - count
    page:
      name: page
      in: query
      description: |
        Page to retrieve. Either the page index <int>
        or the page cursor <string>.
      schema:
        oneOf:
          - type: integer
            format: int32
            minimum: 0
          - type: string
    limit:
      name: limit
      in: query
      description: |
        Pagination: number of items per page.
      schema:
        type: integer
        minimum: 0
        maximum: 100
        default: 20
  schemas:
    v2.RealizedTraining:
      title: >-
        A new realized-training must refer to a training that is at ready state.
        Please note that you cannot create two realized-trainings for the same
        employee with the same trainingId and sessionEndOn
      type: object
      description: >-
        A realized-training represents a completed training process for a given
        employee.
      required:
        - ownerId
        - sessionStartsOn
        - sessionEndsOn
        - durationInHours
      properties:
        id:
          minimum: 1
          readOnly: true
        ownerId:
          description: ID of the employee who realized said training.
          type: integer
          format: int32
          minimum: 1
        training:
          type: object
          readOnly: true
          properties:
            id:
              type: integer
              format: int32
              readOnly: true
            title:
              type: string
              readOnly: true
            categoryId:
              type: integer
              readOnly: true
            providerUrl:
              type: string
              format: uri
              readOnly: true
            level:
              type: string
              enum:
                - Beginner
                - Middle
                - Expert
              readOnly: true
        trainingDemandId:
          type: integer
          description: >-
            Reference of the training-demand that led to the registration to
            this training session.
          format: int32
          minimum: 1
          readOnly: true
        sessionId:
          type: integer
          description: Reference of the training session the employee was registered on.
          format: int32
          minimum: 1
          readOnly: true
        sessionStartsOn:
          description: |
            Date of the first day of the training session.
          type: string
          format: date
        sessionEndsOn:
          description: |
            Date of the last day (included) of the training session.
          type: string
          format: date
        hasAttended:
          description: >
            Whether the employee actually attended the training or not. You may
            not create a new realized-training with `hasAttended: false`, but
            you may retrieve existing ones in a GET request.
          type: boolean
          default: true
          readOnly: true
        durationInHours:
          description: >-
            Duration of the training in hours (e.g. "2.5" means two and a half
            hours).
          type: number
          format: decimal
          multipleOf: 0.01
      example:
        id: 235
        ownerId: 416
        training:
          id: 45
          title: 'Mastering French: From Basics to Fluency'
          categoryId: 1
          providerUrl: https://elan-francais.fr
          level: Beginner
        trainingDemandId: 4356
        sessionId: 12
        sessionStartsOn: '2025-01-04'
        sessionEndsOn: '2025-01-04'
        hasAttended: true
        durationInHours: 14
  examples:
    v2.get.realized-trainings.res:
      summary: GET realized-trainings response example
      value:
        items:
          - id: 235
            ownerId: 416
            training:
              type: object
              readonly: true
              properties:
                id:
                  type: integer
                  format: int32
                  readOnly: true
                title:
                  type: string
                  readonly: true
                categoryId:
                  type: integer
                  readOnly: true
                providerUrl:
                  type: string
                  format: uri
                  readOnly: true
                level:
                  type: string
                  enum:
                    - Beginner
                    - Middle
                    - Expert
                  readOnly: true
            trainingDemandId: 4356
            sessionId: 12
            sessionStartsOn: '2025-01-04'
            sessionEndsOn: '2025-01-04'
            hasAttended: true
            durationInHours: 14
        prev: null
        next: ~f
        count: 1234

````