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/api.yaml
2020-09-03 10:06:16 +02:00

101 lines
2.9 KiB
YAML

openapi: 3.0.2
info:
title: Digital fingerprint of plastics - API
version: 1.0.0
description: |
This **API** gives access to the project database.
Access is restricted. Authentication can be obtained with HTTP Basic Auth using username and password.
Data access methods can also be accessed using an API key at the URL ending like ?key=xxx
The description lists available authentication methods, also the locks of each method close correspondingly
if the entered authentication is allowed.
There are a number of different user levels:
| | read sample data | add samples/edit own | read spectral data | edit other's data | maintain templates | edit users |
|:-----:|:----------------:|:--------------------:|:------------------:|:-----------------:|:------------------:|:----------:|
| read | yes | no | no | no | no | no |
| write | yes | yes | no | no | no | no |
| dev | yes | yes | yes | yes | yes | no |
| admin | yes | yes | yes | yes | yes | yes |
Password policy:
- at least one digit
- at least one lower case letter
- at least one upper case letter
- at least one of the following special characters: !"#%&'()*+,-./:;<=>?@[\]^_`{|}~
- no whitespace
- at least 8 characters
<br>
x-doc: |
status:
<ul>
<li>-10: deleted</li>
<li>0: newly added/changed</li>
<li>10: validated</li>
</ul>
<a href="https://sourcecode.socialcoding.bosch.com/users/vle2fe/repos/dfop-api/">Bitbucket repository API</a>
<a href="https://sourcecode.socialcoding.bosch.com/users/vle2fe/repos/dfop-ui/">Bitbucket repository UI</a>
<a href="https://definma.apps.de1.bosch-iot-cloud.com/documentation">Documentation page</a>
servers:
- url: https://definma-api.apps.de1.bosch-iot-cloud.com
description: server on the BIC
- url: http://localhost:3000
description: local server
security:
- ApiKey: []
- BasicAuth: []
tags:
- name: /
- name: /sample
- name: /material
- name: /measurement
- name: /template
- name: /model
- name: /user
- name: /help
paths:
allOf:
- $ref: 'root.yaml'
- $ref: 'sample.yaml'
- $ref: 'material.yaml'
- $ref: 'measurement.yaml'
- $ref: 'template.yaml'
- $ref: 'model.yaml'
- $ref: 'user.yaml'
- $ref: 'help.yaml'
components:
parameters:
$ref: 'parameters.yaml'
schemas:
$ref: 'schemas.yaml'
responses:
$ref: 'responses.yaml'
securitySchemes:
BasicAuth:
type: http
scheme: basic
ApiKey:
type: apiKey
in: query
name: key