openapi: 3.1.0 info: title: '' description: '' version: 5.71.2-9276f5a servers: - url: 'https://lms-api.learningcloud.me' description: '' paths: /api/v1/admin/async-log: get: operationId: AsyncLogSearch tags: - AsyncLog responses: 200: description: 'AsyncLog collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/AsyncLog' } } summary: 'Retrieves the collection of AsyncLog resources.' description: 'Retrieves the collection of AsyncLog resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: contextId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'contextId[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - pending - running - finished - failed style: form explode: false allowReserved: false - name: 'order[createdDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/award/user/{userId}/badge': post: operationId: AwardBadgeCreate tags: - Award responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Creates a Award resource.' description: 'Creates a Award resource.' parameters: - name: userId in: path description: 'Award identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new Award resource' content: application/json: schema: $ref: '#/components/schemas/Award.AwardBadgeCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/Award.AwardBadgeCreateApiBody' text/csv: schema: $ref: '#/components/schemas/Award.AwardBadgeCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/Award.AwardBadgeCreateApiBody' required: true deprecated: false '/api/v1/admin/award/user/{userId}/badge/{badgeId}': patch: operationId: AwardBadgeUpdate tags: - Award responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the Award resource.' description: 'Updates the Award resource.' parameters: - name: userId in: path description: 'Award identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: badgeId in: path description: 'Award identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated Award resource' content: application/json: schema: $ref: '#/components/schemas/Award.AwardBadgeUpdateApiBody' required: true deprecated: false '/api/v1/admin/award/user/{userId}/point': get: operationId: AwardPointFind tags: - Award responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Award resource' content: application/json: schema: $ref: '#/components/schemas/Award' summary: 'Retrieves a Award resource.' description: 'Retrieves a Award resource.' parameters: - name: userId in: path description: 'Award identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false post: operationId: AwardPointCreate tags: - Award responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Creates a Award resource.' description: 'Creates a Award resource.' parameters: - name: userId in: path description: 'Award identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new Award resource' content: application/json: schema: $ref: '#/components/schemas/Award.AwardPointCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/Award.AwardPointCreateApiBody' text/csv: schema: $ref: '#/components/schemas/Award.AwardPointCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/Award.AwardPointCreateApiBody' required: true deprecated: false /api/v1/admin/badge: get: operationId: BadgeSearch tags: - Badge responses: 200: description: 'Badge collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Badge' } } summary: 'Retrieves the collection of Badge resources.' description: 'Retrieves the collection of Badge resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false post: operationId: BadgeCreate tags: - Badge responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'Badge resource created' content: application/json: schema: $ref: '#/components/schemas/Badge' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a Badge resource.' description: 'Creates a Badge resource.' parameters: [] requestBody: description: 'The new Badge resource' content: application/json: schema: $ref: '#/components/schemas/Badge.BadgeCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/Badge.BadgeCreateApiBody' text/csv: schema: $ref: '#/components/schemas/Badge.BadgeCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/Badge.BadgeCreateApiBody' required: true deprecated: false '/api/v1/admin/badge/{badgeId}': get: operationId: BadgeFind tags: - Badge responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Badge resource' content: application/json: schema: $ref: '#/components/schemas/Badge' summary: 'Retrieves a Badge resource.' description: 'Retrieves a Badge resource.' parameters: - name: badgeId in: path description: 'Badge identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: BadgeDelete tags: - Badge responses: 403: description: 'Unauthorized request' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Badge not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'Badge resource deleted' summary: 'Removes the Badge resource.' description: 'Removes the Badge resource.' parameters: - name: badgeId in: path description: 'Badge identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 404: description: 'Badge not found' 403: description: 'Unauthorized request' patch: operationId: BadgeUpdate tags: - Badge responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the Badge resource.' description: 'Updates the Badge resource.' parameters: - name: badgeId in: path description: 'Badge identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated Badge resource' content: application/json: schema: $ref: '#/components/schemas/Badge.BadgeUpdateApiBody' required: true deprecated: false '/api/v1/admin/badge/{badgeId}/image': post: operationId: BadgeImageUpdate tags: - Badge responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'Badge resource created' content: application/json: schema: $ref: '#/components/schemas/Badge' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates a badge image' description: 'Creates a Badge resource.' parameters: - name: badgeId in: path description: 'Badge identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: '' content: multipart/form-data: schema: type: object properties: image: type: string format: binary required: false deprecated: false delete: operationId: BadgeDeleteImage tags: - Badge responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'Badge resource deleted' summary: 'Removes the Badge resource.' description: 'Removes the Badge resource.' parameters: - name: badgeId in: path description: 'Badge identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/badge-holder/{badgeHolderId}': delete: operationId: BadgeHolderDelete tags: - BadgeHolder responses: 403: description: 'Unauthorized request' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'BadgeHolder not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'BadgeHolder resource deleted' summary: 'Removes the BadgeHolder resource.' description: 'Removes the BadgeHolder resource.' parameters: - name: badgeHolderId in: path description: 'BadgeHolder identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 404: description: 'BadgeHolder not found' 403: description: 'Unauthorized request' '/api/v1/admin/badge-holder/{userId}': get: operationId: BadgeHolderSearch tags: - BadgeHolder responses: 200: description: 'BadgeHolder collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/BadgeHolder' } } summary: 'Retrieves the collection of BadgeHolder resources.' description: 'Retrieves the collection of BadgeHolder resources.' parameters: - name: userId in: path description: 'BadgeHolder identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: badgeName in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'order[badgeName]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[awardedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false /api/v1/batch-request: post: operationId: BatchRequest tags: - BatchRequest responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'BatchRequest resource created' content: application/json: schema: $ref: '#/components/schemas/BatchRequest' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a BatchRequest resource.' description: 'Creates a BatchRequest resource.' parameters: [] requestBody: description: 'The new BatchRequest resource' content: application/json: schema: $ref: '#/components/schemas/BatchRequest.BatchRequestCollectionApiBody' application/pdf: schema: $ref: '#/components/schemas/BatchRequest.BatchRequestCollectionApiBody' text/csv: schema: $ref: '#/components/schemas/BatchRequest.BatchRequestCollectionApiBody' multipart/form-data: schema: $ref: '#/components/schemas/BatchRequest.BatchRequestCollectionApiBody' required: true deprecated: false /api/v1/admin/carousel: get: operationId: CarouselSearch tags: - Carousel responses: 200: description: 'Carousel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/CarouselCustomReadModel' }, { $ref: '#/components/schemas/CarouselBuiltinReadModel' }] } } summary: 'Retrieves the collection of Carousel resources.' description: 'Retrieves the collection of Carousel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: active in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[order]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[active]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[createdAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselBuiltinReadModel post: operationId: CarouselCreate tags: - Carousel responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'Carousel resource created' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/CarouselCustomReadModel' } - { $ref: '#/components/schemas/CarouselBuiltinReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a Carousel resource.' description: 'Creates a Carousel resource.' parameters: [] requestBody: description: 'The new Carousel resource' content: application/json: schema: $ref: '#/components/schemas/Carousel.CarouselCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/Carousel.CarouselCreateApiBody' text/csv: schema: $ref: '#/components/schemas/Carousel.CarouselCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/Carousel.CarouselCreateApiBody' required: true deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselBuiltinReadModel '/api/v1/admin/carousel/{carouselId}': get: operationId: CarouselFind tags: - Carousel responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Carousel resource' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/CarouselCustomReadModel' } - { $ref: '#/components/schemas/CarouselBuiltinReadModel' } summary: 'Retrieves a Carousel resource.' description: 'Retrieves a Carousel resource.' parameters: - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselBuiltinReadModel delete: operationId: CarouselDelete tags: - Carousel responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'Carousel resource deleted' summary: 'Removes the Carousel resource.' description: 'Removes the Carousel resource.' parameters: - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: CarouselUpdate tags: - Carousel responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Carousel resource updated' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/CarouselCustomReadModel' } - { $ref: '#/components/schemas/CarouselBuiltinReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the Carousel resource.' description: 'Updates the Carousel resource.' parameters: - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated Carousel resource' content: application/json: schema: $ref: '#/components/schemas/Carousel.CarouselUpdateApiBody' required: true deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselBuiltinReadModel '/api/v1/admin/carousel/{carouselId}/image': post: operationId: CarouselImage tags: - Carousel responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'Carousel resource created' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/CarouselCustomReadModel' } - { $ref: '#/components/schemas/CarouselBuiltinReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates a carousel image' description: 'Creates a Carousel resource.' parameters: - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: '' content: multipart/form-data: schema: type: object properties: image: type: string format: binary required: false deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselBuiltinReadModel delete: operationId: CarouselDeleteImage tags: - Carousel responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'Carousel resource deleted' summary: 'Removes the Carousel resource.' description: 'Removes the Carousel resource.' parameters: - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/carousel/{carouselId}/move': patch: operationId: CarouselOrder tags: - Carousel responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Carousel resource updated' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/CarouselCustomReadModel' } - { $ref: '#/components/schemas/CarouselBuiltinReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the Carousel resource.' description: 'Updates the Carousel resource.' parameters: - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated Carousel resource' content: application/json: schema: $ref: '#/components/schemas/Carousel.CarouselMoveApiBody' required: true deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselBuiltinReadModel '/api/v1/admin/carousel/{carouselId}/restore-name': patch: operationId: CarouselRestoreName tags: - Carousel responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Carousel resource updated' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/CarouselCustomReadModel' } - { $ref: '#/components/schemas/CarouselBuiltinReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the Carousel resource.' description: 'Updates the Carousel resource.' parameters: - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselBuiltinReadModel '/api/v1/admin/carousel/{carouselId}/translation/{localeCode}': delete: operationId: CarouselTranslationDelete tags: - Carousel responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'Carousel resource deleted' summary: 'Removes the Carousel resource.' description: 'Removes the Carousel resource.' parameters: - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: localeCode in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: CarouselTranslationUpdate tags: - Carousel responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Carousel resource updated' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/CarouselCustomReadModel' } - { $ref: '#/components/schemas/CarouselBuiltinReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the Carousel resource.' description: 'Updates the Carousel resource.' parameters: - name: localeCode in: path description: 'Language used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - es - en - gl - ca - bg - cs - zh-cn - zh-hk - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-br - ro - ru - tr - uk style: simple explode: false allowReserved: false - name: carouselId in: path description: 'Carousel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated Carousel resource' content: application/json: schema: $ref: '#/components/schemas/Carousel.CarouselTranslationUpdateApiBody' required: true deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselBuiltinReadModel /api/v1/learner/carousel: get: operationId: CarouselLearnerSearch tags: - Carousel responses: 200: description: 'Carousel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/CarouselLearnerCustomReadModel' }, { $ref: '#/components/schemas/CarouselLearnerBuiltinReadModel' }] } } summary: 'Retrieves the collection of Carousel resources.' description: 'Retrieves the collection of Carousel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Carousel\Domain\ReadModel\CarouselLearnerCustomReadModel - Netex\Component\Carousel\Domain\ReadModel\CarouselLearnerBuiltinReadModel /api/v1/admin/certificate: get: operationId: CertificateSearch tags: - Certificate responses: 200: description: 'Certificate collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Certificate' } } summary: 'Retrieves the collection of Certificate resources.' description: 'Retrieves the collection of Certificate resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: userId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/certificate/{trainingId}/user/{userId}': get: operationId: CertificateFind tags: - Certificate responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Certificate resource' content: application/json: schema: $ref: '#/components/schemas/Certificate' summary: 'Retrieves a Certificate resource.' description: 'Retrieves a Certificate resource.' parameters: - name: trainingId in: path description: 'Certificate identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'Certificate identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/certificate/{trainingId}/user/{userId}/emit': patch: operationId: CertificateAdminEmit tags: - Certificate responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Certificate resource updated' content: application/json: schema: $ref: '#/components/schemas/Certificate' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the Certificate resource.' description: 'Updates the Certificate resource.' parameters: - name: trainingId in: path description: 'Certificate identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'Certificate identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponse: 200: description: 'Retrieve the certificate' 202: description: 'Create the certificate' '/api/v1/admin/certificate/{trainingId}/user/{userId}/reset': delete: operationId: CertificateReset tags: - Certificate responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'Certificate resource deleted' summary: 'Removes the Certificate resource.' description: 'Removes the Certificate resource.' parameters: - name: trainingId in: path description: 'Certificate identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'Certificate identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false /api/v1/admin/template: get: operationId: TemplateSearch tags: - Certificate responses: 200: description: 'Certificate collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Certificate.TemplateReadModel' } } summary: 'Retrieves the collection of Certificate resources.' description: 'Retrieves the collection of Certificate resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false /api/v1/learner/certificate: get: operationId: CertificateLearnerSearch tags: - Certificate responses: 200: description: 'Certificate collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Certificate' } } summary: 'Retrieves the collection of Certificate resources.' description: 'Retrieves the collection of Certificate resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false /api/v1/learner/certificate-course: get: operationId: CertificateCourse tags: - Certificate responses: 200: description: 'Certificate collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Certificate.CertificateCourseReadModel' } } summary: 'Retrieves the collection of Certificate resources.' description: 'Retrieves the collection of Certificate resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false '/api/v1/learner/certificate/{trainingId}/emit': patch: operationId: CertificateEmitPdf tags: - Certificate responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Certificate resource updated' content: application/json: schema: $ref: '#/components/schemas/Certificate' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the Certificate resource.' description: 'Updates the Certificate resource.' parameters: - name: trainingId in: path description: 'Certificate identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponse: 200: description: 'Retrieve the certificate' 202: description: 'Create the certificate' /api/v1/admin/course: get: operationId: CourseSearch tags: - Course responses: 200: description: 'CourseReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/CourseReadModel' } } summary: 'Retrieves the collection of CourseReadModel resources.' description: 'Retrieves the collection of CourseReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: tagIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'tagIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: catalogIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'catalogIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: languages in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'languages[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: authorIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'authorIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: description in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'createdAt[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'createdAt[strictly_before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'createdAt[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'createdAt[strictly_after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - draft - published - unpublished style: form explode: false allowReserved: false - name: assessable in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: visible in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: locked in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false deprecated: false post: operationId: CourseCreate tags: - Course responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'CourseReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/CourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'CURRENTLY DISABLED.' description: 'CURRENTLY DISABLED.' parameters: [] requestBody: description: 'The new CourseReadModel resource' content: application/json: schema: $ref: '#/components/schemas/CourseReadModel.CourseStoreCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/CourseReadModel.CourseStoreCreateApiBody' text/csv: schema: $ref: '#/components/schemas/CourseReadModel.CourseStoreCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/CourseReadModel.CourseStoreCreateApiBody' required: true deprecated: true '/api/v1/admin/course/{courseId}': get: operationId: CourseFind tags: - Course responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CourseReadModel resource' content: application/json: schema: $ref: '#/components/schemas/CourseReadModel' summary: 'Retrieves a CourseReadModel resource.' description: 'Retrieves a CourseReadModel resource.' parameters: - name: courseId in: path description: 'CourseReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: CourseUpdate tags: - Course responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CourseReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/CourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'CURRENTLY DISABLED.' description: 'CURRENTLY DISABLED.' parameters: - name: courseId in: path description: 'CourseReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated CourseReadModel resource' content: application/json: schema: $ref: '#/components/schemas/CourseReadModel.CourseUpdateApiBody' required: true deprecated: true '/api/v1/admin/course/{courseId}/publish': patch: operationId: CoursePublish tags: - Course responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CourseReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/CourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the CourseReadModel resource.' description: 'Updates the CourseReadModel resource.' parameters: - name: courseId in: path description: 'CourseReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/course/{courseId}/unpublish': patch: operationId: CourseUnPublish tags: - Course responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CourseReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/CourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the CourseReadModel resource.' description: 'Updates the CourseReadModel resource.' parameters: - name: courseId in: path description: 'CourseReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false /api/v1/admin/customer-literal: get: operationId: CustomerLiterals tags: - CustomerLiteral responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CustomerLiteral resource' content: application/json: schema: $ref: '#/components/schemas/CustomerLiteral' summary: 'Retrieves a CustomerLiteral resource.' description: 'Retrieves a CustomerLiteral resource.' parameters: [] deprecated: false patch: operationId: CustomerLiteralUpdate tags: - CustomerLiteral responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CustomerLiteral resource updated' content: application/json: schema: $ref: '#/components/schemas/CustomerLiteral' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the CustomerLiteral resource.' description: 'Updates the CustomerLiteral resource.' parameters: [] requestBody: description: 'The updated CustomerLiteral resource' content: application/json: schema: $ref: '#/components/schemas/CustomerLiteral.CustomerLiteralUpdateApiBody' required: true deprecated: false /api/v1/learner/customer-literal: get: operationId: LearnerCustomerLiteralFindAll tags: - CustomerLiteral responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CustomerLiteral resource' content: application/json: schema: $ref: '#/components/schemas/CustomerLiteral' summary: 'Retrieves a CustomerLiteral resource.' description: 'Retrieves a CustomerLiteral resource.' parameters: [] deprecated: false '/api/v1/admin/training-course/{trainingId}/group': get: operationId: TrainingCourseGroupSearch tags: - TrainingCourse - Enrollment responses: 200: description: 'TrainingGroupEnrolledReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingGroupEnrolledReadModel' }, { $ref: '#/components/schemas/TrainingGroupUnenrolledReadModel' }] } } summary: 'Get enrolled/non-enrolled groups in a Training Course' description: 'Retrieves the collection of TrainingGroupEnrolledReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingGroupEnrolledReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: isEnrolled in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: enrollmentType in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - recommended - optional - mandatory style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[enrollmentUpdatedDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingGroupEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingGroupUnenrolledReadModel '/api/v1/admin/training-course/{trainingId}/group/user': get: operationId: TrainingCourseGroupUserSearch tags: - TrainingCourse - Enrollment responses: 200: description: 'TrainingUserEnrolledReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingUserEnrolledReadModel' }, { $ref: '#/components/schemas/TrainingUserUnenrolledReadModel' }] } } summary: 'Get users enrolled/non-enrolled by group in a Training Course' description: 'Retrieves the collection of TrainingUserEnrolledReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingUserEnrolledReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: enrollmentType in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - recommended - optional - mandatory style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[enrollmentUpdatedDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingUserEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingUserUnenrolledReadModel '/api/v1/admin/training-course/{trainingId}/group/{groupId}/enroll': patch: operationId: TrainingCourseGroupEnroll tags: - TrainingCourse - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEnrollmentGroupAdminReadModel resource updated' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/TrainingGroupEnrolledReadModel' } - { $ref: '#/components/schemas/TrainingGroupUnenrolledReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Enroll a Group in a Training Course' description: 'Updates the TrainingEnrollmentGroupAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEnrollmentGroupAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: groupId in: path description: 'TrainingEnrollmentGroupAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingEnrollmentGroupAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEnrollmentGroupAdminReadModel.TrainingGroupEnrollApiBody' required: true deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingGroupEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingGroupUnenrolledReadModel '/api/v1/admin/training-course/{trainingId}/group/{groupId}/unenroll': patch: operationId: TrainingCourseGroupUnenroll tags: - TrainingCourse - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Unenroll a Group from a Training Course' description: 'Updates the TrainingEnrollmentGroupAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEnrollmentGroupAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: groupId in: path description: 'TrainingEnrollmentGroupAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training-course/{trainingId}/user': get: operationId: TrainingCourseUserSearch tags: - TrainingCourse - Enrollment responses: 200: description: 'TrainingUserEnrolledReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingUserEnrolledReadModel' }, { $ref: '#/components/schemas/TrainingUserUnenrolledReadModel' }] } } summary: 'Get users enrolled/non-enrolled individually in a Training Course' description: 'Retrieves the collection of TrainingUserEnrolledReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingUserEnrolledReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: isEnrolled in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: enrollmentType in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - recommended - optional - mandatory style: form explode: false allowReserved: false - name: groupId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'groupId[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[enrollmentUpdatedDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingUserEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingUserUnenrolledReadModel '/api/v1/admin/training-course/{trainingId}/user/{userId}/check': patch: operationId: TrainingCourseUserCheck tags: - TrainingCourse - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingUserEnrollmentCheckReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingUserEnrollmentCheckReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Check whether a User can be enrolled in a Training Course' description: 'Updates the TrainingUserEnrollmentCheckReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingUserEnrollmentCheckReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'TrainingUserEnrollmentCheckReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingUserEnrollmentCheckReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingUserEnrollmentCheckReadModel.TrainingUserEnrollmentCheckApiBody' required: true deprecated: false '/api/v1/admin/training-course/{trainingId}/user/{userId}/enroll': patch: operationId: TrainingCourseUserEnroll tags: - TrainingCourse - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEnrollmentUserAdminReadModel resource updated' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/TrainingUserEnrolledReadModel' } - { $ref: '#/components/schemas/TrainingUserUnenrolledReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Enroll a User in a Training Course' description: 'Updates the TrainingEnrollmentUserAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEnrollmentUserAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'TrainingEnrollmentUserAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingEnrollmentUserAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEnrollmentUserAdminReadModel.TrainingUserEnrollApiBody' required: true deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingUserEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingUserUnenrolledReadModel '/api/v1/admin/training-course/{trainingId}/user/{userId}/unenroll': patch: operationId: TrainingCourseUserUnenroll tags: - TrainingCourse - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Unenroll a User from a Training Course' description: 'Updates the TrainingEnrollmentUserAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEnrollmentUserAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'TrainingEnrollmentUserAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training-event/{trainingId}/group': get: operationId: TrainingEventGroupSearch tags: - TrainingEvent - Enrollment responses: 200: description: 'TrainingGroupEnrolledReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingGroupEnrolledReadModel' }, { $ref: '#/components/schemas/TrainingGroupUnenrolledReadModel' }] } } summary: 'Get enrolled/non-enrolled groups in a Training Event' description: 'Retrieves the collection of TrainingGroupEnrolledReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingGroupEnrolledReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: isEnrolled in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: enrollmentType in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - recommended - optional - mandatory style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[enrollmentUpdatedDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingGroupEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingGroupUnenrolledReadModel '/api/v1/admin/training-event/{trainingId}/group/user': get: operationId: TrainingEventGroupUserSearch tags: - TrainingEvent - Enrollment responses: 200: description: 'TrainingUserEnrolledReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingUserEnrolledReadModel' }, { $ref: '#/components/schemas/TrainingUserUnenrolledReadModel' }] } } summary: 'Get users enrolled/non-enrolled by group in a Training Event' description: 'Retrieves the collection of TrainingUserEnrolledReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingUserEnrolledReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: enrollmentType in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - recommended - optional - mandatory style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[enrollmentUpdatedDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingUserEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingUserUnenrolledReadModel '/api/v1/admin/training-event/{trainingId}/group/{groupId}/enroll': patch: operationId: TrainingEventGroupEnroll tags: - TrainingEvent - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEnrollmentGroupAdminReadModel resource updated' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/TrainingGroupEnrolledReadModel' } - { $ref: '#/components/schemas/TrainingGroupUnenrolledReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Enroll a Group in a Training Event' description: 'Updates the TrainingEnrollmentGroupAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEnrollmentGroupAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: groupId in: path description: 'TrainingEnrollmentGroupAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingEnrollmentGroupAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEnrollmentGroupAdminReadModel.TrainingGroupEnrollApiBody' required: true deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingGroupEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingGroupUnenrolledReadModel '/api/v1/admin/training-event/{trainingId}/group/{groupId}/unenroll': patch: operationId: TrainingEventGroupUnenroll tags: - TrainingEvent - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Unenroll a Group from a Training Event' description: 'Updates the TrainingEnrollmentGroupAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEnrollmentGroupAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: groupId in: path description: 'TrainingEnrollmentGroupAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training-event/{trainingId}/user': get: operationId: TrainingEventUserSearch tags: - TrainingEvent - Enrollment responses: 200: description: 'TrainingUserEnrolledReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingUserEnrolledReadModel' }, { $ref: '#/components/schemas/TrainingUserUnenrolledReadModel' }] } } summary: 'Get users enrolled/non-enrolled individually in a Training Event' description: 'Retrieves the collection of TrainingUserEnrolledReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingUserEnrolledReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: isEnrolled in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: enrollmentType in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - recommended - optional - mandatory style: form explode: false allowReserved: false - name: groupId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'groupId[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: seatState in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - assigned - requested - unassigned style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[enrollmentUpdatedDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[seatState]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[requestDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingUserEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingUserUnenrolledReadModel '/api/v1/admin/training-event/{trainingId}/user/{userId}/check': patch: operationId: TrainingEventUserCheck tags: - TrainingEvent - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingUserEnrollmentCheckReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingUserEnrollmentCheckReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Check whether a User can be enrolled in a Training Event' description: 'Updates the TrainingUserEnrollmentCheckReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingUserEnrollmentCheckReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'TrainingUserEnrollmentCheckReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingUserEnrollmentCheckReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingUserEnrollmentCheckReadModel.TrainingUserEnrollmentCheckApiBody' required: true deprecated: false '/api/v1/admin/training-event/{trainingId}/user/{userId}/enroll': patch: operationId: TrainingEventUserEnroll tags: - TrainingEvent - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEnrollmentUserAdminReadModel resource updated' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/TrainingUserEnrolledReadModel' } - { $ref: '#/components/schemas/TrainingUserUnenrolledReadModel' } headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Enroll a User in a Training Event' description: 'Updates the TrainingEnrollmentUserAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEnrollmentUserAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'TrainingEnrollmentUserAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingEnrollmentUserAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEnrollmentUserAdminReadModel.TrainingUserEnrollApiBody' required: true deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingUserEnrolledReadModel - Netex\Component\Training\Domain\ReadModel\TrainingUserUnenrolledReadModel '/api/v1/admin/training-event/{trainingId}/user/{userId}/unenroll': patch: operationId: TrainingEventUserUnenroll tags: - TrainingEvent - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Unenroll a User from a Training Event' description: 'Updates the TrainingEnrollmentUserAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEnrollmentUserAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'TrainingEnrollmentUserAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/training-course/{trainingId}/user/self-enroll': patch: operationId: TrainingCourseSelfEnroll tags: - TrainingCourse - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingUserSelfEnrolledReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingUserSelfEnrolledReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Self enroll in public & recommended Training Course' description: 'Updates the TrainingUserSelfEnrolledReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingUserSelfEnrolledReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/training-event/{trainingId}/user/self-enroll': patch: operationId: TrainingEventSelfEnroll tags: - TrainingEvent - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingUserSelfEnrolledReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingUserSelfEnrolledReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Self enroll in public & recommended Training Event' description: 'Updates the TrainingUserSelfEnrolledReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingUserSelfEnrolledReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/training-event/{trainingId}/user/self-unenroll': patch: operationId: TrainingEventSelfUnenroll tags: - TrainingEvent - Enrollment responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Self unenroll from optional Training event' description: 'Updates the TrainingEventUserSelfUnenrollReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEventUserSelfUnenrollReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false /api/v1/admin/event: get: operationId: EventSearch tags: - Event responses: 200: description: 'EventReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/EventReadModel' } } summary: 'Retrieves the collection of EventReadModel resources.' description: 'Retrieves the collection of EventReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: status in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: dateStart in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: dateEnd in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: catalogIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'catalogIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: tagIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'tagIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: creatorIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'creatorIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[status]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: EventCreation tags: - Event responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'EventReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/EventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a EventReadModel resource.' description: 'Creates a EventReadModel resource.' parameters: [] requestBody: description: 'The new EventReadModel resource' content: application/json: schema: $ref: '#/components/schemas/EventReadModel.EventCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/EventReadModel.EventCreateApiBody' text/csv: schema: $ref: '#/components/schemas/EventReadModel.EventCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/EventReadModel.EventCreateApiBody' required: true deprecated: false '/api/v1/admin/event/{eventId}': get: operationId: EventFind tags: - Event responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'EventReadModel resource' content: application/json: schema: $ref: '#/components/schemas/EventReadModel' summary: 'Retrieves a EventReadModel resource.' description: 'Retrieves a EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: EventDelete tags: - Event responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'EventReadModel resource deleted' summary: 'Removes the EventReadModel resource.' description: 'Removes the EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: EventUpdate tags: - Event responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'EventReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/EventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the EventReadModel resource.' description: 'Updates the EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated EventReadModel resource' content: application/json: schema: $ref: '#/components/schemas/EventReadModel.EventUpdateApiBody' required: true deprecated: false '/api/v1/admin/event/{eventId}/document': post: operationId: EventDocumentUpload tags: - Event responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'EventReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/EventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a EventReadModel resource.' description: 'Creates a EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: '' content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: false deprecated: false '/api/v1/admin/event/{eventId}/document/{documentId}': delete: operationId: EventDocumentDelete tags: - Event responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'EventReadModel resource deleted' summary: 'Removes the EventReadModel resource.' description: 'Removes the EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: documentId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/event/{eventId}/image-cover': post: operationId: EventImageUpload tags: - Event responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'EventReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/EventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a EventReadModel resource.' description: 'Creates a EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: '' content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: false deprecated: false delete: operationId: EventImageDelete tags: - Event responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'EventReadModel resource deleted' summary: 'Removes the EventReadModel resource.' description: 'Removes the EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/event/{eventId}/publish': patch: operationId: EventPublish tags: - Event responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'EventReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/EventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the EventReadModel resource.' description: 'Updates the EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/event/{eventId}/unpublish': patch: operationId: EventUnPublish tags: - Event responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'EventReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/EventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the EventReadModel resource.' description: 'Updates the EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/event/{eventId}/video-cover': post: operationId: EventVideoUpload tags: - Event responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'EventReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/EventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a EventReadModel resource.' description: 'Creates a EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: '' content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: false deprecated: false delete: operationId: EventVideoDelete tags: - Event responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'EventReadModel resource deleted' summary: 'Removes the EventReadModel resource.' description: 'Removes the EventReadModel resource.' parameters: - name: eventId in: path description: 'EventReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false /api/v1/admin/events/creators: get: operationId: CreatorSearch tags: - Event responses: 200: description: 'EventReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/EventReadModel.CreatedBy' } } summary: 'Retrieves the collection of EventReadModel resources.' description: 'Retrieves the collection of EventReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false /api/v1/admin/events/tags: get: operationId: TagList tags: - Event responses: 200: description: 'EventReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/EventReadModel.TagEmbedReadModel' } } summary: 'Retrieves the collection of EventReadModel resources.' description: 'Retrieves the collection of EventReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false /api/v1/admin/extended-field/course: get: operationId: ExtendedFieldCourse tags: - ExtendedField responses: 200: description: 'ExtendedField collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/ExtendedFieldEnumCourseReadModel' }, { $ref: '#/components/schemas/ExtendedFieldTextCourseReadModel' }, { $ref: '#/components/schemas/ExtendedFieldDateCourseReadModel' }, { $ref: '#/components/schemas/ExtendedFieldNumberCourseReadModel' }] } } summary: 'Retrieves the collection of ExtendedField resources.' description: 'Retrieves the collection of ExtendedField resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\ExtendedField\Domain\ReadModel\Course\ExtendedFieldEnumCourseReadModel - Netex\Component\ExtendedField\Domain\ReadModel\Course\ExtendedFieldTextCourseReadModel - Netex\Component\ExtendedField\Domain\ReadModel\Course\ExtendedFieldDateCourseReadModel - Netex\Component\ExtendedField\Domain\ReadModel\Course\ExtendedFieldNumberCourseReadModel /api/v1/admin/extended-field/course/date: post: operationId: ExtendedFieldCourseDateCreate tags: - ExtendedField responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ExtendedField resource created' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldDateCourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ExtendedField resource.' description: 'Creates a ExtendedField resource.' parameters: [] requestBody: description: 'The new ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseDateCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseDateCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseDateCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseDateCreateApiBody' required: true deprecated: false /api/v1/admin/extended-field/course/enum: post: operationId: ExtendedFieldCourseEnumCreate tags: - ExtendedField responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ExtendedField resource created' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldEnumCourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ExtendedField resource.' description: 'Creates a ExtendedField resource.' parameters: [] requestBody: description: 'The new ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseEnumCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseEnumCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseEnumCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseEnumCreateApiBody' required: true deprecated: false /api/v1/admin/extended-field/course/number: post: operationId: ExtendedFieldCourseNumberCreate tags: - ExtendedField responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ExtendedField resource created' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldNumberCourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ExtendedField resource.' description: 'Creates a ExtendedField resource.' parameters: [] requestBody: description: 'The new ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseNumberCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseNumberCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseNumberCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseNumberCreateApiBody' required: true deprecated: false /api/v1/admin/extended-field/course/string: post: operationId: ExtendedFieldCourseStringCreate tags: - ExtendedField responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ExtendedField resource created' content: application/json: schema: $ref: '#/components/schemas/ExtendedField' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ExtendedField resource.' description: 'Creates a ExtendedField resource.' parameters: [] requestBody: description: 'The new ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseStringCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseStringCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseStringCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseStringCreateApiBody' required: true deprecated: false '/api/v1/admin/extended-field/course/{extendedFieldId}': delete: operationId: ExtendedFieldCourseDelete tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'ExtendedField resource deleted' summary: 'Removes the ExtendedField resource.' description: 'Removes the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/extended-field/course/{extendedFieldId}/date': patch: operationId: ExtendedFieldCourseDateUpdate tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ExtendedField resource updated' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldDateCourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ExtendedField resource.' description: 'Updates the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseDateUpdateApiBody' required: true deprecated: false '/api/v1/admin/extended-field/course/{extendedFieldId}/enum': patch: operationId: ExtendedFieldCourseEnumUpdate tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ExtendedField resource updated' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldEnumCourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ExtendedField resource.' description: 'Updates the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseEnumUpdateApiBody' required: true deprecated: false '/api/v1/admin/extended-field/course/{extendedFieldId}/number': patch: operationId: ExtendedFieldCourseNumberUpdate tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ExtendedField resource updated' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldNumberCourseReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ExtendedField resource.' description: 'Updates the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseNumberUpdateApiBody' required: true deprecated: false '/api/v1/admin/extended-field/course/{extendedFieldId}/string': patch: operationId: ExtendedFieldCourseStringUpdate tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ExtendedField resource updated' content: application/json: schema: $ref: '#/components/schemas/ExtendedField' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ExtendedField resource.' description: 'Updates the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldCourseStringUpdateApiBody' required: true deprecated: false /api/v1/admin/extended-field/event: get: operationId: ExtendedFieldEvent tags: - ExtendedField responses: 200: description: 'ExtendedField collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/ExtendedFieldEnumEventReadModel' }, { $ref: '#/components/schemas/ExtendedFieldStringEventReadModel' }, { $ref: '#/components/schemas/ExtendedFieldDateEventReadModel' }, { $ref: '#/components/schemas/ExtendedFieldNumberEventReadModel' }] } } summary: 'Retrieves the collection of ExtendedField resources.' description: 'Retrieves the collection of ExtendedField resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\ExtendedField\Domain\ReadModel\Event\ExtendedFieldEnumEventReadModel - Netex\Component\ExtendedField\Domain\ReadModel\Event\ExtendedFieldStringEventReadModel - Netex\Component\ExtendedField\Domain\ReadModel\Event\ExtendedFieldDateEventReadModel - Netex\Component\ExtendedField\Domain\ReadModel\Event\ExtendedFieldNumberEventReadModel /api/v1/admin/extended-field/event/date: post: operationId: ExtendedFieldMasterEventDate tags: - ExtendedField responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ExtendedField resource created' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldDateEventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ExtendedField resource.' description: 'Creates a ExtendedField resource.' parameters: [] requestBody: description: 'The new ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventDateCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventDateCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventDateCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventDateCreateApiBody' required: true deprecated: false /api/v1/admin/extended-field/event/enum: post: operationId: ExtendedFieldMasterEventEnumCreate tags: - ExtendedField responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ExtendedField resource created' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldEnumEventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ExtendedField resource.' description: 'Creates a ExtendedField resource.' parameters: [] requestBody: description: 'The new ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventEnumCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventEnumCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventEnumCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventEnumCreateApiBody' required: true deprecated: false /api/v1/admin/extended-field/event/number: post: operationId: ExtendedFieldMasterEventNumberCreate tags: - ExtendedField responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ExtendedField resource created' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldNumberEventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ExtendedField resource.' description: 'Creates a ExtendedField resource.' parameters: [] requestBody: description: 'The new ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventNumberCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventNumberCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventNumberCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventNumberCreateApiBody' required: true deprecated: false /api/v1/admin/extended-field/event/string: post: operationId: ExtendedFieldMasterEventStringCreate tags: - ExtendedField responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ExtendedField resource created' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldStringEventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ExtendedField resource.' description: 'Creates a ExtendedField resource.' parameters: [] requestBody: description: 'The new ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventStringCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventStringCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventStringCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventStringCreateApiBody' required: true deprecated: false '/api/v1/admin/extended-field/event/{extendedFieldId}': delete: operationId: ExtendedFieldEventDelete tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'ExtendedField resource deleted' summary: 'Removes the ExtendedField resource.' description: 'Removes the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/extended-field/event/{extendedFieldId}/date': patch: operationId: ExtendedFieldMasterEventDateUpdate tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ExtendedField resource updated' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldDateEventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ExtendedField resource.' description: 'Updates the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventDateUpdateApiBody' required: true deprecated: false '/api/v1/admin/extended-field/event/{extendedFieldId}/enum': patch: operationId: ExtendedFieldMasterEventEnumUpdate tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ExtendedField resource updated' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldEnumEventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ExtendedField resource.' description: 'Updates the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventEnumUpdateApiBody' required: true deprecated: false '/api/v1/admin/extended-field/event/{extendedFieldId}/number': patch: operationId: ExtendedFieldMasterEventNumberUpdate tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ExtendedField resource updated' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldNumberEventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ExtendedField resource.' description: 'Updates the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventNumberUpdateApiBody' required: true deprecated: false '/api/v1/admin/extended-field/event/{extendedFieldId}/string': patch: operationId: ExtendedFieldMasterEventStringUpdate tags: - ExtendedField responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ExtendedField resource updated' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldStringEventReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ExtendedField resource.' description: 'Updates the ExtendedField resource.' parameters: - name: extendedFieldId in: path description: 'ExtendedField identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ExtendedField resource' content: application/json: schema: $ref: '#/components/schemas/ExtendedField.ExtendedFieldMasterEventStringUpdateApiBody' required: true deprecated: false /api/v1/admin/extended-field/pathway: get: operationId: ExtendedFieldPathway tags: - ExtendedField responses: 200: description: 'ExtendedField collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/ExtendedFieldEnumPathwayReadModel' }, { $ref: '#/components/schemas/ExtendedFieldTextPathwayReadModel' }, { $ref: '#/components/schemas/ExtendedFieldDatePathwayReadModel' }] } } summary: 'Retrieves the collection of ExtendedField resources.' description: 'Retrieves the collection of ExtendedField resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\ExtendedField\Domain\ReadModel\Pathway\ExtendedFieldEnumPathwayReadModel - Netex\Component\ExtendedField\Domain\ReadModel\Pathway\ExtendedFieldTextPathwayReadModel - Netex\Component\ExtendedField\Domain\ReadModel\Pathway\ExtendedFieldDatePathwayReadModel /api/v1/admin/extended-field/user: get: operationId: ExtendedFieldUser tags: - ExtendedField responses: 200: description: 'ExtendedField collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/ExtendedFieldEnumUserReadModel' }, { $ref: '#/components/schemas/ExtendedFieldIntUserReadModel' }, { $ref: '#/components/schemas/ExtendedFieldTextUserReadModel' }, { $ref: '#/components/schemas/ExtendedFieldDateUserReadModel' }, { $ref: '#/components/schemas/ExtendedFieldBoolUserReadModel' }] } } summary: 'Retrieves the collection of ExtendedField resources.' description: 'Retrieves the collection of ExtendedField resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\ExtendedField\Domain\ReadModel\User\ExtendedFieldEnumUserReadModel - Netex\Component\ExtendedField\Domain\ReadModel\User\ExtendedFieldIntUserReadModel - Netex\Component\ExtendedField\Domain\ReadModel\User\ExtendedFieldTextUserReadModel - Netex\Component\ExtendedField\Domain\ReadModel\User\ExtendedFieldDateUserReadModel - Netex\Component\ExtendedField\Domain\ReadModel\User\ExtendedFieldBoolUserReadModel /api/v1/learner/ia/course-indexed: get: operationId: CourseIndexedList tags: - 'IA Coach' responses: 200: description: 'Ia Coach Courses Indexed collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Ia.Coach.Courses.Indexed' } } summary: 'Get a list of indexed courses' description: 'Retrieve a list of indexed courses for a learner.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false '/api/v1/learner/ia/training-for-course/{courseId}': get: operationId: GetTrainingForCourse tags: - 'IA Coach' responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Ia Coach Training for Course resource' content: application/json: schema: $ref: '#/components/schemas/Ia.Coach.Training.for.Course' summary: 'Get training for a specific course' description: 'Retrieve the training (convocatoria) ID for a course given the course ID.' parameters: - name: courseId in: path description: 'Ia Coach Training for Course identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false /api/v1/admin/learning-program: get: operationId: LearningProgramSearch tags: - LearningProgram responses: 200: description: 'LearningProgramReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/LearningProgramReadModel' } } summary: 'Retrieves the collection of LearningProgramReadModel resources.' description: 'Retrieves the collection of LearningProgramReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - draft - published - unpublished style: form explode: false allowReserved: false - name: author in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'author[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: catalogue in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'catalogue[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: 'created_at[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'created_at[strictly_before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'created_at[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'created_at[strictly_after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: locale in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - es - en - gl - ca - bg - cs - zh-CN - zh-HK - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-BR - ro - ru - tr - uk style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[status]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[createdAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: LearningProgramCreate tags: - LearningProgram responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'LearningProgramReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a LearningProgramReadModel resource.' description: 'Creates a LearningProgramReadModel resource.' parameters: [] requestBody: description: 'The new LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramCreateApiBody' text/csv: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramCreateApiBody' required: true deprecated: false '/api/v1/admin/learning-program/{learningProgramId}': get: operationId: LearningProgramFind tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel' summary: 'Retrieves a LearningProgramReadModel resource.' description: 'Retrieves a LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: LearningProgramDelete tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'LearningProgramReadModel resource deleted' summary: 'Removes the LearningProgramReadModel resource.' description: 'Removes the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: LearningProgramUpdate tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramUpdateApiBody' required: true deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/delete-requirements': delete: operationId: LearningProgramRequirementDelete tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'LearningProgramReadModel resource deleted' summary: 'Removes the LearningProgramReadModel resource.' description: 'Removes the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/image-cover': post: operationId: LearningProgramCoverImageCreate tags: - LearningProgram responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'LearningProgramReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Upload a cover image to a learningProgram' description: 'Creates a LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: '' content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: false deprecated: false delete: operationId: LearningProgramCoverImageDelete tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'LearningProgramReadModel resource deleted' summary: 'Delete a cover image on a learningProgram' description: 'Removes the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/linear-requirement': patch: operationId: LearningProgramLinearRequirementSet tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramStructureReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Set a linear requirement in pathways on a learningProgram' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/pathway': get: operationId: LearningProgramPathwaySearch tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramStructureReadModel' summary: 'Retrieves a LearningProgramReadModel resource.' description: 'Retrieves a LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false post: operationId: LearningProgramPathwayInclude tags: - LearningProgram responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'LearningProgramReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramStructureReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a LearningProgramReadModel resource.' description: 'Creates a LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramPathwayIncludeApiBody' application/pdf: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramPathwayIncludeApiBody' text/csv: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramPathwayIncludeApiBody' multipart/form-data: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramPathwayIncludeApiBody' required: true deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/pathway/{pathwayId}': get: operationId: LearningProgramPathwayFindRequirements tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel' summary: 'Retrieves a LearningProgramReadModel resource.' description: 'Retrieves a LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: LearningProgramPathwayExclude tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'LearningProgramReadModel resource deleted' summary: 'Removes the LearningProgramReadModel resource.' description: 'Removes the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: LearningProgramPathwayUpdate tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramPathwayReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramPathwayUpdateApiBody' required: true deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/pathway/{pathwayId}/badge/{requiredBadgeId}/required': patch: operationId: LearningProgramPathwayUpdateRequiredBadge tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramStructureReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: requiredBadgeId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/pathway/{pathwayId}/badge/{unrequiredBadgeId}/unrequired': patch: operationId: LearningProgramPathwayUpdateUnrequiredBadge tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramStructureReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: unrequiredBadgeId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/pathway/{pathwayId}/move': patch: operationId: LearningProgramPathwayMove tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramPathwayMoveApiBody' required: true deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/pathway/{pathwayId}/pathway/{requiredPathwayId}/required': patch: operationId: LearningProgramPathwayUpdateRequiredPathway tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramStructureReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: requiredPathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/pathway/{pathwayId}/pathway/{unrequiredPathwayId}/unrequired': patch: operationId: LearningProgramPathwayUpdateUnRequiredPathway tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramStructureReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: unrequiredPathwayId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/publish': patch: operationId: LearningProgramPublish tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/translation': get: operationId: LearningProgramTranslationSearch tags: - LearningProgram responses: 200: description: 'LearningProgramReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/LearningProgramReadModel.TranslationReadModel' } } summary: 'Retrieves the collection of LearningProgramReadModel resources.' description: 'Retrieves the collection of LearningProgramReadModel resources.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/translation/{localeCode}/{field}': delete: operationId: LearningProgramTranslationDelete tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'LearningProgramReadModel resource deleted' summary: 'Removes the LearningProgramReadModel resource.' description: 'Removes the LearningProgramReadModel resource.' parameters: - name: localeCode in: path description: 'Language used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - es - en - gl - ca - bg - cs - zh-cn - zh-hk - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-br - ro - ru - tr - uk style: simple explode: false allowReserved: false - name: field in: path description: 'field used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - name - description style: simple explode: false allowReserved: false - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: LearningProgramTranslationUpdate tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.TranslationReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: localeCode in: path description: 'Language used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - es - en - gl - ca - bg - cs - zh-cn - zh-hk - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-br - ro - ru - tr - uk style: simple explode: false allowReserved: false - name: field in: path description: 'field used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - name - description style: simple explode: false allowReserved: false - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramTranslationUpdateApiBody' required: true deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/tree-structure': get: operationId: LearningProgramFindTreeStructure tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel.LearningProgramTreeStructureReadModel' summary: 'Retrieves a LearningProgramReadModel resource.' description: 'Retrieves a LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/learning-program/{learningProgramId}/unpublish': patch: operationId: LearningProgramUnPublish tags: - LearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningProgramReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningProgramReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningProgramReadModel resource.' description: 'Updates the LearningProgramReadModel resource.' parameters: - name: learningProgramId in: path description: 'LearningProgramReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false /api/v1/admin/learning-programs/creators: get: operationId: LearningProgramCreatorSearch tags: - LearningProgram responses: 200: description: 'LearningProgramReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/LearningProgramReadModel.CreatedBy' } } summary: 'Retrieves the collection of LearningProgramReadModel resources.' description: 'Retrieves the collection of LearningProgramReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false /api/v1/learner/learning-session: get: operationId: LearningSessionSearch tags: - LearningSession responses: 200: description: 'LearningSessionReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/LearningSessionReadModel' } } summary: 'Retrieves the collection of LearningSessionReadModel resources.' description: 'Retrieves the collection of LearningSessionReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false /api/v1/learner/learning-session/event: get: operationId: LearningSessionLoadEvent tags: - LearningSession responses: 200: description: 'LearningSessionReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/LearningSessionReadModel.LearningSessionEventReadModel' } } summary: 'Retrieves the collection of LearningSessionReadModel resources.' description: 'Retrieves the collection of LearningSessionReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: fromId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false /api/v1/learner/learning-session/open: post: operationId: LearningSessionOpenV1 tags: - LearningSession responses: 409: description: 'Error unknown, cannot continue learning' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 410: description: 'Error transient, retry operation' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'LearningSessionReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/LearningSessionReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a LearningSessionReadModel resource.' description: 'Creates a LearningSessionReadModel resource.' parameters: [] requestBody: description: 'The new LearningSessionReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningSessionReadModel.LearningSessionOpenApiBody' application/pdf: schema: $ref: '#/components/schemas/LearningSessionReadModel.LearningSessionOpenApiBody' text/csv: schema: $ref: '#/components/schemas/LearningSessionReadModel.LearningSessionOpenApiBody' multipart/form-data: schema: $ref: '#/components/schemas/LearningSessionReadModel.LearningSessionOpenApiBody' required: true deprecated: false x-extraResponses: 410: description: 'Error transient, retry operation' 409: description: 'Error unknown, cannot continue learning' '/api/v1/learner/learning-session/{sessionId}': get: operationId: LearningSessionFind tags: - LearningSession responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningSessionReadModel resource' content: application/json: schema: $ref: '#/components/schemas/LearningSessionReadModel' summary: 'Retrieves a LearningSessionReadModel resource.' description: 'Retrieves a LearningSessionReadModel resource.' parameters: - name: sessionId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/learning-session/{sessionId}/activity/{activityId}/start': patch: operationId: LearningSessionActivityStart tags: - LearningSession responses: 409: description: 'Error unknown, cannot continue learning' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 410: description: 'Error transient, retry operation' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningSessionReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningSessionReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningSessionReadModel resource.' description: 'Updates the LearningSessionReadModel resource.' parameters: - name: sessionId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: activityId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 410: description: 'Error transient, retry operation' 409: description: 'Error unknown, cannot continue learning' '/api/v1/learner/learning-session/{sessionId}/activity/{activityId}/stop': patch: operationId: LearningSessionActivityStop tags: - LearningSession responses: 409: description: 'Error unknown, cannot continue learning' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 410: description: 'Error transient, retry operation' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningSessionReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningSessionReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningSessionReadModel resource.' description: 'Updates the LearningSessionReadModel resource.' parameters: - name: sessionId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: activityId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 410: description: 'Error transient, retry operation' 409: description: 'Error unknown, cannot continue learning' '/api/v1/learner/learning-session/{sessionId}/alive': patch: operationId: LearningSessionAlive tags: - LearningSession responses: 409: description: 'Error unknown, cannot continue learning' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 410: description: 'Error transient, retry operation' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningSessionReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningSessionReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningSessionReadModel resource.' description: 'Updates the LearningSessionReadModel resource.' parameters: - name: sessionId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 410: description: 'Error transient, retry operation' 409: description: 'Error unknown, cannot continue learning' '/api/v1/learner/learning-session/{sessionId}/close': patch: operationId: LearningSessionClose tags: - LearningSession responses: 409: description: 'Error unknown, cannot continue learning' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 410: description: 'Error transient, retry operation' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'LearningSessionReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/LearningSessionReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the LearningSessionReadModel resource.' description: 'Updates the LearningSessionReadModel resource.' parameters: - name: sessionId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 410: description: 'Error transient, retry operation' 409: description: 'Error unknown, cannot continue learning' '/api/v1/learner/learning-session/{trainingId}/course/{courseId}/open': post: operationId: LearningSessionOpen tags: - LearningSession responses: 409: description: 'Error unknown, cannot continue learning' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 410: description: 'Error transient, retry operation' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'LearningSessionReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/LearningSessionReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a LearningSessionReadModel resource.' description: 'Creates a LearningSessionReadModel resource.' parameters: - name: trainingId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: courseId in: path description: 'LearningSessionReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 410: description: 'Error transient, retry operation' 409: description: 'Error unknown, cannot continue learning' /api/v1/learner/learning-tracking/badge: get: operationId: LearningTrackingUserBadgeSearch tags: - LearningTracking responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'UserBadgeReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/UserBadgeReadModel' } } summary: 'Retrieves self badges including both earned and pending' description: 'Retrieves the collection of UserBadgeReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: earned in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' /api/v1/learner/learning-tracking/training-course/academic-record: get: operationId: LearningTrackingTrainingCourseAcademicRecord tags: - LearningTracking responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingCourseLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingCourseLearnerReadModel' } } summary: "Retrieves user's academic records for Course entity" description: 'Retrieves the collection of TrainingCourseLearnerReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/learner/learning-tracking/training-course/{trainingId}/academic-record': get: operationId: FindLearningTrackingTrainingCourseAcademicRecord tags: - LearningTracking responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingCourseLearnerReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingCourseLearnerReadModel' summary: "Retrieves user's academic records for Course" description: 'Retrieves a TrainingCourseLearnerReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingCourseLearnerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' /api/v1/learner/learning-tracking/training-event/academic-record: get: operationId: LearningTrackingTrainingEventAcademicRecord tags: - LearningTracking responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEventReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingEventReadModel' } } summary: 'Retrieves the collection of TrainingEventReadModel resources.' description: 'Retrieves the collection of TrainingEventReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' /api/v1/learner/learning-tracking/training-learning-program/academic-record: get: operationId: LearningTrackingTrainingLearningProgramAcademicRecord tags: - LearningTracking responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingLearningProgramLearnerAcademicRecordReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingLearningProgramLearnerAcademicRecordReadModel' } } summary: "Retrieves user's academic records" description: 'Retrieves the collection of TrainingLearningProgramLearnerAcademicRecordReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/learner/learning-tracking/training-learning-program/{trainingId}/academic-record': get: operationId: GetLearningTrackingTrainingLearningProgramAcademicRecord tags: - LearningTracking responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingPathwayLearnerReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayLearnerReadModel' summary: "Retrieves user's academic records for Learning Program entity" description: 'Retrieves a TrainingPathwayLearnerReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingPathwayLearnerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' /api/v1/learner/learning-tracking/training-pathway/academic-record: get: operationId: LearningTrackingTrainingPathwayAcademicRecord tags: - LearningTracking responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingPathwayLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingPathwayLearnerReadModel' } } summary: "Retrieves user's academic records for Pathway entity" description: 'Retrieves the collection of TrainingPathwayLearnerReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/learner/learning-tracking/training-pathway/{trainingId}/academic-record': get: operationId: GetLearningTrackingTrainingPathwayAcademicRecord tags: - LearningTracking responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingPathwayLearnerReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayLearnerReadModel' summary: "Retrieves user's academic records for Pathway entity" description: 'Retrieves a TrainingPathwayLearnerReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingPathwayLearnerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/learner/learning-tracking/training/{trainingId}/pathway/{pathwayId}/start': patch: operationId: TrainingPathwayAttempt tags: - LearningTracking responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the TrainingPathwayStartReadModel resource.' description: 'Updates the TrainingPathwayStartReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingPathwayStartReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'TrainingPathwayStartReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training/{trainingId}/course/{courseId}/user/{userId}/complete': patch: operationId: CourseComplete tags: - LearningValidation responses: 424: description: 'Enrollment precondition failed' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CourseProgressReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/CourseProgressReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Complete a course on a training for a specific user' description: 'Updates the CourseProgressReadModel resource.' parameters: - name: trainingId in: path description: 'CourseProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: courseId in: path description: 'CourseProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'CourseProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated CourseProgressReadModel resource' content: application/json: schema: $ref: '#/components/schemas/CourseProgressReadModel.CourseCompleteApiBody' required: true deprecated: false x-extraResponses: 403: description: 'Unauthorized access' 424: description: 'Enrollment precondition failed' '/api/v1/admin/training/{trainingId}/course/{courseId}/user/{userId}/validate': patch: operationId: CourseValidate tags: - LearningValidation responses: 424: description: 'Enrollment precondition failed' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CourseProgressReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/CourseProgressReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Validate a course on a training for a specific user (user must have already completed the course earlier)' description: 'Updates the CourseProgressReadModel resource.' parameters: - name: trainingId in: path description: 'CourseProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: courseId in: path description: 'CourseProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'CourseProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' 424: description: 'Enrollment precondition failed' /api/v1/admin/customer: get: operationId: CustomerSearch tags: - Organization responses: 200: description: 'CustomerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/CustomerReadModel' } } summary: 'Retrieves a collection of Customer resources.' description: 'Retrieves the collection of CustomerReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/customer/{customerId}': get: operationId: CustomerFind tags: - Organization responses: 404: description: 'Custom exception' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'CustomerReadModel resource' content: application/json: schema: $ref: '#/components/schemas/CustomerReadModel' summary: 'Retrieves a Customer resource.' description: 'Retrieves a CustomerReadModel resource.' parameters: - name: customerId in: path description: 'CustomerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 404: description: 'Custom exception' /api/v1/admin/group: get: operationId: GroupSearch tags: - Organization responses: 200: description: 'GroupReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/GroupReadModel' } } summary: 'Retrieves a collection of Group resources.' description: 'Retrieves the collection of GroupReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false /api/v1/admin/group-user: get: operationId: GroupUserSearch tags: - Organization responses: 200: description: 'GroupUserReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/GroupUserReadModel' } } summary: 'Retrieves a collection of GroupUser resources.' description: 'Retrieves the collection of GroupUserReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: userId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: groupId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/group-user/{groupUserId}': get: operationId: GroupUserFind tags: - Organization responses: 404: description: 'Custom exception' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'GroupUserReadModel resource' content: application/json: schema: $ref: '#/components/schemas/GroupUserReadModel' summary: 'Retrieves a GroupUser resource.' description: 'Retrieves a GroupUserReadModel resource.' parameters: - name: groupUserId in: path description: 'GroupUserReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 404: description: 'Custom exception' '/api/v1/admin/group/{groupId}': get: operationId: GroupFind tags: - Organization responses: 404: description: 'Custom exception' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'GroupReadModel resource' content: application/json: schema: $ref: '#/components/schemas/GroupReadModel' summary: 'Retrieves a Group resource.' description: 'Retrieves a GroupReadModel resource.' parameters: - name: groupId in: path description: 'GroupReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 404: description: 'Custom exception' /api/v1/admin/user: get: operationId: UserSearch tags: - Organization responses: 200: description: 'UserReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/UserReadModel' } } summary: 'Retrieves the collection of UserReadModel resources.' description: 'Retrieves the collection of UserReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: username in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: groupId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'groupId[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: role in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - admin - user - author - teacher style: form explode: false allowReserved: false - name: 'order[username]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[mail]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/user/{userId}': get: operationId: UserFind tags: - Organization responses: 404: description: 'Custom exception' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'UserReadModel resource' content: application/json: schema: $ref: '#/components/schemas/UserReadModel' summary: 'Retrieves a UserReadModel resource.' description: 'Retrieves a UserReadModel resource.' parameters: - name: userId in: path description: 'UserReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 404: description: 'Custom exception' /api/v1/admin/pathway: get: operationId: PathwaySearch tags: - Pathway responses: 200: description: 'PathwayReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/PathwayReadModel' } } summary: 'Retrieves the collection of PathwayReadModel resources.' description: 'Retrieves the collection of PathwayReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: catalogIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'catalogIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: authorIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'authorIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: status in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - draft - published - unpublished style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[status]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[createdAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[defaultLocale]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: PathwayCreate tags: - Pathway responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'PathwayReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'CURRENTLY DISABLED.' description: 'CURRENTLY DISABLED.' parameters: [] requestBody: description: 'The new PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayCreateApiBody' text/csv: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayCreateApiBody' required: true deprecated: true /api/v1/admin/pathway/resource/preview: get: operationId: PathwayResourceMetaExtract tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayResourceMetaExtractReadModel' summary: 'Retrieves a PathwayReadModel resource.' description: 'Retrieves a PathwayReadModel resource.' parameters: - name: url in: query description: '' required: false deprecated: false allowEmptyValue: false schema: [] style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}': get: operationId: PathwayFind tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel' summary: 'Retrieves a PathwayReadModel resource.' description: 'Retrieves a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: PathwayUpdate tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'CURRENTLY DISABLED.' description: 'CURRENTLY DISABLED.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayUpdateApiBody' required: true deprecated: true '/api/v1/admin/pathway/{pathwayId}/content': get: operationId: PathwayContentSearch tags: - Pathway responses: 200: description: 'PathwayReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/PathwayReadModel.PathwayContentReadModel' } } summary: 'Retrieves the collection of PathwayReadModel resources.' description: 'Retrieves the collection of PathwayReadModel resources.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/content/{contentId}': get: operationId: PathwayContentFind tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayContentReadModel' summary: 'Retrieves a PathwayReadModel resource.' description: 'Retrieves a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: PathwayContentDelete tags: - Pathway responses: 403: description: 'Unauthorized request' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Content not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail summary: 'Removes the PathwayReadModel resource.' description: 'Removes the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/content/{contentId}/badge/{requiredBadgeId}/required': patch: operationId: PathwayContentUpdateRequiredBadge tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayContentReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: requiredBadgeId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/content/{contentId}/badge/{unrequiredBadgeId}/unrequired': patch: operationId: PathwayContentUpdateUnrequiredBadge tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayContentReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: unrequiredBadgeId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/content/{contentId}/content/{requiredContentId}/required': patch: operationId: PathwayContentUpdatePathwayContentRequired tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: requiredContentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/content/{contentId}/content/{unrequiredContentId}/unrequired': patch: operationId: PathwayContentUpdatePathwayContentUnrequired tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: unrequiredContentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/content/{contentId}/move': patch: operationId: PathwayContentMove tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayContentMoveApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/content/{contentId}/required': patch: operationId: PathwayContentRequired tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/content/{contentId}/unrequired': patch: operationId: PathwayContentUnrequired tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/linear-requirement': patch: operationId: PathwayLinearRequirementSet tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Set a linear requirement in courses/events on a pathway' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/publish': patch: operationId: PathwayPublish tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/requirement': delete: operationId: PathwayRequirementDelete tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'PathwayReadModel resource deleted' summary: 'Removes the PathwayReadModel resource.' description: 'Removes the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/resource': get: operationId: PathwayResourceSearch tags: - Pathway responses: 200: description: 'PathwayReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/PathwayReadModel.PathwayResourceReadModel' } } summary: 'Retrieves the collection of PathwayReadModel resources.' description: 'Retrieves the collection of PathwayReadModel resources.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'order[title]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: PathwayResourceCreate tags: - Pathway responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'PathwayReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayResourceReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a PathwayReadModel resource.' description: 'Creates a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayResourceCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayResourceCreateApiBody' text/csv: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayResourceCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayResourceCreateApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/resource/{contentId}': get: operationId: PathwayResourceFind tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayResourceReadModel' summary: 'Retrieves a PathwayReadModel resource.' description: 'Retrieves a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: PathwayResourceDelete tags: - Pathway responses: 403: description: 'Unauthorized request' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail summary: 'Removes the PathwayReadModel resource.' description: 'Removes the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: PathwayResourceUpdate tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayResourceUpdateApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/resource/{contentId}/image-cover': post: operationId: PathwayResourceCoverImageCreate tags: - Pathway responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'PathwayReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Upload a cover image to a pathwayResource' description: 'Creates a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: '' content: multipart/form-data: schema: type: object properties: file: type: string format: binary required: false deprecated: false delete: operationId: PathwayResourceCoverImageDelete tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'PathwayReadModel resource deleted' summary: 'Delete a cover image on a pathwayResource' description: 'Removes the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: contentId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/stage': get: operationId: PathwayStageSearch tags: - Pathway responses: 200: description: 'PathwayReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/PathwayReadModel.PathwayStructureReadModel' } } summary: 'Retrieves the collection of PathwayReadModel resources.' description: 'Retrieves the collection of PathwayReadModel resources.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false post: operationId: PathwayStageCreate tags: - Pathway responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'PathwayReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayStageReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a PathwayReadModel resource.' description: 'Creates a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayStageCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayStageCreateApiBody' text/csv: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayStageCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayStageCreateApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/stage/translation': get: operationId: PathwayStageTranslationSearch tags: - Pathway responses: 200: description: 'PathwayReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/PathwayReadModel.TranslationReadModel' } } summary: 'Retrieves the collection of PathwayReadModel resources.' description: 'Retrieves the collection of PathwayReadModel resources.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/stage/{stageId}': get: operationId: PathwayStageFind tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayStageReadModel' summary: 'Retrieves a PathwayReadModel resource.' description: 'Retrieves a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: stageId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: PathwayStageDelete tags: - Pathway responses: 403: description: 'Unauthorized request' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Content not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail summary: 'Removes the PathwayReadModel resource.' description: 'Removes the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: stageId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: PathwayStageUpdate tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: stageId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayStageUpdateApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/stage/{stageId}/course': post: operationId: PathwayStageCourseCreate tags: - Pathway responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'PathwayReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayContentReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a PathwayReadModel resource.' description: 'Creates a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: stageId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayCourseCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayCourseCreateApiBody' text/csv: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayCourseCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayCourseCreateApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/stage/{stageId}/event': post: operationId: PathwayStageEventCreate tags: - Pathway responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'PathwayReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayContentReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a PathwayReadModel resource.' description: 'Creates a PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: stageId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayEventCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayEventCreateApiBody' text/csv: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayEventCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayEventCreateApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/stage/{stageId}/translation/{localeCode}/{field}': delete: operationId: PathwayStageTranslationDelete tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'PathwayReadModel resource deleted' summary: 'Removes the PathwayReadModel resource.' description: 'Removes the PathwayReadModel resource.' parameters: - name: stageId in: path description: 'field used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: integer style: simple explode: false allowReserved: false - name: localeCode in: path description: 'Language used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - es - en - gl - ca - bg - cs - zh-cn - zh-hk - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-br - ro - ru - tr - uk style: simple explode: false allowReserved: false - name: field in: path description: 'field used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - stageName style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: PathwayStageTranslationUpdate tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: stageId in: path description: 'field used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: integer style: simple explode: false allowReserved: false - name: localeCode in: path description: 'Language used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - es - en - gl - ca - bg - cs - zh-cn - zh-hk - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-br - ro - ru - tr - uk style: simple explode: false allowReserved: false - name: field in: path description: 'field used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - stageName style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayStageTranslationUpdateApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/translation': get: operationId: PathwayTranslationSearch tags: - Pathway responses: 200: description: 'PathwayReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/PathwayReadModel.TranslationReadModel' } } summary: 'Retrieves the collection of PathwayReadModel resources.' description: 'Retrieves the collection of PathwayReadModel resources.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/pathway/{pathwayId}/translation/{localeCode}/{field}': delete: operationId: PathwayTranslationDelete tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'PathwayReadModel resource deleted' summary: 'Removes the PathwayReadModel resource.' description: 'Removes the PathwayReadModel resource.' parameters: - name: localeCode in: path description: 'Language used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - es - en - gl - ca - bg - cs - zh-cn - zh-hk - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-br - ro - ru - tr - uk style: simple explode: false allowReserved: false - name: field in: path description: 'field used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - name - description style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: PathwayTranslationUpdate tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: localeCode in: path description: 'Language used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - es - en - gl - ca - bg - cs - zh-cn - zh-hk - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-br - ro - ru - tr - uk style: simple explode: false allowReserved: false - name: field in: path description: 'field used to display transportable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - name - description style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated PathwayReadModel resource' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel.PathwayTranslationUpdateApiBody' required: true deprecated: false '/api/v1/admin/pathway/{pathwayId}/unpublish': patch: operationId: PathwayUnPublish tags: - Pathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'PathwayReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/PathwayReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the PathwayReadModel resource.' description: 'Updates the PathwayReadModel resource.' parameters: - name: pathwayId in: path description: 'PathwayReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/report/activity-detailed-answer/{trainingId}/{courseId}/{activityId}/export': get: operationId: ActivityDetailedAnswerReportExport tags: - Report responses: 204: description: 'No content' summary: 'Export report activity detailed answer' description: 'Retrieves the collection of ActivityDetailedAnswerReportExportReadModel resources.' parameters: - name: trainingId in: path description: 'ActivityDetailedAnswerReportExportReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: courseId in: path description: 'ActivityDetailedAnswerReportExportReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: activityId in: path description: 'ActivityDetailedAnswerReportExportReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false x-extraResponse: 403: description: 'Unauthorized access' /api/v1/admin/report/course: get: operationId: CourseReportSearch tags: - Report responses: 200: description: 'CourseReportReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/CourseReportReadModel' } } summary: 'Get course report collection' description: 'Retrieves the collection of CourseReportReadModel resources.' parameters: - name: extendedField in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: object additionalProperties: type: array items: type: string example: 2c989efd8183485aa1b97782ed43e095: 'value of extended field 1' 503f89cc97154f1aa3ea801a5234f5a1: 'value of extended field 2' 363796d613154e3c823b9d80d5d10138: 'value of extended field 3' style: deepObject explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-extraResponse: 403: description: 'Unauthorized access' /api/v1/admin/report/course/export: get: operationId: CourseReportExport tags: - Report responses: 204: description: 'No content' summary: 'Export report course' description: 'Retrieves the collection of CourseReportReadModel resources.' parameters: - name: extendedField in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: object additionalProperties: type: array items: type: string example: 2c989efd8183485aa1b97782ed43e095: 'value of extended field 1' 503f89cc97154f1aa3ea801a5234f5a1: 'value of extended field 2' style: deepObject explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-extraResponse: 403: description: 'Unauthorized access' /api/v1/admin/report/pathway: get: operationId: PathwayReportSearch tags: - Report responses: 200: description: 'PathwayReportReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/PathwayReportReadModel' } } summary: 'Get pathway report collection' description: 'Retrieves the collection of PathwayReportReadModel resources.' parameters: - name: extendedField in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: object additionalProperties: type: array items: type: string example: 2c989efd8183485aa1b97782ed43e095: 'value of extended field 1' 503f89cc97154f1aa3ea801a5234f5a1: 'value of extended field 2' 363796d613154e3c823b9d80d5d10138: 'value of extended field 3' style: deepObject explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-extraResponse: 403: description: 'Unauthorized access' /api/v1/admin/report/team/member: get: operationId: TeamReportSelfMemberSearch tags: - Report responses: 200: description: 'TeamReportMemberReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TeamReportMemberReadModel' } } summary: 'Get Team Report self members collection' description: 'Retrieves the collection of TeamReportMemberReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: trainingState in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - open - closed style: form explode: false allowReserved: false - name: includeInactiveUsers in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: includeFullTeam in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/report/team/member/{subordinateId}/member': get: operationId: TeamReportSubordinateMemberSearch tags: - Report responses: 200: description: 'TeamReportMemberReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TeamReportMemberReadModel' } } summary: 'Get Team Report subordinate members collection' description: 'Retrieves the collection of TeamReportMemberReadModel resources.' parameters: - name: subordinateId in: path description: 'TeamReportMemberReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: trainingState in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - open - closed style: form explode: false allowReserved: false - name: includeInactiveUsers in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: includeFullTeam in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/report/team/member/{subordinateId}/summary': get: operationId: TeamReportSubordinateSummary tags: - Report responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TeamReportSubordinateSummaryReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TeamReportSubordinateSummaryReadModel' summary: 'Get Team Report subordinate summary' description: 'Retrieves a TeamReportSubordinateSummaryReadModel resource.' parameters: - name: trainingState in: query description: 'Training state' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - open - closed style: form explode: false allowReserved: false - name: includeInactiveUsers in: query description: 'Whether to include inactive users stats or not' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: includeFullTeam in: query description: 'Whether to include full team stats or direct subordinates only stats' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: subordinateId in: path description: 'TeamReportSubordinateSummaryReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false /api/v1/admin/report/team/summary: get: operationId: TeamReportSelfSummary tags: - Report responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TeamReportSelfSummaryReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TeamReportSelfSummaryReadModel' summary: 'Get Team Report self summary' description: 'Retrieves a TeamReportSelfSummaryReadModel resource.' parameters: - name: trainingState in: query description: 'Training state' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - open - closed style: form explode: false allowReserved: false - name: includeInactiveUsers in: query description: 'Whether to include inactive users stats or not' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: includeFullTeam in: query description: 'Whether to include full team stats or direct subordinates only stats' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false deprecated: false /api/v1/admin/report/user: get: operationId: UserReportSearch tags: - Report responses: 200: description: 'UserReportReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/UserReportReadModel' } } summary: 'Get user report collection' description: 'Retrieves the collection of UserReportReadModel resources.' parameters: - name: extendedField in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: object additionalProperties: type: array items: type: string example: 2c989efd8183485aa1b97782ed43e095: 'value of extended field 1' 503f89cc97154f1aa3ea801a5234f5a1: 'value of extended field 2' 363796d613154e3c823b9d80d5d10138: 'value of extended field 3' style: deepObject explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: userId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'userId[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: groupId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'groupId[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: courseId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-extraResponse: 403: description: 'Unauthorized access' /api/v1/admin/report/user/export: get: operationId: UserReportExport tags: - Report responses: 204: description: 'No content' summary: 'Export report user' description: 'Retrieves the collection of UserReportReadModel resources.' parameters: - name: extendedField in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: object additionalProperties: type: array items: type: string example: 2c989efd8183485aa1b97782ed43e095: 'value of extended field 1' 503f89cc97154f1aa3ea801a5234f5a1: 'value of extended field 2' 363796d613154e3c823b9d80d5d10138: 'value of extended field 3' style: deepObject explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: userId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'userId[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: groupId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'groupId[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: courseId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-extraResponse: 403: description: 'Unauthorized access' '/api/v1/admin/review/course/{courseId}/training/{trainingId}': get: operationId: ReviewCourseSearchAdmin tags: - Review responses: 200: description: 'Review collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Review' } } summary: 'Retrieves the collection of Review resources.' description: 'Retrieves the collection of Review resources.' parameters: - name: courseId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: trainingId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: 'order[comment]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[ratingOverFive]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[userName]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: comment in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: ratingOverFive in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'updatedAt[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'updatedAt[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false '/api/v1/learner/review/course/{courseId}/training/{trainingId}': get: operationId: ReviewCourseSearchLearner tags: - Review responses: 200: description: 'Review collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Review' } } summary: 'Retrieves the collection of Review resources.' description: 'Retrieves the collection of Review resources.' parameters: - name: courseId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: trainingId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: 'order[comment]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[ratingOverFive]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[userName]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: ReviewCourseCreate tags: - Review responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'Review resource created' content: application/json: schema: $ref: '#/components/schemas/Review' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a Review resource.' description: 'Creates a Review resource.' parameters: - name: courseId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: trainingId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new Review resource' content: application/json: schema: $ref: '#/components/schemas/Review.CourseReviewCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/Review.CourseReviewCreateApiBody' text/csv: schema: $ref: '#/components/schemas/Review.CourseReviewCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/Review.CourseReviewCreateApiBody' required: true deprecated: false '/api/v1/learner/review/course/{courseId}/training/{trainingId}/summary': get: operationId: ReviewCourseSummary tags: - Review responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Review resource' content: application/json: schema: $ref: '#/components/schemas/Review.ReviewSummaryReadModel' summary: 'Retrieves a Review resource.' description: 'Retrieves a Review resource.' parameters: - name: courseId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: trainingId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/review/course/{courseId}/training/{trainingId}/user': get: operationId: ReviewCourseUser tags: - Review responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Review resource' content: application/json: schema: $ref: '#/components/schemas/Review' summary: 'Retrieves a Review resource.' description: 'Retrieves a Review resource.' parameters: - name: courseId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: trainingId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/review/{reviewId}': delete: operationId: ReviewCourseDelete tags: - Review responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'Review resource deleted' summary: 'Removes the Review resource.' description: 'Removes the Review resource.' parameters: - name: reviewId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: ReviewCourseUpdate tags: - Review responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Review resource updated' content: application/json: schema: $ref: '#/components/schemas/Review' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the Review resource.' description: 'Updates the Review resource.' parameters: - name: reviewId in: path description: 'Review identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated Review resource' content: application/json: schema: $ref: '#/components/schemas/Review.CourseReviewUpdateApiBody' required: true deprecated: false /api/v1/admin/screen-view: get: operationId: ScreenViewSearch tags: - ScreenView responses: 200: description: 'ScreenView collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/ScreenView' } } summary: 'Retrieves the collection of ScreenView resources.' description: 'Retrieves the collection of ScreenView resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: screenGroup in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false post: operationId: ScreenViewCreate tags: - ScreenView responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'ScreenView resource created' content: application/json: schema: $ref: '#/components/schemas/ScreenView' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a ScreenView resource.' description: 'Creates a ScreenView resource.' parameters: [] requestBody: description: 'The new ScreenView resource' content: application/json: schema: $ref: '#/components/schemas/ScreenView.ScreenViewCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/ScreenView.ScreenViewCreateApiBody' text/csv: schema: $ref: '#/components/schemas/ScreenView.ScreenViewCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/ScreenView.ScreenViewCreateApiBody' required: true deprecated: false '/api/v1/admin/screen-view/{screenViewId}': get: operationId: ScreenViewFind tags: - ScreenView responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ScreenView resource' content: application/json: schema: $ref: '#/components/schemas/ScreenView' summary: 'Retrieves a ScreenView resource.' description: 'Retrieves a ScreenView resource.' parameters: - name: screenViewId in: path description: 'ScreenView identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: ScreenViewDelete tags: - ScreenView responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'ScreenView resource deleted' summary: 'Removes the ScreenView resource.' description: 'Removes the ScreenView resource.' parameters: - name: screenViewId in: path description: 'ScreenView identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/screen-view/{screenViewId}/move': patch: operationId: ScreenViewMove tags: - ScreenView responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'ScreenView resource updated' content: application/json: schema: $ref: '#/components/schemas/ScreenView' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the ScreenView resource.' description: 'Updates the ScreenView resource.' parameters: - name: screenViewId in: path description: 'ScreenView identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated ScreenView resource' content: application/json: schema: $ref: '#/components/schemas/ScreenView.ScreenViewMoveApiBody' required: true deprecated: false /api/v1/admin/tag: get: operationId: TagSearch tags: - Tag responses: 200: description: 'Tag collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/Tag' } } summary: 'Retrieves the collection of Tag resources.' description: 'Retrieves the collection of Tag resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false post: operationId: TagCreate tags: - Tag responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'Tag resource created' content: application/json: schema: $ref: '#/components/schemas/Tag' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a Tag resource.' description: 'Creates a Tag resource.' parameters: [] requestBody: description: 'The new Tag resource' content: application/json: schema: $ref: '#/components/schemas/Tag.TagCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/Tag.TagCreateApiBody' text/csv: schema: $ref: '#/components/schemas/Tag.TagCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/Tag.TagCreateApiBody' required: true deprecated: false '/api/v1/admin/tag/{tagId}': get: operationId: TagFind tags: - Tag responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Tag resource' content: application/json: schema: $ref: '#/components/schemas/Tag' summary: 'Retrieves a Tag resource.' description: 'Retrieves a Tag resource.' parameters: - name: tagId in: path description: 'Tag identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: TagDelete tags: - Tag responses: 403: description: 'Unauthorized request' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'Tag resource deleted' summary: 'Removes the Tag resource.' description: 'Removes the Tag resource.' parameters: - name: tagId in: path description: 'Tag identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized request' patch: operationId: TagUpdate tags: - Tag responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'Tag resource updated' content: application/json: schema: $ref: '#/components/schemas/Tag' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the Tag resource.' description: 'Updates the Tag resource.' parameters: - name: tagId in: path description: 'Tag identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated Tag resource' content: application/json: schema: $ref: '#/components/schemas/Tag.TagUpdateApiBody' required: true deprecated: false /api/v1/admin/training: get: operationId: TrainingSearchAdmin tags: - Training responses: 200: description: 'TrainingCommonAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingCommonAdminReadModel' }] } } summary: 'Retrieves the collection of TrainingCommonAdminReadModel resources.' description: 'Retrieves the collection of TrainingCommonAdminReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: diplomaId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'order[createdDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[startDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[endDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingCommonAdminReadModel '/api/v1/admin/training-chat/{trainingId}/report': get: operationId: TrainingChatReport tags: - Training responses: 200: description: 'Training chat teams report txt' content: text/csv: schema: type: string summary: 'Retrieves a TrainingChatReportReadModel resource.' description: 'Retrieves a TrainingChatReportReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingChatReportReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training/progress/{userId}/totals': get: operationId: TrainingGetTotals tags: - Training responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingProgressCountsReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingProgressCountsReadModel' summary: 'Retrieves a TrainingProgressCountsReadModel resource.' description: 'Retrieves a TrainingProgressCountsReadModel resource.' parameters: - name: userId in: path description: 'TrainingProgressCountsReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training/{trainingId}/course/{courseId}/user/{userId}/progress-report': get: operationId: TrainingUserProgressReport tags: - Training responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingProgressReportReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingProgressReportReadModel' summary: 'Retrieves a TrainingProgressReportReadModel resource.' description: 'Retrieves a TrainingProgressReportReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingProgressReportReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: courseId in: path description: 'TrainingProgressReportReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'TrainingProgressReportReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training/{trainingId}/teacher': get: operationId: TrainingTeacherSearchAdmin tags: - Training responses: 200: description: 'TrainingTeacherAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingTeacherAdminReadModel' }] } } summary: 'Retrieves the collection of TrainingTeacherAdminReadModel resources.' description: 'Retrieves the collection of TrainingTeacherAdminReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingTeacherAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingTeacherAdminReadModel /api/v1/learner/training: get: operationId: TrainingSearchLearner tags: - Training responses: 200: description: 'TrainingLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingCourseLearnerReadModel' }, { $ref: '#/components/schemas/TrainingPathwayLearnerReadModel' }, { $ref: '#/components/schemas/TrainingEventLearnerReadModel' }] } } summary: 'Retrieves the collection of TrainingLearnerReadModel resources.' description: 'Retrieves the collection of TrainingLearnerReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: carouselId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: parentId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: type in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - TrainingCourse - TrainingPathway - TrainingEvent style: form explode: false allowReserved: false - name: 'order[createdDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[startDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[endDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingCourseLearnerReadModel - Netex\Component\Training\Domain\ReadModel\TrainingPathway\Learner\TrainingPathwayLearnerReadModel - Netex\Component\Training\Domain\ReadModel\TrainingEventLearnerReadModel /api/v1/admin/training-course: get: operationId: TrainingCourseSearch tags: - TrainingCourse responses: 200: description: 'TrainingCourseAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingCourseAdminReadModel' } } summary: 'Retrieves the collection of TrainingCourseAdminReadModel resources.' description: 'Retrieves the collection of TrainingCourseAdminReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: courseId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: isPublic in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - planned - opened - closed style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[state]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[startDate]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[endDate]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[createdAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[isPublic]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: TrainingCourseCreate tags: - TrainingCourse responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'TrainingCourseAdminReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a TrainingCourseAdminReadModel resource.' description: 'Creates a TrainingCourseAdminReadModel resource.' parameters: [] requestBody: description: 'The new TrainingCourseAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel.TrainingCourseCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel.TrainingCourseCreateApiBody' text/csv: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel.TrainingCourseCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel.TrainingCourseCreateApiBody' required: true deprecated: false '/api/v1/admin/training-course/progress/{userId}': get: operationId: TrainingCourseProgress tags: - TrainingCourse responses: 200: description: 'TrainingCourseProgressReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingCourseProgressReadModel' } } summary: 'Retrieves the collection of TrainingCourseProgressReadModel resources.' description: 'Retrieves the collection of TrainingCourseProgressReadModel resources.' parameters: - name: userId in: path description: 'TrainingCourseProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - notStarted - inProgress - completed style: form explode: false allowReserved: false - name: 'order[state]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[points]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[completedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-course/{trainingId}': get: operationId: TrainingCourseFind tags: - TrainingCourse responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingCourseAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel' summary: 'Retrieves a TrainingCourseAdminReadModel resource.' description: 'Retrieves a TrainingCourseAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingCourseAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: TrainingCourseUpdate tags: - TrainingCourse responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingCourseAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the TrainingCourseAdminReadModel resource.' description: 'Updates the TrainingCourseAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingCourseAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingCourseAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel.TrainingCourseUpdateApiBody' required: true deprecated: false '/api/v1/admin/training-course/{trainingId}/close': patch: operationId: TrainingCourseClose tags: - TrainingCourse responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingCourseAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Closes a TrainingCourse' description: 'Updates the TrainingCourseAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingCourseAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/admin/training-course/{trainingId}/open': patch: operationId: TrainingCourseOpen tags: - TrainingCourse responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingCourseAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingCourseAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Opens a TrainingCourse' description: 'Updates the TrainingCourseAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingCourseAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' /api/v1/learner/training-course: get: operationId: TrainingCourseSearchLearner tags: - TrainingCourse responses: 200: description: 'TrainingCourseLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingCourseLearnerReadModel' } } summary: 'Retrieves the collection of TrainingCourseLearnerReadModel resources.' description: 'Retrieves the collection of TrainingCourseLearnerReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: carousel in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - featured - inProgress - enrolled - favorites - recommended - soon - mandatory - novelties - custom style: form explode: false allowReserved: false - name: customCarouselId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'order[createdDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[startDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[endDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: true /api/v1/admin/training-event: get: operationId: TrainingEventSearch tags: - TrainingEvent responses: 200: description: 'TrainingEventAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingEventAdminReadModel' } } summary: 'Retrieves the collection of TrainingEventAdminReadModel resources.' description: 'Retrieves the collection of TrainingEventAdminReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: eventId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: dateStart in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: dateEnd in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: parentId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: isPublic in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - opened - planned - closed style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[state]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[dateStart]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[createdAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: TrainingEventCreate tags: - TrainingEvent responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'TrainingEventAdminReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a TrainingEventAdminReadModel resource.' description: 'Creates a TrainingEventAdminReadModel resource.' parameters: [] requestBody: description: 'The new TrainingEventAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventCreateApiBody' text/csv: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventCreateApiBody' required: true deprecated: false '/api/v1/admin/training-event/attendance/{userId}': get: operationId: TrainingEventAttendanceUserSearch tags: - TrainingEvent responses: 200: description: 'TrainingEventAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventAttendanceAdminUserReadModel' } } summary: 'Retrieves the collection of TrainingEventAdminReadModel resources.' description: 'Retrieves the collection of TrainingEventAdminReadModel resources.' parameters: - name: userId in: path description: 'TrainingEventAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: startDatetime in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: endDatetime in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: attendance in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - 'yes' - 'no' - undefined style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[attendance]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[timeInSeconds]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[startDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[endDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-event/{trainingId}': get: operationId: TrainingEventFind tags: - TrainingEvent responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEventAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel' summary: 'Retrieves a TrainingEventAdminReadModel resource.' description: 'Retrieves a TrainingEventAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEventAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: TrainingEventDelete tags: - TrainingEvent responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'TrainingEventAdminReadModel resource deleted' summary: 'Removes the TrainingEventAdminReadModel resource.' description: 'Removes the TrainingEventAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEventAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: TrainingEventUpdate tags: - TrainingEvent responses: 412: description: 'Precondition Failed' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEventAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the TrainingEventAdminReadModel resource.' description: 'Updates the TrainingEventAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEventAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingEventAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventUpdateApiBody' required: true deprecated: false x-extraResponses: 412: description: 'Precondition Failed' '/api/v1/admin/training-event/{trainingId}/attendance': get: operationId: TrainingEventAttendanceSearch tags: - TrainingEvent responses: 200: description: 'TrainingEventAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventAttendanceAdminReadModel' } } summary: 'Retrieves the collection of TrainingEventAdminReadModel resources.' description: 'Retrieves the collection of TrainingEventAdminReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingEventAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[attendance]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[timeInSeconds]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[enrolledAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-event/{trainingId}/attendance-report': get: operationId: TrainingEventAttendanceCsvReport tags: - TrainingEvent responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEventAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventAttendanceAdminCsvReadModel' application/pdf: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventAttendanceAdminCsvReadModel' text/csv: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventAttendanceAdminCsvReadModel' multipart/form-data: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventAttendanceAdminCsvReadModel' summary: 'Retrieves a TrainingEventAdminReadModel resource.' description: 'Retrieves a TrainingEventAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEventAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 200: description: 'Attendance report CSV' content: text/csv: schema: type: string '/api/v1/admin/training-event/{trainingId}/attendance/sync': patch: operationId: TrainingEventAttendanceSync tags: - TrainingEvent responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEventAttendance resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAttendance' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the TrainingEventAttendance resource.' description: 'Update attendance information based on Microsoft Teams Online Meeting attendance report (Async)' parameters: - name: trainingId in: path description: 'TrainingEventAttendance identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training-event/{trainingId}/attendance/{userId}': patch: operationId: TrainingEventAttendanceStore tags: - TrainingEvent responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEventAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the TrainingEventAdminReadModel resource.' description: 'Updates the TrainingEventAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEventAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: userId in: path description: 'TrainingEventAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingEventAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingEventAdminReadModel.TrainingEventAttendanceApiBody' required: true deprecated: false /api/v1/learner/training-event: get: operationId: TrainingEventLearnerSearch tags: - TrainingEvent responses: 200: description: 'TrainingEventDetailEnrolledLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { oneOf: [{ $ref: '#/components/schemas/TrainingEventDetailNotEnrolledLearnerReadModel' }, { $ref: '#/components/schemas/TrainingEventDetailEnrolledLearnerReadModel' }] } } summary: 'Retrieves the collection of TrainingEventDetailEnrolledLearnerReadModel resources.' description: 'Retrieves the collection of TrainingEventDetailEnrolledLearnerReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: true x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingEventDetailNotEnrolledLearnerReadModel - Netex\Component\Training\Domain\ReadModel\TrainingEventDetailEnrolledLearnerReadModel '/api/v1/learner/training-event/{trainingId}': get: operationId: TrainingEventLearnerFind tags: - TrainingEvent responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingEventDetailEnrolledLearnerReadModel resource' content: application/json: schema: oneOf: - { $ref: '#/components/schemas/TrainingEventDetailNotEnrolledLearnerReadModel' } - { $ref: '#/components/schemas/TrainingEventDetailEnrolledLearnerReadModel' } summary: 'Retrieves a TrainingEventDetailEnrolledLearnerReadModel resource.' description: 'Retrieves a TrainingEventDetailEnrolledLearnerReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingEventDetailEnrolledLearnerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-outputOneOf: - Netex\Component\Training\Domain\ReadModel\TrainingEventDetailNotEnrolledLearnerReadModel - Netex\Component\Training\Domain\ReadModel\TrainingEventDetailEnrolledLearnerReadModel /api/v1/admin/training-learning-program: get: operationId: TrainingLearningProgramSearch tags: - TrainingLearningProgram responses: 200: description: 'TrainingLearningProgramAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel' } } summary: 'Retrieves the collection of Training Learning Program resources.' description: 'Retrieves the collection of TrainingLearningProgramAdminReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: learningProgramId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: isPublic in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - opened - planned - closed style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[state]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: TrainingLearningProgramCreate tags: - TrainingLearningProgram responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'TrainingLearningProgramAdminReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a TrainingLearningProgramAdminReadModel resource.' description: 'Creates a TrainingLearningProgramAdminReadModel resource.' parameters: [] requestBody: description: 'The new TrainingLearningProgramAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel.TrainingLearningProgramCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel.TrainingLearningProgramCreateApiBody' text/csv: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel.TrainingLearningProgramCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel.TrainingLearningProgramCreateApiBody' required: true deprecated: false '/api/v1/admin/training-learning-program/progress/{userId}': get: operationId: TrainingLearningProgramUserProgress tags: - TrainingLearningProgram responses: 200: description: 'TrainingLearningProgramUserProgressReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingLearningProgramUserProgressReadModel' } } summary: 'Retrieves the collection of TrainingLearningProgramUserProgressReadModel resources.' description: 'Retrieves the collection of TrainingLearningProgramUserProgressReadModel resources.' parameters: - name: userId in: path description: 'TrainingLearningProgramUserProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - notStarted - inProgress - completed style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[state]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[completedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-learning-program/{trainingId}': get: operationId: TrainingLearningProgramFind tags: - TrainingLearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingLearningProgramAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel' summary: 'Retrieves a TrainingLearningProgramAdminReadModel resource.' description: 'Retrieves a TrainingLearningProgramAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false delete: operationId: TrainingLearningProgramDelete tags: - TrainingLearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'TrainingLearningProgramAdminReadModel resource deleted' summary: 'Removes the TrainingLearningProgramAdminReadModel resource.' description: 'Removes the TrainingLearningProgramAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: TrainingLearningProgramUpdate tags: - TrainingLearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingLearningProgramAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the TrainingLearningProgramAdminReadModel resource.' description: 'Updates the TrainingLearningProgramAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingLearningProgramAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel.TrainingLearningProgramUpdateApiBody' required: true deprecated: false '/api/v1/admin/training-learning-program/{trainingId}/close': patch: operationId: TrainingLearningProgramClose tags: - TrainingLearningProgram responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingLearningProgramAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Closes a TrainingLearningProgram' description: 'Updates the TrainingLearningProgramAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/admin/training-learning-program/{trainingId}/open': patch: operationId: TrainingLearningProgramOpen tags: - TrainingLearningProgram responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingLearningProgramAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Opens a TrainingLearningProgram' description: 'Updates the TrainingLearningProgramAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/admin/training-learning-program/{trainingId}/pathway-progress': get: operationId: TrainingLearningProgramProgressGroupByPathway tags: - TrainingLearningProgram responses: 200: description: 'TrainingLearningProgramAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel.TrainingLearningProgramProgressGroupByPathwayReadModel' } } summary: 'Retrieves the collection of Training Learning Program Progress Grouped by User.' description: 'Retrieves the collection of TrainingLearningProgramAdminReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-learning-program/{trainingId}/pathway/{pathwayId}/structure': get: operationId: TrainingLearningProgramPathwayStructure tags: - TrainingLearningProgram responses: 200: description: 'TrainingLearningProgramAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel.TrainingLearningProgramPathwayStructureReadModel' } } summary: 'Retrieves the collection of TrainingLearningProgramAdminReadModel resources.' description: 'Retrieves the collection of TrainingLearningProgramAdminReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: pathwayId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-learning-program/{trainingId}/user-progress': get: operationId: TrainingLearningProgramProgressGroupByUser tags: - TrainingLearningProgram responses: 200: description: 'TrainingLearningProgramAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingLearningProgramAdminReadModel.TrainingLearningProgramProgressGroupByUserReadModel' } } summary: 'Retrieves the collection of Training Learning Program Progress Grouped by User.' description: 'Retrieves the collection of TrainingLearningProgramAdminReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false /api/v1/learner/training-learning-program: get: operationId: LearningProgramLearnerTrainingCarousel tags: - TrainingLearningProgram responses: 200: description: 'TrainingLearningProgramLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingLearningProgramLearnerReadModel' } } summary: 'Retrieves the collection of TrainingLearningProgramLearnerReadModel resources.' description: 'Retrieves the collection of TrainingLearningProgramLearnerReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: 'order[startDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/learner/training-learning-program/{trainingId}': get: operationId: LearningProgramLearnerTrainingFind tags: - TrainingLearningProgram responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingLearningProgramLearnerReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingLearningProgramLearnerReadModel' summary: 'Retrieves a TrainingLearningProgramLearnerReadModel resource.' description: 'Retrieves a TrainingLearningProgramLearnerReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingLearningProgramLearnerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false /api/v1/admin/training-pathway: get: operationId: TrainingPathwaySearch tags: - TrainingPathway responses: 200: description: 'TrainingPathwayAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingPathwayAdminReadModel' } } summary: 'Retrieves the collection of Training Pathway resources.' description: 'Retrieves the collection of TrainingPathwayAdminReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: name in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: pathwayId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'startDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[after]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'endDate[before]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: isPublic in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - planned - opened - closed style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[state]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[startDate]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[endDate]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[createdAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[updatedAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[isPublic]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: TrainingPathwayCreate tags: - TrainingPathway responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'TrainingPathwayAdminReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Create a TrainingPathway' description: 'Creates a TrainingPathwayAdminReadModel resource.' parameters: [] requestBody: description: 'The new TrainingPathwayAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel.TrainingPathwayCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel.TrainingPathwayCreateApiBody' text/csv: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel.TrainingPathwayCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel.TrainingPathwayCreateApiBody' required: true deprecated: false '/api/v1/admin/training-pathway/progress/{userId}': get: operationId: TrainingPathwayProgress tags: - TrainingPathway responses: 200: description: 'TrainingPathwayProgressReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingPathwayProgressReadModel' } } summary: 'Retrieves the collection of TrainingPathwayProgressReadModel resources.' description: 'Retrieves the collection of TrainingPathwayProgressReadModel resources.' parameters: - name: userId in: path description: 'TrainingPathwayProgressReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: state in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - notStarted - inProgress - completed style: form explode: false allowReserved: false - name: 'order[state]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[name]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[progressPercentage]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-pathway/{trainingId}': get: operationId: TrainingPathwayFind tags: - TrainingPathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingPathwayAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel' summary: 'Retrieves a Training Pathway resource' description: 'Retrieves a TrainingPathwayAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingPathwayAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false patch: operationId: TrainingPathwayUpdate tags: - TrainingPathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingPathwayAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Update a TrainingPathway' description: 'Updates the TrainingPathwayAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingPathwayAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated TrainingPathwayAdminReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel.TrainingPathwayUpdateApiBody' required: true deprecated: false '/api/v1/admin/training-pathway/{trainingId}/close': patch: operationId: TrainingPathwayClose tags: - TrainingPathway responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingPathwayAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Closes a TrainingPathway' description: 'Updates the TrainingPathwayAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingPathwayAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/admin/training-pathway/{trainingId}/open': patch: operationId: TrainingPathwayOpen tags: - TrainingPathway responses: 403: description: 'Unauthorized access' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingPathwayAdminReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayAdminReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Opens a TrainingPathway' description: 'Updates the TrainingPathwayAdminReadModel resource.' parameters: - name: trainingId in: path description: 'TrainingPathwayAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized access' '/api/v1/admin/training-pathway/{trainingId}/progress': get: operationId: TrainingPathwayUserProgress tags: - TrainingPathway responses: 200: description: 'TrainingPathwayAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingPathwayAdminReadModel.TrainingPathwayAdminUserProgressReadModel' } } summary: 'Retrieves the collection of TrainingPathwayAdminReadModel resources.' description: 'Retrieves the collection of TrainingPathwayAdminReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingPathwayAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: active in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: groupIds in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'groupIds[]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: array items: type: string style: form explode: true allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-pathway/{trainingId}/structure': get: operationId: TrainingPathwayStructure tags: - TrainingPathway responses: 200: description: 'TrainingPathwayAdminReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingPathwayAdminReadModel.TrainingPathwayStructureReadModel' } } summary: 'Retrieves the collection of TrainingPathwayAdminReadModel resources.' description: 'Retrieves the collection of TrainingPathwayAdminReadModel resources.' parameters: - name: trainingId in: path description: 'TrainingPathwayAdminReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false deprecated: false /api/v1/learner/training-pathway: get: operationId: TrainingPathwaySearchLearner tags: - TrainingPathway responses: 200: description: 'TrainingPathwayLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingPathwayLearnerReadModel' } } summary: 'Retrieves the collection of TrainingPathwayLearnerReadModel resources.' description: 'Retrieves the collection of TrainingPathwayLearnerReadModel resources.' parameters: - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: search in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: carousel in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - featured - enrolled - recommended - custom style: form explode: false allowReserved: false - name: customCarouselId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: 'order[createdDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[startDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false - name: 'order[endDatetime]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: true '/api/v1/learner/training-pathway/{trainingId}': get: operationId: TrainingPathway tags: - TrainingPathway responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'TrainingPathwayDetailLearnerReadModel resource' content: application/json: schema: $ref: '#/components/schemas/TrainingPathwayDetailLearnerReadModel' summary: 'Retrieves a TrainingPathwayDetailLearnerReadModel resource.' description: 'Retrieves a TrainingPathwayDetailLearnerReadModel resource.' parameters: - name: langCode in: query description: 'Language used to display translatable data' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - bg - cs - de - el - en - es - fr - gl - hu - it - ja - nl - pl - pt - ro - ru - sk - sl - tr - zh_CN - zh_HK - ko style: form explode: false allowReserved: false - name: pathwayId in: query description: 'Pathway identifier to get training data' required: true deprecated: false allowEmptyValue: false schema: [] style: form explode: false allowReserved: false - name: trainingId in: path description: 'TrainingPathwayDetailLearnerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/training-pathway/{trainingId}/resource': get: operationId: TrainingPathwayFindResources tags: - TrainingPathway responses: 200: description: 'TrainingPathwayDetailLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingPathwayDetailLearnerReadModel.TrainingPathwayResourceReadModel' } } summary: 'Retrieves the collection of TrainingPathwayDetailLearnerReadModel resources.' description: 'Retrieves the collection of TrainingPathwayDetailLearnerReadModel resources.' parameters: - name: pathwayId in: query description: 'Pathway identifier to get training data' required: true deprecated: false allowEmptyValue: false schema: [] style: form explode: false allowReserved: false - name: trainingId in: path description: 'TrainingPathwayDetailLearnerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/training-pathway/{trainingId}/stage': get: operationId: TrainingPathwayFindStages tags: - TrainingPathway responses: 200: description: 'TrainingPathwayDetailLearnerReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/TrainingPathwayDetailLearnerReadModel.TrainingPathwayStageReadModel' } } summary: 'Retrieves the collection of TrainingPathwayDetailLearnerReadModel resources.' description: 'Retrieves the collection of TrainingPathwayDetailLearnerReadModel resources.' parameters: - name: langCode in: path description: 'Language used to display translatable data' required: true deprecated: false allowEmptyValue: false schema: type: string enum: - bg - cs - de - el - en - es - fr - gl - hu - it - ja - nl - pl - pt - ro - ru - sk - sl - tr - zh_CN - zh_HK - ko style: simple explode: false allowReserved: false - name: pathwayId in: query description: 'Pathway identifier to get training data' required: true deprecated: false allowEmptyValue: false schema: [] style: form explode: false allowReserved: false - name: trainingId in: path description: 'TrainingPathwayDetailLearnerReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training-tutorship/message/{messageId}': delete: operationId: MessageTutorshipDeleteAdmin tags: - Tutorship responses: 403: description: 'Unauthorized request' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'MessageTutorshipReadModel resource deleted' summary: 'Removes the MessageTutorshipReadModel resource.' description: 'Removes the MessageTutorshipReadModel resource.' parameters: - name: messageId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized request' patch: operationId: MessageTutorshipUpdateAdmin tags: - Tutorship responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'MessageTutorshipReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the MessageTutorshipReadModel resource.' description: 'Updates the MessageTutorshipReadModel resource.' parameters: - name: messageId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated MessageTutorshipReadModel resource' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipAdminUpdateApiBody' required: true deprecated: false '/api/v1/admin/training-tutorship/{trainingId}/availability': get: operationId: MessageTutorshipAdminAvailability tags: - Tutorship responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'MessageTutorshipReadModel resource' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipAvailabilityReadModel' summary: 'Retrieves a MessageTutorshipReadModel resource.' description: 'Retrieves a MessageTutorshipReadModel resource.' parameters: - name: trainingId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/admin/training-tutorship/{trainingId}/message': get: operationId: MessageTutorshipSearchAdmin tags: - Tutorship responses: 200: description: 'MessageTutorshipReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/MessageTutorshipReadModel' } } summary: 'Retrieves the collection of MessageTutorshipReadModel resources.' description: 'Retrieves the collection of MessageTutorshipReadModel resources.' parameters: - name: trainingId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: learnerId in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string style: form explode: false allowReserved: false - name: lastLearnerMessage in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: boolean style: form explode: false allowReserved: false - name: 'order[createdAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false '/api/v1/admin/training-tutorship/{trainingId}/message/{learnerId}': post: operationId: MessageTutorshipCreateAdmin tags: - Tutorship responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'MessageTutorshipReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a MessageTutorshipReadModel resource.' description: 'Creates a MessageTutorshipReadModel resource.' parameters: - name: trainingId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: learnerId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new MessageTutorshipReadModel resource' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipAdminCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipAdminCreateApiBody' text/csv: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipAdminCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipAdminCreateApiBody' required: true deprecated: false '/api/v1/admin/training-tutorship/{trainingId}/message/{learnerId}/read': patch: operationId: MessageTutorshipReadAdmin tags: - Tutorship responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'No content' summary: 'Updates the MessageTutorshipReadModel resource.' description: 'Updates the MessageTutorshipReadModel resource.' parameters: - name: trainingId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: learnerId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/training-tutorship/message/{messageId}': delete: operationId: MessageTutorshipDeleteLearner tags: - Tutorship responses: 403: description: 'Unauthorized request' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 204: description: 'MessageTutorshipReadModel resource deleted' summary: 'Removes the MessageTutorshipReadModel resource.' description: 'Removes the MessageTutorshipReadModel resource.' parameters: - name: messageId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false x-extraResponses: 403: description: 'Unauthorized request' patch: operationId: MessageTutorshipUpdateLearner tags: - Tutorship responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'MessageTutorshipReadModel resource updated' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Updates the MessageTutorshipReadModel resource.' description: 'Updates the MessageTutorshipReadModel resource.' parameters: - name: messageId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The updated MessageTutorshipReadModel resource' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipLearnerUpdateApiBody' required: true deprecated: false '/api/v1/learner/training-tutorship/{trainingId}/availability': get: operationId: MessageTutorshipLearnerAvailability tags: - Tutorship responses: 404: description: 'Resource not found' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 200: description: 'MessageTutorshipReadModel resource' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipAvailabilityReadModel' summary: 'Retrieves a MessageTutorshipReadModel resource.' description: 'Retrieves a MessageTutorshipReadModel resource.' parameters: - name: trainingId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false deprecated: false '/api/v1/learner/training-tutorship/{trainingId}/message': get: operationId: MessageTutorshipSearchLearner tags: - Tutorship responses: 200: description: 'MessageTutorshipReadModel collection' content: application/json: schema: type: object properties: itemsPerPage: { type: integer } currentPage: { type: integer } results: { type: array, items: { $ref: '#/components/schemas/MessageTutorshipReadModel' } } summary: 'Retrieves the collection of MessageTutorshipReadModel resources.' description: 'Retrieves the collection of MessageTutorshipReadModel resources.' parameters: - name: trainingId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false - name: page in: query description: 'The collection page number' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 1 style: form explode: false allowReserved: false - name: itemsPerPage in: query description: 'The number of items per page' required: false deprecated: false allowEmptyValue: true schema: type: integer default: 20 minimum: 0 style: form explode: false allowReserved: false - name: 'order[createdAt]' in: query description: '' required: false deprecated: false allowEmptyValue: false schema: type: string enum: - asc - desc style: form explode: false allowReserved: false deprecated: false post: operationId: MessageTutorshipCreateLearner tags: - Tutorship responses: 400: description: 'Invalid input' content: application/problem+json: schema: type: object properties: type: { type: string } title: { type: string } detail: { type: string } violations: { type: string } errorCode: { type: string } required: - type - title - detail 201: description: 'MessageTutorshipReadModel resource created' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel' headers: X-Async-Context-Id: type: string description: 'Async processes context ID' links: { } summary: 'Creates a MessageTutorshipReadModel resource.' description: 'Creates a MessageTutorshipReadModel resource.' parameters: - name: trainingId in: path description: 'MessageTutorshipReadModel identifier' required: true deprecated: false allowEmptyValue: false schema: type: string style: simple explode: false allowReserved: false requestBody: description: 'The new MessageTutorshipReadModel resource' content: application/json: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipLearnerCreateApiBody' application/pdf: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipLearnerCreateApiBody' text/csv: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipLearnerCreateApiBody' multipart/form-data: schema: $ref: '#/components/schemas/MessageTutorshipReadModel.MessageTutorshipLearnerCreateApiBody' required: true deprecated: false components: schemas: AsyncLog: type: object description: '' deprecated: false properties: id: type: string command: type: string commandHandler: type: string contextId: type: - string - 'null' state: type: string createdDatetime: type: string format: date-time updatedDatetime: type: string format: date-time AuthorDiplomaLearningProgramApiBody: type: object description: '' deprecated: false required: - version - id properties: version: maxLength: 255 type: - string - 'null' id: maxLength: 255 format: uuid externalDocs: url: 'https://schema.org/identifier' type: - string - 'null' Award: type: object description: '' deprecated: false properties: points: type: number position: type: integer Award.AwardBadgeCreateApiBody: type: object description: '' deprecated: false required: - badgeId properties: badgeId: type: string awardedAt: type: - string - 'null' format: date-time Award.AwardBadgeUpdateApiBody: type: object description: '' deprecated: false required: - awardedAt properties: awardedAt: type: string format: date-time Award.AwardPointCreateApiBody: type: object description: '' deprecated: false properties: points: exclusiveMinimum: 0 type: number Badge: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: string criteria: type: string images: type: array items: $ref: '#/components/schemas/Badge.BadgeImageEmbedReadModel' issuerName: type: string issuerUrl: type: string theme: type: string updatedAt: type: - string - 'null' format: date-time createdBy: type: - string - 'null' Badge.BadgeCreateApiBody: type: object description: '' deprecated: false required: - name - description - criteria - issuerName - issuerUrl - theme properties: name: type: string description: type: string criteria: type: string issuerName: type: string issuerUrl: type: string theme: type: string Badge.BadgeImageEmbedReadModel: type: object description: '' deprecated: false properties: url: type: string width: type: - integer - 'null' height: type: - integer - 'null' Badge.BadgeUpdateApiBody: type: object description: '' deprecated: false required: - name properties: name: type: string description: type: string criteria: type: string issuerName: type: string issuerUrl: type: string theme: type: string BadgeEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string BadgeHolder: type: object description: '' deprecated: false properties: id: type: string holder: $ref: '#/components/schemas/BadgeHolderUserEmbedReadModel' badge: $ref: '#/components/schemas/BadgeHolderBadgeEmbedReadModel' awardedAt: type: string format: date-time BadgeHolderBadgeEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string images: type: array items: $ref: '#/components/schemas/Badge.BadgeImageEmbedReadModel' BadgeHolderUserEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: string lastname: type: string BadgeImageEmbedReadModel: type: object description: '' deprecated: false properties: url: type: string width: type: - integer - 'null' height: type: - integer - 'null' BatchRequest: type: object description: '' deprecated: false properties: responses: type: array items: $ref: '#/components/schemas/BatchResponseItemReadModel' BatchRequest.BatchRequestCollectionApiBody: type: object description: '' deprecated: false properties: requests: minItems: 1 maxItems: 50 type: array items: $ref: '#/components/schemas/BatchRequestItemApiBody' BatchRequestDeclarationApiBody: type: object description: '' deprecated: false required: - varName - jsonPathPattern properties: varName: type: string jsonPathPattern: type: string BatchRequestItemApiBody: type: object description: '' deprecated: false required: - method - url properties: method: type: string url: type: string body: type: object declares: type: array items: $ref: '#/components/schemas/BatchRequestDeclarationApiBody' uses: type: array items: type: string BatchResponseItemHeaderEmbedReadModel: type: object description: '' deprecated: false properties: key: type: string value: type: string BatchResponseItemReadModel: type: object description: '' deprecated: false properties: status: type: integer body: type: array items: type: string headers: type: array items: $ref: '#/components/schemas/BatchResponseItemHeaderEmbedReadModel' Carousel: type: object description: '' deprecated: false Carousel.CarouselCreateApiBody: type: object description: '' deprecated: false required: - name properties: name: type: string Carousel.CarouselMoveApiBody: type: object description: '' deprecated: false required: - afterCarouselId properties: afterCarouselId: type: string Carousel.CarouselTranslationUpdateApiBody: type: object description: '' deprecated: false required: - value properties: value: type: string Carousel.CarouselUpdateApiBody: type: object description: '' deprecated: false required: - name - active properties: name: maxLength: 255 type: string active: type: boolean CatalogEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string Certificate: type: object description: '' deprecated: false properties: id: type: string userId: type: string trainingId: type: string url: type: string emittedAt: type: string format: date-time Certificate.CertificateCourseReadModel: type: object description: '' deprecated: false properties: trainingId: type: string name: type: string type: type: string issueDate: type: string format: date-time Certificate.TemplateReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string preview: type: string properties: type: array items: type: string CourseEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' CourseProgressReadModel: type: object description: '' deprecated: false properties: trainingId: type: string courseId: type: string userId: type: string totalPoints: type: integer totalSessions: type: integer totalSessionTime: type: integer completed: type: boolean validated: type: boolean validationType: type: - string - 'null' completedAt: type: - string - 'null' format: date-time CourseProgressReadModel.CourseCompleteApiBody: type: object description: '' deprecated: false required: - totalPoints - totalSessionTime - completedAt - sendBadgeNotifications properties: totalPoints: minimum: 0 type: integer totalSessionTime: minimum: 0 type: integer completedAt: type: string format: date-time sendBadgeNotifications: type: boolean CourseReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' state: type: - string - 'null' catalogs: type: array items: $ref: '#/components/schemas/CatalogEmbedReadModel' createdAt: type: - string - 'null' format: date-time createdBy: anyOf: - $ref: '#/components/schemas/CreatedByEmbedReadModel' - type: 'null' updatedAt: type: - string - 'null' format: date-time updatedBy: anyOf: - $ref: '#/components/schemas/UpdatedByEmbedReadModel' - type: 'null' estimatedTimeInMinutes: type: - integer - 'null' assesable: type: boolean cutoffGrade: type: - integer - 'null' points: type: - integer - 'null' defaultLocale: type: - string - 'null' locked: type: - boolean - 'null' visible: type: - boolean - 'null' imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' badgeId: type: - string - 'null' tags: type: array items: $ref: '#/components/schemas/TagEmbedReadModel' CourseReadModel.CourseStoreCreateApiBody: type: object description: '' deprecated: false required: - name properties: name: maxLength: 500 type: string description: maxLength: 900 type: - string - 'null' assessable: type: - boolean - 'null' cutoffGrade: minimum: 0 type: - integer - 'null' points: minimum: 0 type: - integer - 'null' locale: type: - string - 'null' badgeId: pattern: '^([a-f\d]{24})$' type: - string - 'null' estimatedTimeInMinutes: minimum: 0 type: - integer - 'null' catalogIds: type: array items: type: string tagNames: type: array items: type: string CourseReadModel.CourseUpdateApiBody: type: object description: '' deprecated: false properties: name: maxLength: 500 type: - string - 'null' description: maxLength: 900 type: - string - 'null' assessable: type: - boolean - 'null' cutoffGrade: minimum: 0 type: - integer - 'null' points: minimum: 0 type: - integer - 'null' locale: type: - string - 'null' badgeId: pattern: '^([a-f\d]{24})$' type: - string - 'null' estimatedTimeInMinutes: minimum: 0 type: - integer - 'null' catalogIds: type: array items: type: string tagNames: type: array items: type: string CourseReportReadModel: type: object description: '' deprecated: false properties: trainingId: type: string courseId: type: string course: type: string courseCover: type: string training: type: string startDate: type: - string - 'null' format: date-time endDate: type: - string - 'null' format: date-time state: type: string avgSessionTime: type: integer avgSessionsPerWeek: type: number notStarted: type: integer inProgress: type: integer completed: type: integer extendedFields: type: array items: type: string CreatedBy: type: object description: '' deprecated: false properties: id: type: string username: type: string CreatedByEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: - string - 'null' CustomerLiteral: type: object description: '' deprecated: false properties: customerLiterals: type: array items: $ref: '#/components/schemas/CustomerLiteralValues' CustomerLiteral.CustomerLiteralUpdateApiBody: type: object description: '' deprecated: false required: - customerLiterals properties: customerLiterals: type: array items: $ref: '#/components/schemas/CustomerLiteralEmbedApiBody' CustomerLiteralEmbedApiBody: type: object description: '' deprecated: false required: - language - translation - type properties: language: type: string translation: type: string type: enum: - course - pathway type: string CustomerLiteralValues: type: object description: '' deprecated: false properties: language: type: string translation: type: string type: type: string CustomerReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string active: type: boolean DiplomaApiBody: type: object description: '' deprecated: false required: - id - type properties: id: maxLength: 255 format: uuid externalDocs: url: 'https://schema.org/identifier' type: - string - 'null' type: enum: - Author - Legacy type: string Domain.ReadModel.UserEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: - string - 'null' avatarUrl: type: - string - 'null' Event.CatalogEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string Event.TagEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string EventDocumentReadModel: type: object description: '' deprecated: false properties: id: type: string documentUrl: type: string EventEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' EventExtendedFieldApiBody: type: object description: '' deprecated: false required: - id - value properties: id: pattern: '^([a-f\d]{36})$' type: - string - 'null' value: oneOf: - type: string - type: int EventExtendedFieldReadModel: type: object description: '' deprecated: false properties: id: type: string type: type: string name: type: string value: oneOf: - type: - string - 'null' format: date-time - type: - string - 'null' - type: - integer - 'null' EventReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' status: type: string imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' catalogs: type: - array - 'null' items: $ref: '#/components/schemas/Event.CatalogEmbedReadModel' tags: type: - array - 'null' items: $ref: '#/components/schemas/Event.TagEmbedReadModel' files: type: - array - 'null' items: $ref: '#/components/schemas/EventDocumentReadModel' extendedFields: type: - array - 'null' items: $ref: '#/components/schemas/EventExtendedFieldReadModel' createdAt: type: string format: date-time updatedAt: type: - string - 'null' format: date-time createdBy: anyOf: - $ref: '#/components/schemas/CreatedBy' - type: 'null' updatedBy: anyOf: - $ref: '#/components/schemas/UpdatedBy' - type: 'null' EventReadModel.CreatedBy: type: object description: '' deprecated: false properties: id: type: string username: type: string EventReadModel.EventCreateApiBody: type: object description: '' deprecated: false required: - name properties: name: type: string description: type: - string - 'null' tagNames: type: - array - 'null' items: type: string catalogIds: type: - array - 'null' items: type: string extendedFields: type: - array - 'null' items: $ref: '#/components/schemas/EventExtendedFieldApiBody' EventReadModel.EventUpdateApiBody: type: object description: '' deprecated: false required: - name - description properties: name: type: string description: type: string tagNames: type: array items: type: string catalogIds: type: array items: type: string extendedFields: type: array items: $ref: '#/components/schemas/EventExtendedFieldApiBody' EventReadModel.TagEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string ExtendedField: type: object description: '' deprecated: false properties: type: default: String example: String type: string id: type: string internalId: type: string name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldCourseDateCreateApiBody: type: object description: '' deprecated: false required: - name - defaultValue - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: string format: date-time searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldCourseDateUpdateApiBody: type: object description: '' deprecated: false required: - name - defaultValue - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' format: date-time searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldCourseEnumCreateApiBody: type: object description: '' deprecated: false required: - name - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' possibleValues: type: - array - 'null' items: type: string searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldCourseEnumUpdateApiBody: type: object description: '' deprecated: false required: - name - searchable - required properties: name: type: string description: type: - string - 'null' possibleValues: type: - array - 'null' items: type: string defaultValue: type: - string - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldCourseNumberCreateApiBody: type: object description: '' deprecated: false required: - name - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: - integer - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldCourseNumberUpdateApiBody: type: object description: '' deprecated: false required: - name - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: - integer - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldCourseStringCreateApiBody: type: object description: '' deprecated: false required: - name - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldCourseStringUpdateApiBody: type: object description: '' deprecated: false required: - name - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldDateCourseReadModel: type: object description: '' deprecated: false properties: type: default: Date example: Date type: string id: type: string internalId: type: string name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' format: date-time searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldDateEventReadModel: type: object description: '' deprecated: false properties: type: default: Date example: Date type: string id: type: string name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' format: date-time searchable: type: - boolean - 'null' required: type: - boolean - 'null' ExtendedField.ExtendedFieldEnumCourseReadModel: type: object description: '' deprecated: false properties: type: default: Enumerated example: Enumerated type: string id: type: string internalId: type: string name: type: string description: type: - string - 'null' searchable: type: boolean required: type: boolean defaultValue: type: - string - 'null' possibleValues: type: - array - 'null' items: type: string ExtendedField.ExtendedFieldEnumEventReadModel: type: object description: '' deprecated: false properties: type: default: Enumerated example: Enumerated type: string id: type: string name: type: string description: type: - string - 'null' searchable: type: - boolean - 'null' required: type: - boolean - 'null' defaultValue: type: - string - 'null' possibleValues: type: - array - 'null' items: type: string ExtendedField.ExtendedFieldMasterEventDateCreateApiBody: type: object description: '' deprecated: false required: - name - defaultValue - searchable properties: name: type: string description: type: - string - 'null' defaultValue: type: string format: date-time searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldMasterEventDateUpdateApiBody: type: object description: '' deprecated: false required: - name - searchable properties: name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' format: date-time searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldMasterEventEnumCreateApiBody: type: object description: '' deprecated: false required: - name - searchable properties: name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' possibleValues: type: - array - 'null' items: type: string searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldMasterEventEnumUpdateApiBody: type: object description: '' deprecated: false required: - name - searchable properties: name: type: string description: type: - string - 'null' possibleValues: type: - array - 'null' items: type: string searchable: type: boolean required: type: boolean defaultValue: type: - string - 'null' ExtendedField.ExtendedFieldMasterEventNumberCreateApiBody: type: object description: '' deprecated: false required: - name - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: - integer - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldMasterEventNumberUpdateApiBody: type: object description: '' deprecated: false required: - name - searchable - required properties: name: type: string description: type: - string - 'null' defaultValue: type: - integer - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldMasterEventStringCreateApiBody: type: object description: '' deprecated: false required: - name - searchable properties: name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldMasterEventStringUpdateApiBody: type: object description: '' deprecated: false required: - name - searchable properties: name: type: string description: type: - string - 'null' searchable: type: boolean required: type: boolean defaultValue: type: - string - 'null' ExtendedField.ExtendedFieldNumberCourseReadModel: type: object description: '' deprecated: false properties: type: default: Number example: Number type: string id: type: string internalId: type: string name: type: string description: type: - string - 'null' defaultValue: type: - integer - 'null' searchable: type: boolean required: type: boolean ExtendedField.ExtendedFieldNumberEventReadModel: type: object description: '' deprecated: false properties: type: default: Number example: Number type: string id: type: string name: type: string description: type: - string - 'null' defaultValue: type: - integer - 'null' searchable: type: - boolean - 'null' required: type: - boolean - 'null' ExtendedField.ExtendedFieldStringEventReadModel: type: object description: '' deprecated: false properties: type: default: String example: String type: string id: type: string name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' searchable: type: - boolean - 'null' required: type: - boolean - 'null' ExtendedFieldReadModel: type: object description: '' deprecated: false properties: id: type: string eventId: type: string extendedFieldMasterEventId: type: string createdAt: type: string format: date-time updatedAt: type: string format: date-time ExtendedFieldsApiBody: type: object description: '' deprecated: false properties: id: format: uuid externalDocs: url: 'https://schema.org/identifier' type: string value: type: string GroupCustomerEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string GroupReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string customer: $ref: '#/components/schemas/GroupCustomerEmbedReadModel' GroupUserCustomerEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string GroupUserGroupEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string GroupUserReadModel: type: object description: '' deprecated: false properties: id: type: string customer: $ref: '#/components/schemas/GroupUserCustomerEmbedReadModel' group: $ref: '#/components/schemas/GroupUserGroupEmbedReadModel' user: $ref: '#/components/schemas/GroupUserUserEmbedReadModel' GroupUserUserEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string Ia.Coach.Courses.Indexed: type: object description: '' deprecated: false properties: id: type: string name: type: string Ia.Coach.Training.for.Course: type: object description: '' deprecated: false properties: trainingId: type: string ImageReadModel: type: object description: '' deprecated: false properties: url: type: string width: type: - integer - 'null' height: type: - integer - 'null' LearningProgramBadgeEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string image: type: - string - 'null' LearningProgramCatalogEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string LearningProgramContentEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string state: type: string LearningProgramEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: string imageUrl: type: - string - 'null' LearningProgramPathwayEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string state: type: string imageUrl: type: - string - 'null' locale: type: - string - 'null' LearningProgramPathwayReadModel: type: object description: '' deprecated: false properties: id: type: string pathway: $ref: '#/components/schemas/LearningProgramPathwayEmbedReadModel' required: type: boolean sort: type: integer deletable: type: boolean requirements: $ref: '#/components/schemas/LearningProgramPathwayRequirementsReadModel' LearningProgramPathwayRequiredBadgeEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string image: type: - string - 'null' LearningProgramPathwayRequiredPathwayEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string LearningProgramPathwayRequirementsReadModel: type: object description: '' deprecated: false properties: badges: type: array items: $ref: '#/components/schemas/LearningProgramPathwayRequiredBadgeEmbedReadModel' pathways: type: array items: $ref: '#/components/schemas/LearningProgramPathwayRequiredPathwayEmbedReadModel' LearningProgramPathwayTreeStructureEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string state: type: string stages: type: array items: $ref: '#/components/schemas/LearningProgramStageCourseTreeStructureEmbedReadModel' LearningProgramReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: string state: type: string locale: type: - string - 'null' estimatedTime: type: - integer - 'null' createdBy: anyOf: - $ref: '#/components/schemas/LearningProgramUserEmbedReadModel' - type: 'null' createdAt: type: string format: date-time updatedBy: anyOf: - $ref: '#/components/schemas/LearningProgramUserEmbedReadModel' - type: 'null' updatedAt: type: string format: date-time badge: anyOf: - $ref: '#/components/schemas/LearningProgramBadgeEmbedReadModel' - type: 'null' publishedBy: anyOf: - $ref: '#/components/schemas/LearningProgramUserEmbedReadModel' - type: 'null' publishedAt: type: - string - 'null' format: date-time coverImageUrl: type: - string - 'null' catalogs: type: array items: $ref: '#/components/schemas/LearningProgramCatalogEmbedReadModel' indexForAICoach: type: - boolean - 'null' LearningProgramReadModel.CreatedBy: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: string lastname: type: string LearningProgramReadModel.LearningProgramCreateApiBody: type: object description: '' deprecated: false required: - name - description properties: name: maxLength: 500 type: string description: maxLength: 500 type: string locale: enum: - es - en - gl - ca - bg - cs - zh-CN - zh-HK - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-BR - ro - ru - tr - uk type: - string - 'null' estimatedTime: minimum: 0 type: - integer - 'null' catalogIds: type: array items: type: string badgeId: type: - string - 'null' indexForAICoach: type: boolean LearningProgramReadModel.LearningProgramPathwayIncludeApiBody: type: object description: '' deprecated: false required: - pathwayId properties: pathwayId: pattern: '^([a-f\d]{24})$' type: string LearningProgramReadModel.LearningProgramPathwayMoveApiBody: type: object description: '' deprecated: false properties: beforePathwayId: pattern: '^([a-f\d]{24})$' type: - string - 'null' LearningProgramReadModel.LearningProgramPathwayReadModel: type: object description: '' deprecated: false properties: id: type: string pathway: $ref: '#/components/schemas/LearningProgramPathwayEmbedReadModel' required: type: boolean sort: type: integer deletable: type: boolean requirements: $ref: '#/components/schemas/LearningProgramPathwayRequirementsReadModel' LearningProgramReadModel.LearningProgramPathwayUpdateApiBody: type: object description: '' deprecated: false required: - required properties: required: type: boolean LearningProgramReadModel.LearningProgramStructureReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string state: type: string locale: type: - string - 'null' structure: type: array items: $ref: '#/components/schemas/LearningProgramPathwayReadModel' LearningProgramReadModel.LearningProgramTranslationUpdateApiBody: type: object description: '' deprecated: false required: - value properties: value: type: string LearningProgramReadModel.LearningProgramTreeStructureReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string state: type: string pathways: type: array items: $ref: '#/components/schemas/LearningProgramPathwayTreeStructureEmbedReadModel' LearningProgramReadModel.LearningProgramUpdateApiBody: type: object description: '' deprecated: false required: - name - description properties: name: maxLength: 500 type: string description: maxLength: 500 type: string locale: enum: - es - en - gl - ca - bg - cs - zh-CN - zh-HK - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-BR - ro - ru - tr - uk type: - string - 'null' estimatedTime: minimum: 0 type: - integer - 'null' catalogIds: type: array items: type: string badgeId: type: - string - 'null' indexForAICoach: type: boolean LearningProgramReadModel.TranslationReadModel: type: object description: '' deprecated: false properties: field: type: string locale: type: string value: type: - string - 'null' LearningProgramStageCourseTreeStructureEmbedReadModel: type: object description: '' deprecated: false properties: key: type: integer name: type: string courses: type: array items: $ref: '#/components/schemas/LearningProgramContentEmbedReadModel' LearningProgramUserEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: - string - 'null' lastname: type: - string - 'null' LearningSessionActivityReadModel: type: object description: '' deprecated: false properties: id: type: string startDate: type: string format: date-time endDate: type: string format: date-time durationInSeconds: type: integer LearningSessionReadModel: type: object description: '' deprecated: false properties: sessionId: type: string trainingId: type: string sprintId: type: string startDate: type: string format: date-time endDate: type: string format: date-time durationInSeconds: type: integer state: type: string activities: type: array items: $ref: '#/components/schemas/LearningSessionActivityReadModel' LearningSessionReadModel.LearningSessionEventReadModel: type: object description: '' deprecated: false properties: id: type: string event: type: string payload: type: array items: type: string LearningSessionReadModel.LearningSessionOpenApiBody: type: object description: '' deprecated: false properties: trainingId: pattern: '^(.*(^([a-f\d]{24}|[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12})$).*)$' type: string sprintId: pattern: '^([a-f\d]{24})$' type: string MessageTutorshipReadModel: type: object description: '' deprecated: false properties: id: type: string trainingId: type: string content: type: string isRead: type: boolean owner: $ref: '#/components/schemas/OwnerEmbedReadModel' createdAt: type: string format: date-time updatedAt: type: string format: date-time MessageTutorshipReadModel.MessageTutorshipAdminCreateApiBody: type: object description: '' deprecated: false required: - content properties: content: maxLength: 1000 type: string MessageTutorshipReadModel.MessageTutorshipAdminUpdateApiBody: type: object description: '' deprecated: false required: - content properties: content: maxLength: 1000 type: string MessageTutorshipReadModel.MessageTutorshipAvailabilityReadModel: type: object description: '' deprecated: false properties: isEnabled: type: boolean MessageTutorshipReadModel.MessageTutorshipLearnerCreateApiBody: type: object description: '' deprecated: false required: - content properties: content: maxLength: 1000 type: string MessageTutorshipReadModel.MessageTutorshipLearnerUpdateApiBody: type: object description: '' deprecated: false required: - content properties: content: maxLength: 1000 type: string OrderEmbedApiBody: type: object description: '' deprecated: false required: - key - order properties: key: type: string order: enum: - asc - desc type: string OwnerEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: - string - 'null' lastname: type: - string - 'null' imageUrl: type: - string - 'null' Pathway.CatalogEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string PathwayContentReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string image: type: - string - 'null' type: type: string state: type: string order: type: integer stageId: type: integer stageName: type: - string - 'null' translations: type: - array - 'null' items: type: string required: type: boolean requirements: $ref: '#/components/schemas/PathwayContentRequirementsReadModel' defaultLocale: type: - string - 'null' PathwayContentRequiredBadgeEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string images: type: array items: $ref: '#/components/schemas/ImageReadModel' PathwayContentRequiredCourseEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string PathwayContentRequirementsReadModel: type: object description: '' deprecated: false properties: badges: type: array items: $ref: '#/components/schemas/PathwayContentRequiredBadgeEmbedReadModel' courses: type: array items: $ref: '#/components/schemas/PathwayContentRequiredCourseEmbedReadModel' PathwayEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' PathwayReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' state: type: string badges: type: array items: $ref: '#/components/schemas/BadgeEmbedReadModel' defaultLang: type: - string - 'null' createdBy: anyOf: - $ref: '#/components/schemas/UserEmbedReadModel' - type: 'null' createdAt: type: string format: date-time updatedBy: anyOf: - $ref: '#/components/schemas/UserEmbedReadModel' - type: 'null' updatedAt: type: - string - 'null' format: date-time publishedBy: anyOf: - $ref: '#/components/schemas/UserEmbedReadModel' - type: 'null' publishedAt: type: - string - 'null' format: date-time catalogs: type: array items: $ref: '#/components/schemas/Pathway.CatalogEmbedReadModel' images: type: array items: $ref: '#/components/schemas/ImageReadModel' estimatedTime: type: - integer - 'null' extendedFields: type: array items: $ref: '#/components/schemas/ExtendedFieldReadModel' PathwayReadModel.PathwayContentMoveApiBody: type: object description: '' deprecated: false properties: beforeContentId: type: - string - 'null' stage: type: integer required: - stage PathwayReadModel.PathwayContentReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string image: type: - string - 'null' type: type: string state: type: string order: type: integer stageId: type: integer stageName: type: - string - 'null' translations: type: - array - 'null' items: type: string required: type: boolean requirements: $ref: '#/components/schemas/PathwayContentRequirementsReadModel' defaultLocale: type: - string - 'null' PathwayReadModel.PathwayCourseCreateApiBody: type: object description: '' deprecated: false required: - contentId properties: contentId: pattern: '^([a-f\d]{24})$' type: string PathwayReadModel.PathwayCreateApiBody: type: object description: '' deprecated: false required: - name properties: name: maxLength: 500 type: string description: maxLength: 1000 type: - string - 'null' defaultLang: enum: - null - es - en - gl - ca - bg - cs - zh-CN - zh-HK - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-BR - ro - ru - tr - uk type: - string - 'null' badgeId: pattern: '^([a-f\d]{24})$' type: - string - 'null' estimatedTime: minimum: 0 type: - integer - 'null' catalogIds: type: array items: type: string extendedFields: type: array items: $ref: '#/components/schemas/ExtendedFieldsApiBody' PathwayReadModel.PathwayEventCreateApiBody: type: object description: '' deprecated: false required: - contentId properties: contentId: pattern: '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89aAbB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$' type: string PathwayReadModel.PathwayResourceCreateApiBody: type: object description: '' deprecated: false required: - title - url - launchMode properties: title: type: string description: type: string imageUrl: type: - string - 'null' url: type: string launchMode: type: integer PathwayReadModel.PathwayResourceMetaExtractReadModel: type: object description: '' deprecated: false properties: image: type: string url: type: string domain: type: string title: type: string description: type: string PathwayReadModel.PathwayResourceReadModel: type: object description: '' deprecated: false properties: id: type: string companyId: type: string title: type: string description: type: string url: type: string imageUrl: type: - string - 'null' images: type: - array - 'null' items: type: string launchMode: type: integer createdBy: type: string createdAt: type: string format: date-time updatedAt: type: - string - 'null' format: date-time PathwayReadModel.PathwayResourceUpdateApiBody: type: object description: '' deprecated: false required: - title - launchMode properties: title: type: string description: type: string imageUrl: type: - string - 'null' launchMode: type: integer PathwayReadModel.PathwayStageCreateApiBody: type: object description: '' deprecated: false required: - contentId - type properties: contentId: type: string type: enum: - Event - Course type: string PathwayReadModel.PathwayStageReadModel: type: object description: '' deprecated: false properties: id: type: integer name: type: - string - 'null' type: type: string contents: type: array items: $ref: '#/components/schemas/PathwayContentReadModel' PathwayReadModel.PathwayStageTranslationUpdateApiBody: type: object description: '' deprecated: false required: - value properties: value: type: string PathwayReadModel.PathwayStageUpdateApiBody: type: object description: '' deprecated: false required: - name properties: name: type: string PathwayReadModel.PathwayStructureReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string locale: type: - string - 'null' status: type: string description: type: - string - 'null' stages: type: array items: $ref: '#/components/schemas/PathwayStageReadModel' PathwayReadModel.PathwayTranslationUpdateApiBody: type: object description: '' deprecated: false required: - value properties: value: type: string PathwayReadModel.PathwayUpdateApiBody: type: object description: '' deprecated: false required: - name properties: name: maxLength: 500 type: string description: maxLength: 1000 type: - string - 'null' defaultLang: enum: - null - es - en - gl - ca - bg - cs - zh-CN - zh-HK - ko - sk - sl - de - el - fr - it - ja - hu - nl - pl - pt - pt-BR - ro - ru - tr - uk type: string badgeId: pattern: '^([a-f\d]{24})$' type: - string - 'null' catalogIds: type: array items: type: string estimatedTime: minimum: 0 type: - integer - 'null' extendedFields: type: array items: $ref: '#/components/schemas/ExtendedFieldsApiBody' PathwayReadModel.TranslationReadModel: type: object description: '' deprecated: false properties: field: type: string locale: type: string value: type: - string - 'null' PathwayReportReadModel: type: object description: '' deprecated: false properties: trainingId: type: string pathwayId: type: string pathway: type: string pathwayCover: type: string training: type: string startDate: type: - string - 'null' format: date-time endDate: type: - string - 'null' format: date-time state: type: string avgSessionTime: type: integer avgSessionsPerWeek: type: number notStarted: type: integer inProgress: type: integer completed: type: integer extendedFields: type: array items: type: string PathwayStageReadModel: type: object description: '' deprecated: false properties: id: type: integer name: type: - string - 'null' type: type: string contents: type: array items: $ref: '#/components/schemas/PathwayContentReadModel' ReadModel.LearningProgramEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string coverImageUrl: type: - string - 'null' ReadModel.UserEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: - string - 'null' lastname: type: - string - 'null' imageUrl: type: - string - 'null' email: type: - string - 'null' Review: type: object description: '' deprecated: false properties: id: type: string type: type: string courseId: type: string user: $ref: '#/components/schemas/Domain.ReadModel.UserEmbedReadModel' ratingOverFive: type: integer comment: type: - string - 'null' createdAt: type: string format: date-time updatedAt: type: string format: date-time Review.CourseReviewCreateApiBody: type: object description: '' deprecated: false required: - ratingOverFive properties: ratingOverFive: minimum: 1 maximum: 5 type: integer comment: type: - string - 'null' Review.CourseReviewUpdateApiBody: type: object description: '' deprecated: false required: - ratingOverFive properties: ratingOverFive: minimum: 1 maximum: 5 type: integer comment: type: - string - 'null' Review.ReviewSummaryReadModel: type: object description: '' deprecated: false properties: totalReview: type: integer averageReview: type: number ScreenView: type: object description: '' deprecated: false properties: id: type: string name: type: string screenGroup: type: string columns: type: array items: type: string order: $ref: '#/components/schemas/ScreenViewOrder' filters: type: - array - 'null' items: $ref: '#/components/schemas/ScreenViewFilter' ScreenView.ScreenViewCreateApiBody: type: object description: '' deprecated: false required: - name - screenGroup - columns - order properties: name: maxLength: 50 type: string screenGroup: type: string columns: type: array items: type: string order: $ref: '#/components/schemas/OrderEmbedApiBody' filters: type: array items: $ref: '#/components/schemas/ScreenViewFiltersEmbedApiBody' ScreenView.ScreenViewMoveApiBody: type: object description: '' deprecated: false properties: beforeScreenViewId: type: - string - 'null' ScreenViewFilter: type: object description: '' deprecated: false properties: key: type: string label: type: string type: type: string values: type: - array - 'null' items: $ref: '#/components/schemas/ScreenViewFilterValues' ScreenViewFilterValues: type: object description: '' deprecated: false properties: type: type: string label: type: string data: type: string ScreenViewFiltersEmbedApiBody: type: object description: '' deprecated: false required: - key - label - type properties: key: type: string label: type: string type: type: string values: type: array items: $ref: '#/components/schemas/ScreenViewFiltersValuesEmbedApiBody' ScreenViewFiltersValuesEmbedApiBody: type: object description: '' deprecated: false required: - type - label - data properties: type: type: string label: type: string data: type: string ScreenViewOrder: type: object description: '' deprecated: false properties: key: type: string order: type: string Tag: type: object description: '' deprecated: false properties: id: type: string name: type: string createdAt: type: - string - 'null' format: date-time updatedAt: type: - string - 'null' format: date-time Tag.TagCreateApiBody: type: object description: '' deprecated: false required: - name properties: name: type: string Tag.TagUpdateApiBody: type: object description: '' deprecated: false required: - name properties: name: maxLength: 500 type: string TagEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string TeacherEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string name: type: string imageUrl: type: - string - 'null' TeamReportMemberCoursesEmbedReadModel: type: object description: '' deprecated: false properties: totalCount: type: integer completedCount: type: integer TeamReportMemberEventsEmbedReadModel: type: object description: '' deprecated: false properties: totalCount: type: integer attendedCount: type: integer TeamReportMemberLearningProgramsEmbedReadModel: type: object description: '' deprecated: false properties: totalCount: type: integer completedCount: type: integer TeamReportMemberPathwaysEmbedReadModel: type: object description: '' deprecated: false properties: totalCount: type: integer completedCount: type: integer TeamReportMemberReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: string lastname: type: string avatarUrl: type: - string - 'null' isActive: type: boolean earnedBadgesCount: type: integer userProgressPercentage: type: - number - 'null' courses: $ref: '#/components/schemas/TeamReportMemberCoursesEmbedReadModel' pathways: $ref: '#/components/schemas/TeamReportMemberPathwaysEmbedReadModel' learningPrograms: $ref: '#/components/schemas/TeamReportMemberLearningProgramsEmbedReadModel' events: $ref: '#/components/schemas/TeamReportMemberEventsEmbedReadModel' userTimeSpentInSeconds: type: number teamProgressPercentage: type: - number - 'null' hasTeamMembers: type: boolean TeamReportSelfSummaryReadModel: type: object description: '' deprecated: false properties: team: $ref: '#/components/schemas/TeamReportSummaryTeamEmbedReadModel' courses: $ref: '#/components/schemas/TeamReportSummaryCoursesEmbedReadModel' pathways: $ref: '#/components/schemas/TeamReportSummaryPathwaysEmbedReadModel' learningPrograms: $ref: '#/components/schemas/TeamReportSummaryLearningProgramsEmbedReadModel' events: $ref: '#/components/schemas/TeamReportSummaryEventsEmbedReadModel' TeamReportSubordinateSummaryReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: string lastname: type: string avatarUrl: type: - string - 'null' team: $ref: '#/components/schemas/TeamReportSummaryTeamEmbedReadModel' courses: $ref: '#/components/schemas/TeamReportSummaryCoursesEmbedReadModel' pathways: $ref: '#/components/schemas/TeamReportSummaryPathwaysEmbedReadModel' learningPrograms: $ref: '#/components/schemas/TeamReportSummaryLearningProgramsEmbedReadModel' events: $ref: '#/components/schemas/TeamReportSummaryEventsEmbedReadModel' TeamReportSummaryCoursesEmbedReadModel: type: object description: '' deprecated: false properties: totalCount: type: integer completedCount: type: integer inProgressCount: type: integer notStartedCount: type: integer TeamReportSummaryEventsEmbedReadModel: type: object description: '' deprecated: false properties: totalCount: type: integer attendedCount: type: integer TeamReportSummaryLearningProgramsEmbedReadModel: type: object description: '' deprecated: false properties: totalCount: type: integer completedCount: type: integer inProgressCount: type: integer notStartedCount: type: integer TeamReportSummaryPathwaysEmbedReadModel: type: object description: '' deprecated: false properties: totalCount: type: integer completedCount: type: integer inProgressCount: type: integer notStartedCount: type: integer TeamReportSummaryTeamEmbedReadModel: type: object description: '' deprecated: false properties: membersCount: type: integer progressPercentage: type: number timeSpentInSeconds: type: number earnedBadgesCount: type: integer avgRatingOverFive: type: - number - 'null' TopicEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string TrainingChatReportReadModel: type: object description: '' deprecated: false TrainingCommonAdminReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string TrainingCourseAdminReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time state: type: string featured: type: boolean isPublic: type: boolean validationsEnabled: type: boolean permanentAccessEnabled: type: boolean msTeamsChatEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: type: boolean rankingEnabled: type: boolean externalId: type: - string - 'null' diploma: allOf: - type: - unknown_type - 'null' - type: unknown_type course: $ref: '#/components/schemas/CourseEmbedReadModel' topics: type: array items: $ref: '#/components/schemas/TopicEmbedReadModel' teachers: type: array items: $ref: '#/components/schemas/TeacherEmbedReadModel' createdAt: type: string format: date-time createdBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' updatedAt: type: - string - 'null' format: date-time updatedBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' notifyInscription: type: boolean notifyWhenNotCompletedDaysBeforeEndDate: type: - integer - 'null' notifyReminderDaysOnceStarting: type: - integer - 'null' notifyDaysBeforeStart: type: - integer - 'null' TrainingCourseAdminReadModel.TrainingCourseCreateApiBody: type: object description: '' deprecated: false required: - courseId - name - startDate - featured - isPublic - validationsEnabled - permanentAccessEnabled - msTeamsChatEnabled - reviewsEnabled - commentsEnabled - rankingEnabled - topicIds - teacherIds - notifyInscription properties: courseId: pattern: '^([a-f\d]{24})$' type: string name: maxLength: 500 type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time featured: type: boolean isPublic: type: boolean validationsEnabled: default: true example: true type: boolean permanentAccessEnabled: default: true example: true type: boolean msTeamsChatEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: default: true example: true type: boolean rankingEnabled: type: boolean externalId: maxLength: 255 type: - string - 'null' diploma: anyOf: - $ref: '#/components/schemas/DiplomaApiBody' - type: 'null' topicIds: type: array items: type: string teacherIds: type: array items: type: string notifyInscription: default: true example: true type: boolean notifyWhenNotCompletedDaysBeforeEndDate: exclusiveMinimum: 0 type: - integer - 'null' notifyReminderDaysOnceStarting: exclusiveMinimum: 0 type: - integer - 'null' notifyDaysBeforeStart: exclusiveMinimum: 0 type: - integer - 'null' TrainingCourseAdminReadModel.TrainingCourseUpdateApiBody: type: object description: '' deprecated: false required: - name - startDate - featured - isPublic - permanentAccessEnabled - msTeamsChatEnabled - reviewsEnabled - commentsEnabled - rankingEnabled - topicIds - teacherIds - notifyInscription properties: name: maxLength: 500 type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time featured: type: boolean isPublic: type: boolean permanentAccessEnabled: type: boolean msTeamsChatEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: type: boolean rankingEnabled: type: boolean externalId: maxLength: 255 type: - string - 'null' diploma: anyOf: - $ref: '#/components/schemas/DiplomaApiBody' - type: 'null' topicIds: type: array items: type: string teacherIds: type: array items: type: string notifyInscription: type: boolean notifyWhenNotCompletedDaysBeforeEndDate: exclusiveMinimum: 0 type: - integer - 'null' notifyReminderDaysOnceStarting: exclusiveMinimum: 0 type: - integer - 'null' notifyDaysBeforeStart: exclusiveMinimum: 0 type: - integer - 'null' TrainingCourseLearnerCourseEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string imageUrl: type: - string - 'null' defaultLocale: type: - string - 'null' translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' images: type: array items: $ref: '#/components/schemas/ImageReadModel' TrainingCourseLearnerReadModel: type: object description: '' deprecated: false properties: type: default: TrainingCourse example: TrainingCourse type: string id: type: string course: anyOf: - $ref: '#/components/schemas/ReadModel.TrainingCourseLearnerCourseEmbedReadModel' - type: 'null' startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time state: type: string createdDateTime: type: string format: date-time isFeatured: type: boolean isPublic: type: boolean isFavorite: type: boolean commentsEnabled: type: boolean permanentAccessEnabled: type: boolean rankingEnabled: type: boolean reviewsEnabled: type: boolean validationsEnabled: type: boolean enrollment: anyOf: - $ref: '#/components/schemas/TrainingLearnerEnrollmentEmbedReadModel' - type: 'null' externalChat: anyOf: - $ref: '#/components/schemas/TrainingLearnerExternalChatEmbedReadModel' - type: 'null' TrainingCourseProgressProgressEmbedReadModel: type: object description: '' deprecated: false properties: state: type: string enum: - notStarted - inProgress - completed pointsAmount: type: integer progressPercentage: type: number updatedAt: type: - string - 'null' format: date-time completedAt: type: - string - 'null' format: date-time TrainingCourseProgressReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string startDatetime: type: string format: date-time endDatetime: type: - string - 'null' format: date-time state: type: string enum: - planned - open - closed course: $ref: '#/components/schemas/CourseEmbedReadModel' progress: $ref: '#/components/schemas/TrainingCourseProgressProgressEmbedReadModel' diplomaAccess: $ref: '#/components/schemas/TrainingDiplomaAccessEmbedReadModel' TrainingCustomerEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string TrainingDiplomaAccessEmbedReadModel: type: object description: '' deprecated: false properties: hasDiploma: type: boolean canDownload: type: boolean canGenerate: type: boolean TrainingDiplomaAuthorEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string version: type: string type: type: string TrainingEnrollmentGroupAdminReadModel: type: object description: '' deprecated: false properties: id: type: string TrainingEnrollmentGroupAdminReadModel.TrainingGroupEnrollApiBody: type: object description: '' deprecated: false required: - enrollmentType properties: enrollmentType: enum: - recommended - optional - mandatory type: string TrainingEnrollmentUserAdminReadModel: type: object description: '' deprecated: false properties: id: type: string TrainingEnrollmentUserAdminReadModel.TrainingUserEnrollApiBody: type: object description: '' deprecated: false required: - enrollmentType properties: enrollmentType: enum: - recommended - optional - mandatory type: string TrainingEventAdminReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time state: type: string featured: type: boolean isPublic: type: boolean msIntegrationEnabled: type: boolean msIntegrationType: type: - string - 'null' location: type: - string - 'null' virtualRoomUrl: type: - string - 'null' maximumCapacity: type: - integer - 'null' activeCapacityLimit: type: boolean automaticSeatManagement: type: boolean seatAssigned: type: - integer - 'null' event: $ref: '#/components/schemas/EventEmbedReadModel' topics: type: array items: $ref: '#/components/schemas/TopicEmbedReadModel' teachers: type: array items: $ref: '#/components/schemas/TeacherEmbedReadModel' parentId: type: - string - 'null' msIntegrationLatestAttendanceSyncDatetime: type: - string - 'null' format: date-time createdAt: type: string format: date-time createdBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' updatedAt: type: - string - 'null' format: date-time updatedBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' notifyInscription: type: boolean notifyDaysBeforeStart: type: - integer - 'null' TrainingEventAdminReadModel.TrainingEventAttendanceAdminCsvReadModel: type: object description: '' deprecated: false properties: user: $ref: '#/components/schemas/TrainingEventAttendanceAdminUserCsvEmbedReadModel' trainingId: type: string attendance: type: boolean timeInSeconds: type: - integer - 'null' updatedAt: type: - string - 'null' format: date-time enrolledAt: type: - string - 'null' format: date-time TrainingEventAdminReadModel.TrainingEventAttendanceAdminReadModel: type: object description: '' deprecated: false properties: user: $ref: '#/components/schemas/TrainingEventAttendanceAdminUserEmbedReadModel' trainingId: type: string attendance: type: boolean timeInSeconds: type: - integer - 'null' updatedAt: type: - string - 'null' format: date-time enrolledAt: type: - string - 'null' format: date-time TrainingEventAdminReadModel.TrainingEventAttendanceAdminUserReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string startDatetime: type: string format: date-time endDatetime: type: - string - 'null' format: date-time event: $ref: '#/components/schemas/EventEmbedReadModel' attendance: anyOf: - $ref: '#/components/schemas/TrainingEventAttendanceEmbedReadModel' - type: 'null' TrainingEventAdminReadModel.TrainingEventAttendanceApiBody: type: object description: '' deprecated: false required: - attendance properties: attendance: type: boolean timeInSeconds: minimum: 0 type: integer TrainingEventAdminReadModel.TrainingEventCreateApiBody: type: object description: '' deprecated: false required: - eventId - name - startDate - endDate - featured - isPublic - topicIds - teacherIds - notifyInscription properties: eventId: type: string name: maxLength: 500 type: string startDate: type: string format: date-time endDate: type: string format: date-time featured: type: boolean isPublic: type: boolean msIntegrationType: enum: - onlineMeetingEvent - event type: - string - 'null' location: maxLength: 200 type: - string - 'null' virtualRoomUrl: maxLength: 2000 type: - string - 'null' maximumCapacity: exclusiveMinimum: 0 type: - integer - 'null' activeCapacityLimit: type: boolean automaticSeatManagement: type: boolean topicIds: type: array items: type: string teacherIds: type: array items: type: string parentId: type: - string - 'null' notifyInscription: default: true example: true type: boolean notifyDaysBeforeStart: exclusiveMinimum: 0 type: - integer - 'null' TrainingEventAdminReadModel.TrainingEventUpdateApiBody: type: object description: '' deprecated: false required: - name - startDate - endDate - featured - isPublic - topicIds - teacherIds - notifyInscription properties: name: maxLength: 500 type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time featured: type: boolean isPublic: type: boolean msIntegrationType: enum: - onlineMeetingEvent - event type: - string - 'null' location: maxLength: 200 type: - string - 'null' virtualRoomUrl: maxLength: 2000 type: - string - 'null' maximumCapacity: exclusiveMinimum: 0 type: - integer - 'null' activeCapacityLimit: type: - boolean - 'null' automaticSeatManagement: type: - boolean - 'null' topicIds: type: array items: type: string teacherIds: type: array items: type: string notifyInscription: type: boolean notifyDaysBeforeStart: exclusiveMinimum: 0 type: - integer - 'null' TrainingEventAttendance: type: object description: '' deprecated: false TrainingEventAttendanceAdminUserCsvEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string name: type: string TrainingEventAttendanceAdminUserEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string imageUrl: type: - string - 'null' TrainingEventAttendanceEmbedReadModel: type: object description: '' deprecated: false properties: attended: type: boolean timeInSeconds: type: integer TrainingEventDetailEnrolledLearnerReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time location: type: - string - 'null' virtualRoomUrl: type: - string - 'null' isFeatured: type: boolean isPublic: type: boolean event: $ref: '#/components/schemas/TrainingEventDetailLearnerEventEmbedReadModel' enrollment: anyOf: - $ref: '#/components/schemas/TrainingEventLearnerEnrollmentEmbedReadModel' - type: 'null' capacity: type: - integer - 'null' seatAvailable: type: - integer - 'null' seatState: type: - string - 'null' TrainingEventDetailLearnerEventEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' documents: type: array items: $ref: '#/components/schemas/TrainingEventLearnerEventDocumentEmbedReadModel' TrainingEventEnrollmentEmbedReadModel: type: object description: '' deprecated: false properties: isEnrolled: readOnly: true type: boolean type: type: string TrainingEventEventDocumentEmbedReadModel: type: object description: '' deprecated: false properties: name: type: string url: type: string TrainingEventEventEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' documents: type: array items: $ref: '#/components/schemas/TrainingEventEventDocumentEmbedReadModel' TrainingEventLearnerEnrollmentEmbedReadModel: type: object description: '' deprecated: false properties: type: type: string canUnenroll: type: boolean TrainingEventLearnerEventDocumentEmbedReadModel: type: object description: '' deprecated: false properties: name: type: string url: type: string TrainingEventReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time location: type: - string - 'null' virtualRoomUrl: type: - string - 'null' isFeatured: type: boolean isPublic: type: boolean event: $ref: '#/components/schemas/TrainingEventEventEmbedReadModel' enrollment: anyOf: - $ref: '#/components/schemas/TrainingEventEnrollmentEmbedReadModel' - type: 'null' TrainingGroupEnrolledReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' path: type: string enrollment: $ref: '#/components/schemas/TrainingGroupEnrollmentEmbedReadModel' TrainingGroupEnrollmentEmbedReadModel: type: object description: '' deprecated: false properties: type: type: string enum: - recommended - optional - mandatory enrolledBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' updatedDatetime: type: - string - 'null' format: date-time TrainingLearnerEnrollmentEmbedReadModel: type: object description: '' deprecated: false properties: type: type: - string - 'null' enum: - recommended - optional - mandatory - null TrainingLearnerExternalChatEmbedReadModel: type: object description: '' deprecated: false properties: url: type: string TrainingLearnerReadModel: type: object description: '' deprecated: false properties: id: type: string TrainingLearningProgramAdminReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time state: type: string isPublic: type: boolean msTeamsChatEnabled: type: boolean validationsEnabled: type: boolean permanentAccessEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: type: boolean rankingEnabled: type: boolean learningProgram: $ref: '#/components/schemas/ReadModel.LearningProgramEmbedReadModel' teachers: type: array items: $ref: '#/components/schemas/TeacherEmbedReadModel' diploma: anyOf: - $ref: '#/components/schemas/TrainingDiplomaAuthorEmbedReadModel' - type: 'null' createdAt: type: string format: date-time createdBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' updatedAt: type: - string - 'null' format: date-time updatedBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' TrainingLearningProgramAdminReadModel.TrainingLearningProgramCreateApiBody: type: object description: '' deprecated: false required: - learningProgramId - name - startDate - isPublic - validationsEnabled - permanentAccessEnabled - msTeamsChatEnabled - reviewsEnabled - commentsEnabled - rankingEnabled - teacherIds properties: learningProgramId: type: string name: maxLength: 500 type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time isPublic: type: boolean validationsEnabled: default: true example: true type: boolean permanentAccessEnabled: default: true example: true type: boolean msTeamsChatEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: default: true example: true type: boolean rankingEnabled: type: boolean teacherIds: type: array items: type: string diploma: anyOf: - $ref: '#/components/schemas/AuthorDiplomaLearningProgramApiBody' - type: 'null' TrainingLearningProgramAdminReadModel.TrainingLearningProgramPathwayStructureReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string stageId: type: integer stageName: type: - string - 'null' order: type: integer totalUsersCompleted: type: integer totalUsersInProgress: type: integer imageUrl: type: - string - 'null' integrationId: type: - string - 'null' type: type: string TrainingLearningProgramAdminReadModel.TrainingLearningProgramProgressGroupByPathwayReadModel: type: object description: '' deprecated: false properties: pathway: anyOf: - $ref: '#/components/schemas/PathwayEmbedReadModel' - type: 'null' notStarted: type: integer inProgress: type: integer completed: type: integer TrainingLearningProgramAdminReadModel.TrainingLearningProgramProgressGroupByUserReadModel: type: object description: '' deprecated: false properties: learner: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' completedPathways: type: integer totalPathways: type: integer completedRequiredPathways: type: integer totalRequiredPathways: type: integer updatedAt: type: - string - 'null' format: date-time TrainingLearningProgramAdminReadModel.TrainingLearningProgramUpdateApiBody: type: object description: '' deprecated: false required: - name - startDate - isPublic - permanentAccessEnabled - msTeamsChatEnabled - reviewsEnabled - commentsEnabled - rankingEnabled - teacherIds properties: name: maxLength: 500 type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time isPublic: type: boolean permanentAccessEnabled: type: boolean msTeamsChatEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: type: boolean rankingEnabled: type: boolean teacherIds: type: array items: type: string diploma: anyOf: - $ref: '#/components/schemas/AuthorDiplomaLearningProgramApiBody' - type: 'null' TrainingLearningProgramLearnerAcademicRecordReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time completedAtDateTime: type: - string - 'null' format: date-time isPublic: type: boolean learningProgram: $ref: '#/components/schemas/LearningProgramEmbedReadModel' certificateAvailable: type: - boolean - 'null' certificateUrl: type: - string - 'null' TrainingLearningProgramLearnerLearningPathwayRequiredBadgeEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' achieved: type: boolean TrainingLearningProgramLearnerLearningPathwayRequiredPathwayEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' achieved: type: boolean TrainingLearningProgramLearnerLearningProgramBadgeEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' TrainingLearningProgramLearnerLearningProgramEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: string imageUrl: type: - string - 'null' completedResources: type: integer totalResources: type: integer badge: anyOf: - $ref: '#/components/schemas/TrainingLearningProgramLearnerLearningProgramBadgeEmbedReadModel' - type: 'null' pathways: type: array items: $ref: '#/components/schemas/TrainingLearningProgramLearnerLearningProgramPathwayEmbedReadModel' TrainingLearningProgramLearnerLearningProgramPathwayEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' coursesAmount: type: integer eventsAmount: type: integer progressPercentage: type: integer progress: $ref: '#/components/schemas/TrainingLearningProgramPathwayProgressLearnerEmbedReadModel' state: type: string defaultLocale: type: - string - 'null' translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' required: type: boolean isRequiredByPathway: type: boolean locked: type: boolean requirements: $ref: '#/components/schemas/TrainingLearningProgramLearnerLearningProgramPathwayRequirementsEmbedReadModel' TrainingLearningProgramLearnerLearningProgramPathwayRequirementsEmbedReadModel: type: object description: '' deprecated: false properties: badges: type: array items: $ref: '#/components/schemas/TrainingLearningProgramLearnerLearningPathwayRequiredBadgeEmbedReadModel' pathways: type: array items: $ref: '#/components/schemas/TrainingLearningProgramLearnerLearningPathwayRequiredPathwayEmbedReadModel' TrainingLearningProgramLearnerReadModel: type: object description: '' deprecated: false properties: type: default: TrainingLearningProgram example: TrainingLearningProgram type: string id: type: string startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time isPublic: type: boolean isFavorite: type: boolean enrollment: anyOf: - $ref: '#/components/schemas/TrainingLearnerEnrollmentEmbedReadModel' - type: 'null' externalChat: type: - string - 'null' defaultLocale: type: - string - 'null' translations: type: - array - 'null' items: type: string activateComments: type: boolean activateKeepVisibility: type: boolean activateRanking: type: boolean activateReviews: type: boolean activateValidations: type: boolean learningProgram: $ref: '#/components/schemas/TrainingLearningProgramLearnerLearningProgramEmbedReadModel' TrainingLearningProgramPathwayProgressLearnerEmbedReadModel: type: object description: '' deprecated: false properties: state: type: string enum: - notStarted - inProgress - completed progressPercentage: type: integer TrainingLearningProgramUserProgressReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string completedAt: type: - string - 'null' format: date-time state: type: string enum: - notStarted - inProgress - completed diplomaAccess: $ref: '#/components/schemas/TrainingDiplomaAccessEmbedReadModel' TrainingPathwayAdminReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time state: type: string featured: type: boolean isPublic: type: boolean validationsEnabled: type: boolean permanentAccessEnabled: type: boolean msTeamsChatEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: type: boolean rankingEnabled: type: boolean externalId: type: - string - 'null' diploma: allOf: - type: - unknown_type - 'null' - type: unknown_type pathway: $ref: '#/components/schemas/PathwayEmbedReadModel' topics: type: array items: $ref: '#/components/schemas/TopicEmbedReadModel' teachers: type: array items: $ref: '#/components/schemas/TeacherEmbedReadModel' createdAt: type: string format: date-time createdBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' updatedAt: type: - string - 'null' format: date-time updatedBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' notifyInscription: type: boolean notifyWhenNotCompletedDaysBeforeEndDate: type: - integer - 'null' notifyReminderDaysOnceStarting: type: - integer - 'null' notifyDaysBeforeStart: type: - integer - 'null' TrainingPathwayAdminReadModel.TrainingPathwayAdminUserProgressReadModel: type: object description: '' deprecated: false properties: id: type: string firstname: type: - string - 'null' lastname: type: - string - 'null' avatar: type: - string - 'null' active: type: boolean updatedDatetime: type: - string - 'null' format: date-time completedCoursesAmount: type: integer coursesAmount: type: integer completedEventsAmount: type: integer eventsAmount: type: integer completedRequiredCoursesAmount: type: integer requiredCoursesAmount: type: integer score: type: - number - 'null' state: type: string TrainingPathwayAdminReadModel.TrainingPathwayCreateApiBody: type: object description: '' deprecated: false required: - pathwayId - name - startDate - featured - isPublic - validationsEnabled - permanentAccessEnabled - msTeamsChatEnabled - reviewsEnabled - commentsEnabled - rankingEnabled - topicIds - teacherIds - notifyInscription properties: pathwayId: pattern: '^([a-f\d]{24})$' type: string name: maxLength: 500 type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time featured: type: boolean isPublic: type: boolean validationsEnabled: default: true example: true type: boolean permanentAccessEnabled: default: true example: true type: boolean msTeamsChatEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: default: true example: true type: boolean rankingEnabled: type: boolean externalId: maxLength: 255 type: - string - 'null' diploma: anyOf: - $ref: '#/components/schemas/DiplomaApiBody' - type: 'null' topicIds: type: array items: type: string teacherIds: type: array items: type: string notifyInscription: default: true example: true type: boolean notifyWhenNotCompletedDaysBeforeEndDate: exclusiveMinimum: 0 type: - integer - 'null' notifyReminderDaysOnceStarting: exclusiveMinimum: 0 type: - integer - 'null' notifyDaysBeforeStart: exclusiveMinimum: 0 type: - integer - 'null' TrainingPathwayAdminReadModel.TrainingPathwayStructureReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string stageId: type: integer stageName: type: - string - 'null' order: type: integer totalUsersCompleted: type: integer totalUsersInProgress: type: integer imageUrl: type: - string - 'null' integrationId: type: - string - 'null' type: type: string required: type: - boolean - 'null' TrainingPathwayAdminReadModel.TrainingPathwayUpdateApiBody: type: object description: '' deprecated: false required: - name - startDate - featured - isPublic - permanentAccessEnabled - msTeamsChatEnabled - reviewsEnabled - commentsEnabled - rankingEnabled - topicIds - teacherIds - notifyInscription properties: name: maxLength: 500 type: string startDate: type: string format: date-time endDate: type: - string - 'null' format: date-time featured: type: boolean isPublic: type: boolean permanentAccessEnabled: type: boolean msTeamsChatEnabled: type: boolean reviewsEnabled: type: boolean commentsEnabled: type: boolean rankingEnabled: type: boolean externalId: maxLength: 255 type: - string - 'null' diploma: anyOf: - $ref: '#/components/schemas/DiplomaApiBody' - type: 'null' topicIds: type: array items: type: string teacherIds: type: array items: type: string notifyInscription: type: boolean notifyWhenNotCompletedDaysBeforeEndDate: exclusiveMinimum: 0 type: - integer - 'null' notifyReminderDaysOnceStarting: exclusiveMinimum: 0 type: - integer - 'null' notifyDaysBeforeStart: exclusiveMinimum: 0 type: - integer - 'null' TrainingPathwayBadgeReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' description: type: string criteria: type: string TrainingPathwayCourseReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' defaultLocale: type: - string - 'null' locked: type: boolean milestones: type: array items: $ref: '#/components/schemas/TrainingPathwayMilestoneReadModel' requirements: $ref: '#/components/schemas/TrainingPathwayRequirementsReadModel' progress: type: - number - 'null' required: type: boolean status: type: string translations: type: - array - 'null' items: type: string TrainingPathwayDetailLearnerReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' progress: type: - number - 'null' contentCount: type: integer startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time badge: anyOf: - $ref: '#/components/schemas/TrainingPathwayBadgeReadModel' - type: 'null' translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' defaultLocale: type: - string - 'null' enrollment: anyOf: - $ref: '#/components/schemas/TrainingLearnerEnrollmentEmbedReadModel' - type: 'null' state: type: string TrainingPathwayDetailLearnerReadModel.TrainingPathwayResourceReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' images: type: array items: $ref: '#/components/schemas/ImageReadModel' launchMode: type: - integer - 'null' linkUrl: type: string TrainingPathwayDetailLearnerReadModel.TrainingPathwayStageReadModel: type: object description: '' deprecated: false properties: id: type: integer name: type: - string - 'null' type: type: string defaultLocale: type: - string - 'null' enrollment: $ref: '#/components/schemas/TrainingLearnerEnrollmentEmbedReadModel' contents: type: array items: $ref: '#/components/schemas/TrainingPathwayCourseReadModel' translations: type: - array - 'null' items: type: string TrainingPathwayLearnerPathwayEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' defaultLocale: type: - string - 'null' translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' coursesAmount: type: integer eventsAmount: type: integer completedCoursesAmount: type: integer completedEventsAmount: type: integer requiredCoursesAmount: type: integer completedRequiredCoursesAmount: type: integer progressPercentage: type: number state: type: string images: type: array items: $ref: '#/components/schemas/ImageReadModel' TrainingPathwayLearnerReadModel: type: object description: '' deprecated: false properties: type: default: TrainingPathway example: TrainingPathway type: string id: type: string pathway: anyOf: - $ref: '#/components/schemas/TrainingPathwayLearnerPathwayEmbedReadModel' - type: 'null' startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time state: type: string createdDateTime: type: string format: date-time isFeatured: type: boolean isPublic: type: boolean isFavorite: type: boolean commentsEnabled: type: boolean permanentAccessEnabled: type: boolean rankingEnabled: type: boolean reviewsEnabled: type: boolean validationsEnabled: type: boolean enrollment: anyOf: - $ref: '#/components/schemas/TrainingLearnerEnrollmentEmbedReadModel' - type: 'null' externalChat: anyOf: - $ref: '#/components/schemas/TrainingLearnerExternalChatEmbedReadModel' - type: 'null' TrainingPathwayMilestoneReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string TrainingPathwayProgressProgressEmbedReadModel: type: object description: '' deprecated: false properties: state: type: string enum: - notStarted - inProgress - completed coursesAmount: type: integer completedCoursesAmount: type: integer requiredCoursesAmount: type: integer completedRequiredCoursesAmount: type: integer eventsAmount: type: integer completedEventsAmount: type: integer progressPercentage: type: number updatedDatetime: type: - string - 'null' format: date-time TrainingPathwayProgressReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string startDatetime: type: string format: date-time endDatetime: type: - string - 'null' format: date-time state: type: string enum: - planned - open - closed pathway: $ref: '#/components/schemas/PathwayEmbedReadModel' progress: $ref: '#/components/schemas/TrainingPathwayProgressProgressEmbedReadModel' diplomaAccess: $ref: '#/components/schemas/TrainingDiplomaAccessEmbedReadModel' TrainingPathwayRequirementsBadgeReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string images: type: array items: $ref: '#/components/schemas/BadgeImageEmbedReadModel' achieved: type: boolean TrainingPathwayRequirementsCourseReadModel: type: object description: '' deprecated: false properties: id: type: string TrainingPathwayRequirementsReadModel: type: object description: '' deprecated: false properties: courses: type: array items: $ref: '#/components/schemas/TrainingPathwayRequirementsCourseReadModel' badges: type: array items: $ref: '#/components/schemas/TrainingPathwayRequirementsBadgeReadModel' TrainingProgressCountsReadModel: type: object description: '' deprecated: false properties: notStarted: type: integer inProgress: type: integer completed: type: integer TrainingProgressReportReadModel: type: object description: '' deprecated: false properties: trainingId: type: string courseId: type: string totalSessionTime: type: integer timePerSession: type: number sessionsPerWeek: type: number totalPoints: type: integer isValidated: type: boolean gradePassed: type: - boolean - 'null' status: type: - integer - 'null' user: $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' TrainingTeacherAdminReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string name: type: string avatar: type: string mail: type: - string - 'null' roles: type: array items: type: string customer: $ref: '#/components/schemas/TrainingCustomerEmbedReadModel' updatedAt: type: - string - 'null' format: date-time TrainingUserEnrolledReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: - string - 'null' lastname: type: - string - 'null' name: type: string emailAddress: type: - string - 'null' imageUrl: type: - string - 'null' enrollment: $ref: '#/components/schemas/TrainingUserEnrollmentEmbedReadModel' seatState: type: - string - 'null' requestDatetime: type: - string - 'null' format: date-time TrainingUserEnrollmentCheckReadModel: type: object description: '' deprecated: false TrainingUserEnrollmentCheckReadModel.TrainingUserEnrollmentCheckApiBody: type: object description: '' deprecated: false required: - enrollmentType properties: enrollmentType: enum: - recommended - optional - mandatory type: string TrainingUserEnrollmentEmbedReadModel: type: object description: '' deprecated: false properties: type: type: string enum: - recommended - optional - mandatory enrolledBy: anyOf: - $ref: '#/components/schemas/ReadModel.UserEmbedReadModel' - type: 'null' updatedDatetime: type: - string - 'null' format: date-time TrainingUserSelfEnrolledReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: - string - 'null' lastname: type: - string - 'null' name: type: string emailAddress: type: - string - 'null' imageUrl: type: - string - 'null' enrollment: $ref: '#/components/schemas/TrainingLearnerEnrollmentEmbedReadModel' TranslationReadModel: type: object description: '' deprecated: false properties: field: type: string locale: type: string value: type: - string - 'null' UpdatedBy: type: object description: '' deprecated: false properties: id: type: string username: type: string UpdatedByEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string UserBadgeImageEmbedReadModel: type: object description: '' deprecated: false properties: url: type: string width: type: - integer - 'null' height: type: - integer - 'null' UserBadgeReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: string images: type: array items: $ref: '#/components/schemas/UserBadgeImageEmbedReadModel' criteria: type: - string - 'null' earned: type: boolean earnedAt: type: - string - 'null' format: date-time UserCustomerEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string UserEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: - string - 'null' firstname: type: - string - 'null' lastname: type: - string - 'null' UserReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string name: type: string avatar: type: string mail: type: - string - 'null' roles: type: array items: type: string customer: $ref: '#/components/schemas/UserCustomerEmbedReadModel' updatedAt: type: - string - 'null' format: date-time UserReportAwardsEmbedReadModel: type: object description: '' deprecated: false properties: points: type: integer totalPoints: type: integer badges: type: integer UserReportCourseEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string progress: type: number status: type: - string - 'null' UserReportEvaluationEmbedReadModel: type: object description: '' deprecated: false properties: assessable: type: boolean userGrades: type: integer gradePassed: type: boolean cutoffGrade: type: - integer - 'null' totalActivitiesAssessable: type: integer completedActivitiesAssessable: type: integer UserReportProgressEmbedReadModel: type: object description: '' deprecated: false properties: completedAt: type: string format: date-time UserReportReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string username: type: string avatar: type: - string - 'null' firstName: type: string lastname: type: string email: type: string extendedFields: type: array items: type: string training: $ref: '#/components/schemas/UserReportTrainingEmbedReadModel' certificateDownloadedAt: type: - string - 'null' format: date-time course: $ref: '#/components/schemas/UserReportCourseEmbedReadModel' awards: anyOf: - $ref: '#/components/schemas/UserReportAwardsEmbedReadModel' - type: 'null' sessions: anyOf: - $ref: '#/components/schemas/UserReportSessionsEmbedReadModel' - type: 'null' evaluation: anyOf: - $ref: '#/components/schemas/UserReportEvaluationEmbedReadModel' - type: 'null' progress: anyOf: - $ref: '#/components/schemas/UserReportProgressEmbedReadModel' - type: 'null' UserReportSessionsEmbedReadModel: type: object description: '' deprecated: false properties: totalSessions: type: integer totalSessionTime: type: integer timePerSession: type: integer sessionsPerWeek: type: integer firstAccess: type: - string - 'null' format: date-time lastAccess: type: - string - 'null' format: date-time UserReportTrainingEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string TrainingUserUnenrolledReadModel: type: object description: '' deprecated: false properties: id: type: string username: type: string firstname: type: - string - 'null' lastname: type: - string - 'null' name: type: string emailAddress: type: - string - 'null' imageUrl: type: - string - 'null' TrainingGroupUnenrolledReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' path: type: string ReadModel.TrainingCourseLearnerCourseEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' defaultLocale: type: - string - 'null' translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' progressPercentage: type: number state: type: string images: type: array items: $ref: '#/components/schemas/ImageReadModel' TrainingEventLearnerReadModel: type: object description: '' deprecated: false properties: type: default: TrainingEvent example: TrainingEvent type: string id: type: string event: $ref: '#/components/schemas/TrainingEventLearnerEventEmbedReadModel' startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time state: type: string createdDateTime: type: string format: date-time isFeatured: type: boolean isPublic: type: boolean isFavorite: type: boolean enrollment: anyOf: - $ref: '#/components/schemas/TrainingLearnerEnrollmentEmbedReadModel' - type: 'null' TrainingEventLearnerEventEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' state: type: string TrainingEventDetailNotEnrolledLearnerReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' startDateTime: type: string format: date-time endDateTime: type: - string - 'null' format: date-time location: type: - string - 'null' isFeatured: type: boolean isPublic: type: boolean event: $ref: '#/components/schemas/TrainingEventDetailLearnerEventNotEnrolledEmbedReadModel' enrollment: anyOf: - $ref: '#/components/schemas/TrainingEventLearnerEnrollmentEmbedReadModel' - type: 'null' capacity: type: - integer - 'null' seatAvailable: type: - integer - 'null' seatState: type: - string - 'null' TrainingEventDetailLearnerEventNotEnrolledEmbedReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string description: type: - string - 'null' imageUrl: type: - string - 'null' videoUrl: type: - string - 'null' ExtendedFieldEnumUserReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string type: type: string possibleValues: type: - array - 'null' items: type: string ExtendedFieldIntUserReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string type: type: string ExtendedFieldTextUserReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string type: type: string ExtendedFieldDateUserReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string type: type: string ExtendedFieldBoolUserReadModel: type: object description: '' deprecated: false properties: id: type: string name: type: string type: type: string ExtendedFieldEnumCourseReadModel: type: object description: '' deprecated: false properties: type: default: Enumerated example: Enumerated type: string id: type: string internalId: type: string name: type: string description: type: - string - 'null' searchable: type: boolean required: type: boolean defaultValue: type: - string - 'null' possibleValues: type: - array - 'null' items: type: string ExtendedFieldTextCourseReadModel: type: object description: '' deprecated: false properties: type: default: String example: String type: string id: type: string internalId: type: string name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' searchable: type: boolean required: type: boolean ExtendedFieldDateCourseReadModel: type: object description: '' deprecated: false properties: type: default: Date example: Date type: string id: type: string internalId: type: string name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' format: date-time searchable: type: boolean required: type: boolean ExtendedFieldNumberCourseReadModel: type: object description: '' deprecated: false properties: type: default: Number example: Number type: string id: type: string internalId: type: string name: type: string description: type: - string - 'null' defaultValue: type: - integer - 'null' searchable: type: boolean required: type: boolean ExtendedFieldEnumEventReadModel: type: object description: '' deprecated: false properties: type: default: Enumerated example: Enumerated type: string id: type: string name: type: string description: type: - string - 'null' searchable: type: - boolean - 'null' required: type: - boolean - 'null' defaultValue: type: - string - 'null' possibleValues: type: - array - 'null' items: type: string ExtendedFieldStringEventReadModel: type: object description: '' deprecated: false properties: type: default: String example: String type: string id: type: string name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' searchable: type: - boolean - 'null' required: type: - boolean - 'null' ExtendedFieldDateEventReadModel: type: object description: '' deprecated: false properties: type: default: Date example: Date type: string id: type: string name: type: string description: type: - string - 'null' defaultValue: type: - string - 'null' format: date-time searchable: type: - boolean - 'null' required: type: - boolean - 'null' ExtendedFieldNumberEventReadModel: type: object description: '' deprecated: false properties: type: default: Number example: Number type: string id: type: string name: type: string description: type: - string - 'null' defaultValue: type: - integer - 'null' searchable: type: - boolean - 'null' required: type: - boolean - 'null' ExtendedFieldEnumPathwayReadModel: type: object description: '' deprecated: false properties: type: default: Enumerated example: Enumerated type: string id: type: string internalId: type: string name: type: string defaultValue: type: - string - 'null' searchable: type: - boolean - 'null' possibleValues: type: - array - 'null' items: type: string required: type: boolean ExtendedFieldTextPathwayReadModel: type: object description: '' deprecated: false properties: type: default: String example: String type: string id: type: string internalId: type: string name: type: string defaultValue: type: - string - 'null' searchable: type: - boolean - 'null' required: type: boolean ExtendedFieldDatePathwayReadModel: type: object description: '' deprecated: false properties: type: default: Date example: Date type: string id: type: string internalId: type: string name: type: string defaultValue: type: - string - 'null' format: date-time searchable: type: - boolean - 'null' required: type: boolean CarouselCustomReadModel: type: object description: '' deprecated: false properties: type: default: custom example: custom type: string id: type: string name: type: string active: type: boolean translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' permissions: $ref: '#/components/schemas/CarouselPermissionsEmbedReadModel' image: type: - string - 'null' CarouselPermissionsEmbedReadModel: type: object description: '' deprecated: false properties: moveable: type: boolean activable: type: boolean removable: type: boolean CarouselBuiltinReadModel: type: object description: '' deprecated: false properties: type: default: builtin example: builtin type: string id: type: string name: type: string active: type: boolean translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' permissions: $ref: '#/components/schemas/CarouselPermissionsEmbedReadModel' image: type: - string - 'null' builtinKey: type: string CarouselLearnerCustomReadModel: type: object description: '' deprecated: false properties: type: default: custom example: custom type: string id: type: string name: type: string translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' image: type: - array - 'null' items: type: string CarouselLearnerBuiltinReadModel: type: object description: '' deprecated: false properties: type: default: builtin example: builtin type: string id: type: string name: type: string translations: type: array items: $ref: '#/components/schemas/TranslationReadModel' image: type: - array - 'null' items: type: string builtinKey: type: string responses: { } parameters: { } examples: { } requestBodies: { } headers: { } securitySchemes: spring-trusted_client_user_customer: type: apiKey description: 'Value for the Authorization header parameter.' name: Authorization in: header spring-client_credentials: type: apiKey description: 'Value for the Authorization header parameter.' name: Authorization in: header keycloak-urn_ietf_params_oauth_grant-type_token_exchange: type: apiKey description: 'Value for the Authorization header parameter.' name: Authorization in: header keycloak-client_credentials: type: apiKey description: 'Value for the Authorization header parameter.' name: Authorization in: header security: - spring-trusted_client_user_customer: [] - spring-client_credentials: [] - keycloak-urn_ietf_params_oauth_grant-type_token_exchange: [] - keycloak-client_credentials: [] tags: [] webhooks: { }