API¶
Version 1¶
Base URL for the API is <url>/api/v1/. All API description have the base implied before the first /.
Order¶
Note
Only for users with ORDERS or DATA_MANAGEMENT.
- /order
- GET
Get a list of all orders where the user is
editor.All orders will be listed for a user with
DATA_MANAGEMENT.
- POST
Add a new order.
Returns the
uuidof the added order.
{ "order": { "title": "New title", "description": "Text as **Markdown**", "authors": ["271206a2-86e7-406a-b881-6b3abc94fd2f"], "generators": ["271206a2-86e7-406a-b881-6b3abc94fd2f"], "organisation": "271206a2-86e7-406a-b881-6b3abc94fd2f", "editors": ["271206a2-86e7-406a-b881-6b3abc94fd2f"], "tags": ["Tag"], "properties": {"Key": "Value"}, } }
- /order/<uuid>
- GET
Get information about the order
uuid.
- DELETE
Delete the order
uuid.
- PATCH
Update the order
uuid.
{ "order": { "title": "New title", "description": "Text as **Markdown**", "authors": ["271206a2-86e7-406a-b881-6b3abc94fd2f"], "generators": ["271206a2-86e7-406a-b881-6b3abc94fd2f"], "organisation": "271206a2-86e7-406a-b881-6b3abc94fd2f", "editors": ["271206a2-86e7-406a-b881-6b3abc94fd2f"], "tags": ["Tag"], "properties": {"Key": "Value"}, } }
- /order/<uuid>/dataset
- POST
Add a new dataset for the order
uuid.Returns the
uuidof the added dataset.
{ "dataset": { "title": "New title", "description": "Text as **Markdown**", "tags": ["Tag"], "properties": {"Key": "Value"}, } }
- /order/<uuid>/log
- GET
Get a list of changes for the order
uuid.
Dataset¶
- /dataset
- GET
Get a list of all datasets.
- /dataset/<uuid>
- GET
Get information about the dataset
uuid.
- DELETE
Delete the dataset
uuid.
- PATCH
Update the dataset
uuid.
{ "dataset": { "title": "New title", "description": "Text as **Markdown**", "tags": ["Tag"], "properties": {"Key": "Value"}, } }
- /dataset/<uuid>/log
- GET
Get a list of changes done to the dataset
uuid.
Collection¶
- /collection
- GET
Get a list of all collections.
- POST
Add a new collection.
{ "collection": { "title": "New title", "description": "Text as **Markdown**", "tags": ["Tag"], "properties": {"Key": "Value"}, "editors": ["271206a2-86e7-406a-b881-6b3abc94fd2f"], } }
- /collection/<uuid>
- GET
Get information about the collection
uuid.
- DELETE
Delete the collection
uuid.
- PATCH
Update the collection
uuid.
{ "collection": { "title": "New title", "description": "Text as **Markdown**", "tags": ["Tag"], "properties": {"Key": "Value"}, "editors": ["271206a2-86e7-406a-b881-6b3abc94fd2f"], } }
- /collection/<uuid>/log
- GET
Get a list of changes done to the collection
uuid.
User¶
Current User¶
- /user/me
- GET
Get information about the current user.
- PATCH
Update information for the current user.
{ "user: { "affiliation": "University A", "name": "First Last", "orcid": "1111-1111-1111-1115", "contact": "Street 1, 234 56 City", "url": "https://www.example.com", } }
Look Up Users¶
Note
Only for users with USER_MANAGEMENT, or in some cases USER_SEARCH.
- /user
Note
Only for users with
USER_SEARCHorUSER_MANAGEMENT.- GET
Get a list of all users.
Users with
USER_SEARCHwill get a limited set of fields.
- POST
Add a new user.
{ "user: { "affiliation": "University A", "name": "First Last", "orcid": "1111-1111-1111-1115", "contact": "Street 1, 234 56 City", "url": "https://www.example.com", "email": "name@example.com", } }
- /user/<uuid>
- GET
Get information about the user
uuid.
- PATCH
Update information about the user
uuid.
{ "user: { "affiliation": "University A", "name": "First Last", "orcid": "1111-1111-1111-1115", "contact": "Street 1, 234 56 City", "url": "https://www.example.com", "email": "name@example.com", } }
- DELETE
Delete the user
uuid.
- /user/<uuid>/apikey
- POST
Generate a new API key for the user
uuid.The new API key is returned.
- /user/<uuid>/log
- GET
Get a list of changes done to the user
uuid.
- /user/<uuid>/actions
- GET
Get a list of changes done by the user with
uuid.
Log In/Log Out¶
- /logout
- GET
Log out the current user.
- /login/oidc/<auth_name>
- GET
Log in using OpenID Connect (e.g. Elixir AAI) for service
auth_name.
- /login/oidc/<auth_name>/authorize
- GET
Authorize using OpenID Connect (e.g. Elixir AAI) for service
auth_name(vialogin).
- /login/apikey
- GET
Log in using
auth_id+api_key.