Archived
2
This repository has been archived on 2023-03-02. You can view files and clone it, but cannot push or open issues or pull requests.
definma-api/api/sample.yaml

239 lines
6.8 KiB
YAML
Raw Normal View History

2020-04-21 10:53:07 +02:00
/samples:
get:
2020-05-06 14:39:04 +02:00
summary: all samples in overview
2020-04-23 13:59:45 +02:00
description: 'Auth: all, levels: read, write, maintain, dev, admin'
2020-05-18 14:47:22 +02:00
x-doc: returns only samples with status 10
2020-04-21 10:53:07 +02:00
tags:
- /sample
2020-06-15 12:49:32 +02:00
parameters:
- name: status
description: 'values: validated|new|all, defaults to validated'
in: query
schema:
type: string
example: all
2020-04-21 10:53:07 +02:00
responses:
200:
description: samples overview
content:
application/json:
schema:
2020-05-06 14:39:04 +02:00
type: array
items:
$ref: 'api.yaml#/components/schemas/SampleRefs'
2020-06-15 12:49:32 +02:00
400:
$ref: 'api.yaml#/components/responses/400'
2020-04-21 10:53:07 +02:00
401:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/401'
2020-04-21 10:53:07 +02:00
500:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/500'
2020-05-18 14:47:22 +02:00
/samples/{state}:
2020-05-18 14:47:22 +02:00
parameters:
- $ref: 'api.yaml#/components/parameters/State'
2020-05-18 14:47:22 +02:00
get:
summary: all new/deleted samples in overview
description: 'Auth: basic, levels: maintain, admin'
x-doc: returns only samples with status 0/-1
tags:
- /sample
responses:
200:
description: samples overview
content:
application/json:
schema:
type: array
items:
$ref: 'api.yaml#/components/schemas/SampleRefs'
401:
$ref: 'api.yaml#/components/responses/401'
500:
$ref: 'api.yaml#/components/responses/500'
2020-04-21 10:53:07 +02:00
/sample/{id}:
parameters:
2020-04-29 12:10:27 +02:00
- $ref: 'api.yaml#/components/parameters/Id'
2020-04-21 10:53:07 +02:00
get:
summary: sample details
description: 'Auth: all, levels: read, write, maintain, dev, admin<br>Returns validated as well as new measurements'
x-doc: deleted samples are available only for maintain/admin
2020-04-21 10:53:07 +02:00
tags:
- /sample
responses:
200:
description: samples details
content:
application/json:
schema:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/schemas/SampleDetail'
2020-04-21 10:53:07 +02:00
400:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/400'
2020-04-21 10:53:07 +02:00
401:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/401'
2020-04-21 10:53:07 +02:00
404:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/404'
2020-04-21 10:53:07 +02:00
500:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/500'
2020-04-21 10:53:07 +02:00
put:
2020-05-07 21:55:29 +02:00
summary: change sample
2020-05-08 14:41:31 +02:00
description: 'Auth: basic, levels: write, maintain, dev, admin <br>Only maintain and admin are allowed to edit samples created by another user'
2020-05-28 13:05:00 +02:00
x-doc: status is reset to 0 on any changes, deleted samples cannot be changed
2020-04-21 10:53:07 +02:00
tags:
- /sample
2020-04-23 13:59:45 +02:00
security:
- BasicAuth: []
2020-04-21 10:53:07 +02:00
requestBody:
required: true
content:
application/json:
schema:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/schemas/Sample'
2020-04-21 10:53:07 +02:00
responses:
200:
description: samples details
content:
application/json:
schema:
2020-05-07 21:55:29 +02:00
$ref: 'api.yaml#/components/schemas/SampleRefs'
2020-04-21 10:53:07 +02:00
400:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/400'
2020-04-21 10:53:07 +02:00
401:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/401'
2020-04-21 10:53:07 +02:00
403:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/403'
2020-04-21 10:53:07 +02:00
404:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/404'
2020-04-21 10:53:07 +02:00
500:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/500'
2020-04-21 10:53:07 +02:00
delete:
2020-05-07 21:55:29 +02:00
summary: delete sample
2020-05-08 14:41:31 +02:00
description: 'Auth: basic, levels: write, maintain, dev, admin <br>Only maintain and admin are allowed to edit samples created by another user'
2020-05-13 12:06:28 +02:00
x-doc: sets status to -1, notes and references to this sample are also kept, only note_fields are updated accordingly
2020-04-21 10:53:07 +02:00
tags:
- /sample
2020-04-23 13:59:45 +02:00
security:
- BasicAuth: []
2020-04-21 10:53:07 +02:00
responses:
200:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/Ok'
2020-04-21 10:53:07 +02:00
400:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/400'
2020-04-21 10:53:07 +02:00
401:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/401'
2020-04-21 10:53:07 +02:00
403:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/403'
2020-04-21 10:53:07 +02:00
404:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/404'
2020-04-21 10:53:07 +02:00
500:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/500'
2020-05-06 14:39:04 +02:00
2020-05-28 14:41:35 +02:00
/sample/restore/{id}:
parameters:
- $ref: 'api.yaml#/components/parameters/Id'
put:
summary: restore sample
description: 'Auth: basic, levels: maintain, admin'
x-doc: status is set to 0
tags:
- /sample
security:
- BasicAuth: []
responses:
200:
$ref: 'api.yaml#/components/responses/Ok'
401:
$ref: 'api.yaml#/components/responses/401'
403:
$ref: 'api.yaml#/components/responses/403'
404:
$ref: 'api.yaml#/components/responses/404'
500:
$ref: 'api.yaml#/components/responses/500'
2020-05-29 12:22:01 +02:00
/sample/validate/{id}:
parameters:
- $ref: 'api.yaml#/components/parameters/Id'
put:
summary: set sample status to validated
description: 'Auth: basic, levels: maintain, admin'
x-doc: status is set to 10
tags:
- /sample
security:
- BasicAuth: []
responses:
200:
$ref: 'api.yaml#/components/responses/Ok'
400:
$ref: 'api.yaml#/components/responses/400'
401:
$ref: 'api.yaml#/components/responses/401'
403:
$ref: 'api.yaml#/components/responses/403'
404:
$ref: 'api.yaml#/components/responses/404'
500:
$ref: 'api.yaml#/components/responses/500'
2020-05-06 14:39:04 +02:00
/sample/new:
post:
summary: add sample
description: 'Auth: basic, levels: write, maintain, dev, admin. Number property is only for admin when adding existing samples'
2020-05-13 12:06:28 +02:00
x-doc: 'Adds status: 0 automatically'
2020-05-06 14:39:04 +02:00
tags:
- /sample
security:
- BasicAuth: []
requestBody:
required: true
content:
application/json:
schema:
allOf:
- $ref: 'api.yaml#/components/schemas/Sample'
properties:
number:
type: string
readOnly: false
2020-05-06 14:39:04 +02:00
responses:
200:
description: samples details
content:
application/json:
schema:
$ref: 'api.yaml#/components/schemas/SampleRefs'
400:
$ref: 'api.yaml#/components/responses/400'
401:
$ref: 'api.yaml#/components/responses/401'
403:
$ref: 'api.yaml#/components/responses/403'
500:
$ref: 'api.yaml#/components/responses/500'
2020-04-21 10:53:07 +02:00
/sample/notes/fields:
get:
summary: list all existing field names for custom notes fields
2020-05-06 14:39:04 +02:00
description: 'Auth: all, levels: read, write, maintain, dev, admin'
2020-05-18 14:47:22 +02:00
x-doc: integrity has to be ensured
2020-04-21 10:53:07 +02:00
tags:
- /sample
responses:
200:
description: field names and quantity of usage
content:
application/json:
schema:
type: array
items:
properties:
name:
type: string
qty:
type: number
example: 20
2020-04-21 10:53:07 +02:00
401:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/401'
2020-04-21 10:53:07 +02:00
500:
2020-04-29 12:10:27 +02:00
$ref: 'api.yaml#/components/responses/500'