diff --git a/neurostore-openapi.yml b/neurostore-openapi.yml index 1023147..4045aad 100644 --- a/neurostore-openapi.yml +++ b/neurostore-openapi.yml @@ -13,6 +13,375 @@ servers: - url: 'http://localhost:80/api' description: testing paths: + /pipelines/: + get: + summary: GET a list of pipelines + tags: + - pipelines + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-list' + post: + summary: POST/create a pipeline + tags: + - pipelines + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline' + responses: + '201': + description: Created + /pipelines/{id}: + get: + summary: GET a pipeline by ID + tags: + - pipelines + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline' + put: + summary: PUT/update a pipeline by ID + tags: + - pipelines + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline' + responses: + '200': + description: OK + delete: + summary: DELETE a pipeline by ID + tags: + - pipelines + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '204': + description: No Content + + /pipeline-configs/: + get: + summary: GET a list of pipeline configs + tags: + - pipeline-configs + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-config-list' + post: + summary: POST/create a pipeline config + tags: + - pipeline-configs + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-config' + responses: + '201': + description: Created + /pipeline-configs/{id}: + get: + summary: GET a pipeline config by ID + tags: + - pipeline-configs + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-config' + put: + summary: PUT/update a pipeline config by ID + tags: + - pipeline-configs + parameters: + - name: id + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-config' + responses: + '200': + description: OK + delete: + summary: DELETE a pipeline config by ID + tags: + - pipeline-configs + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '204': + description: No Content + + /pipeline-runs/: + get: + summary: GET a list of pipeline runs + tags: + - pipeline-runs + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-list' + post: + summary: POST/create a pipeline run + tags: + - pipeline-runs + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run' + responses: + '201': + description: Created + /pipeline-runs/{pipeline_run_id}: + get: + summary: GET a pipeline run by ID + tags: + - pipeline-runs + parameters: + - name: pipeline_run_id + in: path + required: true + schema: + type: string + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run' + put: + summary: PUT/update a pipeline run by ID + tags: + - pipeline-runs + parameters: + - name: pipeline_run_id + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run' + responses: + '200': + description: OK + delete: + summary: DELETE a pipeline run by ID + tags: + - pipeline-runs + parameters: + - name: pipeline_run_id + in: path + required: true + schema: + type: string + responses: + '204': + description: No Content + + /pipeline-run-results/: + get: + summary: GET a list of pipeline run results + tags: + - pipeline-run-results + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-result-list' + post: + summary: POST/create a pipeline run result + tags: + - pipeline-run-results + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-result' + responses: + '201': + description: Created + /pipeline-run-results/{pipeline_run_result_id}: + get: + summary: GET a pipeline run result by ID + tags: + - pipeline-run-results + parameters: + - name: pipeline_run_result_id + in: path + required: true + schema: + type: string + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-result' + put: + summary: PUT/update a pipeline run result by ID + tags: + - pipeline-run-results + parameters: + - name: pipeline_run_result_id + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-result' + responses: + '200': + description: OK + delete: + summary: DELETE a pipeline run result by ID + tags: + - pipeline-run-results + parameters: + - name: pipeline_run_result_id + in: path + required: true + schema: + type: string + responses: + '204': + description: No Content + + /pipeline-run-result-votes/: + get: + summary: GET a list of pipeline run result votes + tags: + - pipeline-run-result-votes + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-result-vote-list' + post: + summary: POST/create a pipeline run result vote + tags: + - pipeline-run-result-votes + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-result-vote' + responses: + '201': + description: Created + /pipeline-run-result-votes/{pipeline_run_result_vote_id}: + get: + summary: GET a pipeline run result vote by ID + tags: + - pipeline-run-result-votes + parameters: + - name: pipeline_run_result_vote_id + in: path + required: true + schema: + type: string + responses: + '200': + description: OK + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-result-vote' + put: + summary: PUT/update a pipeline run result vote by ID + tags: + - pipeline-run-result-votes + parameters: + - name: pipeline_run_result_vote_id + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/pipeline-run-result-vote' + responses: + '200': + description: OK + delete: + summary: DELETE a pipeline run result vote by ID + tags: + - pipeline-run-result-votes + parameters: + - name: pipeline_run_result_vote_id + in: path + required: true + schema: + type: string + responses: + '204': + description: No Content /studysets/: get: summary: GET a list of studysets @@ -1010,6 +1379,108 @@ paths: - JSON-Web-Token: [] components: schemas: + pipeline: + type: object + properties: + id: + type: string + name: + type: string + description: + type: string + version: + type: string + study_dependent: + type: boolean + ace_compatible: + type: boolean + pubget_compatible: + type: boolean + derived_from: + type: string + pipeline-list: + type: object + properties: + results: + type: array + items: + $ref: '#/components/schemas/pipeline' + metadata: + $ref: '#/components/schemas/metadata' + pipeline-config: + type: object + properties: + id: + type: string + config: + type: object + pipeline-config-list: + type: object + properties: + results: + type: array + items: + $ref: '#/components/schemas/pipeline-config' + metadata: + $ref: '#/components/schemas/metadata' + pipeline-run: + type: object + properties: + id: + type: string + status: + type: string + started_at: + type: string + finished_at: + type: string + pipeline-run-list: + type: object + properties: + results: + type: array + items: + $ref: '#/components/schemas/pipeline-run' + metadata: + $ref: '#/components/schemas/metadata' + pipeline-run-result: + type: object + properties: + id: + type: string + pipeline_run_id: + type: string + data: + type: object + pipeline-run-result-list: + type: object + properties: + results: + type: array + items: + $ref: '#/components/schemas/pipeline-run-result' + metadata: + $ref: '#/components/schemas/metadata' + pipeline-run-result-vote: + type: object + properties: + id: + type: string + pipeline_run_result_id: + type: string + user_id: + type: string + vote: + type: integer + pipeline-run-result-vote-list: + type: object + properties: + results: + type: array + items: + $ref: '#/components/schemas/pipeline-run-result-vote' + metadata: + $ref: '#/components/schemas/metadata' studyset-return: title: studyset-return x-examples: {}