openapi: 3.0.0 info: description: Yoda core ruleset containing iRODS and Python rules and policies useful for all Yoda environments. contact: email: l.r.westerhof@uu.nl version: 2.1.0 title: Yoda core admin revisions API servers: - url: https://portal.yoda.test/api description: Local Yoda development server security: - cookieAuth: [] - basicAuth: [] tags: - name: revisions paths: /revisions_search_on_filename: post: tags: - revisions summary: 'Search revisions of a file in a research folder and return list of corresponding revisions. ' requestBody: required: true content: application/json: schema: type: object required: - searchString properties: searchString: type: string description: String to search for as part of a file name default: null nullable: false offset: type: integer description: Starting point in total resultset to start fetching default: '0' nullable: false limit: type: integer description: Max size of the resultset to be returned default: '10' nullable: false responses: '200': description: Success content: application/json: schema: type: object properties: status: type: string status_info: type: string nullable: true data: nullable: true '400': $ref: '#/components/responses/status_400' '500': $ref: '#/components/responses/status_500' /revisions_list: post: tags: - revisions summary: 'Get list revisions of a file in a research folder. ' requestBody: required: true content: application/json: schema: type: object required: - path properties: path: type: string description: Path to data object to find revisions for default: null nullable: false responses: '200': description: Success content: application/json: schema: type: object properties: status: type: string status_info: type: string nullable: true data: nullable: true '400': $ref: '#/components/responses/status_400' '500': $ref: '#/components/responses/status_500' /revisions_restore: post: tags: - revisions summary: 'Copy selected revision to target collection with given name. ' requestBody: required: true content: application/json: schema: type: object required: - revision_id - overwrite - coll_target - new_filename properties: revision_id: type: string description: Data id of the revision to be restored default: null nullable: false overwrite: type: string description: Overwrite indication from front end {restore_no_overwrite, restore_overwrite, restore_next_to} default: null nullable: false coll_target: type: string description: Target collection to place the file default: null nullable: false new_filename: type: string description: New file name as entered by user (in case of duplicate) default: null nullable: false responses: '200': description: Success content: application/json: schema: type: object properties: status: type: string status_info: type: string nullable: true data: nullable: true '400': $ref: '#/components/responses/status_400' '500': $ref: '#/components/responses/status_500' components: responses: status_500: description: Internal error content: application/json: schema: $ref: '#/components/schemas/result_error' status_400: description: Bad request content: application/json: schema: $ref: '#/components/schemas/result_error' schemas: result_error: type: object properties: status: type: string description: Holds an error ID status_info: type: string description: Holds a human-readable error description data: description: empty nullable: true type: object securitySchemes: cookieAuth: in: cookie type: apiKey name: yoda_session basicAuth: type: http scheme: basic