openapi: 3.0.1 info: title: Media Manager API description: 'TAO Media Manager API' version: v1 paths: /taoMediaManager/SharedStimulus/create: post: summary: Create a default shared stimulus requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SharedStimulus' responses: 204: $ref: '#/components/responses/SharedStimulusCreatedResponse' 400: $ref: '#/components/responses/BadRequestResponse' 500: $ref: '#/components/responses/InternalServerErrorResponse' /taoMediaManager/SharedStimulus/get: get: summary: Get a shared stimulus parameters: - in: query name: id required: true schema: type: string description: The shared stimulus id responses: 200: $ref: '#/components/responses/SharedStimulusCreatedResponse' 400: $ref: '#/components/responses/BadRequestResponse' 500: $ref: '#/components/responses/InternalServerErrorResponse' /taoMediaManager/SharedStimulus/patch: patch: summary: Updates a shared stimulus body parameters: - in: query name: id required: true schema: type: string description: The shared stimulus id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SharedStimulusPatch' responses: 200: $ref: '#/components/responses/SharedStimulusPatchResponse' 400: $ref: '#/components/responses/BadRequestResponse' 500: $ref: '#/components/responses/InternalServerErrorResponse' /taoMediaManager/Media/relations: get: summary: Get the relations between media and other resources parameters: - in: query name: sourceId required: false schema: type: string description: The sourceId of the relation. In case of RDF id, this parameter must be urlencoded. - in: query name: classId required: false schema: type: string description: The classId will deterimine to make recursive search in order to find media that is . responses: 200: $ref: '#/components/responses/MediaRelationsResponse' 400: $ref: '#/components/responses/BadRequestResponse' 500: $ref: '#/components/responses/InternalServerErrorResponse' components: schemas: MediaRelationResource: description: 'A resource related to a media' type: object properties: id: type: string example: 'http://www.tao.lu/tao.rdf#i5e89a2063326711164b1a816b433b1ec' type: type: string enum: - item - media - sharedStimulus data: description: specific payload according to type type: array items: type: object example: - label: 'My Item' required: - classId MediaRelations: description: 'A relationship between two resources' type: object properties: relations: type: array items: $ref: '#/components/schemas/MediaRelationResource' SharedStimulus: type: object properties: classUri: type: string example: 'http://tao.docker.localhost/tao.rdf#i5e89a2063326711164b1a816b433b1ec' classId: type: string example: 'http://tao.docker.localhost/tao.rdf#i5e89a2063326711164b1a816b433b1ec' description: 'Use classUri instead' deprecated: true languageId: type: string example: 'http://www.tao.lu/Ontologies/TAO.rdf#Langen-US' name: type: string example: 'New Passage' required: - classId SharedStimulusCreated: allOf: - $ref: '#/components/schemas/SharedStimulus' - type: object properties: id: type: string example: "http://tao.docker.localhost/tao.rdf#i5e89a2063326711164b1a816b433b1ec" body: type: string example: '{ "success": true, "data": { "serial": "i5ec3f09d28d19", "qtiClass": "include", "attributes": {}, "body": { "serial": "i5ec3f09d28ef1", "body": "\n", "elements": {} } } }' SharedStimulusPatch: type: object properties: body: type: string example: '
  1. el 1
  2. el 2
  3. el 3
' required: - body SharedStimulusCreatedResponse: properties: success: type: boolean example: true data: $ref: '#/components/schemas/SharedStimulusCreated' SharedStimulusPatchResponse: properties: success: type: boolean example: true data: type: array ErrorResponse: properties: success: type: boolean example: false code: type: integer example: 400 message: type: string responses: MediaRelationsResponse: description: Bad request content: application/json: schema: $ref: '#/components/schemas/MediaRelations' SharedStimulusCreatedResponse: description: Bad request content: application/json: schema: $ref: '#/components/schemas/SharedStimulusCreatedResponse' BadRequestResponse: description: Bad request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' InternalServerErrorResponse: description: Internal server error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' SharedStimulusPatchResponse: description: Response for the patched SharedStimulus content: application/json: schema: $ref: '#/components/schemas/SharedStimulusPatchResponse'