RADAR API Documentation

Target Systems

Development: https://dev-radar.fiz-karlsruhe.de/radar/api

Production: https://radar-service.eu/api

Security

OAuth

Most of the endpoints requires an authenticated escidoc user to perform the action. In the RADAR all authentication is done via OAuth.

An API client has to send a valid OAuth Token in the request header to gain access to specific endpoints.

 

Oauth header

Error handling

  • For secured endpoints: If no OAuth token  is send a 401 error message appears
  • If an invalid OAuth token is send a 403 error message is returned

 

Interested developers can request a clientId, clientPassword, and redirectUrl via email (info@radar-service.eu).

OAuth tokens

 MethodPathQueryReturnImplemented
ReadPOST/tokens 

200, 400, 401, 500

x
DeleteDELETE/tokens 204, 400, 500x
ReadPOST/tokens/refresh 200, 400, 401, 500x
POST body for retrieving oauth tokens  Expand source
POST body for refresh an oauth token  Expand source

Contract

 MethodPathQueryReturnImplemented
CreatePOST/contracts 

201, 400, 401, 403, 500

x
ReadGET/contracts/{id} 200, 401, 403, 404, 500x
UpdatePUT/contracts/{id} 200, 400, 401, 403, 404, 500x
DeleteDELETE/contracts/{id} 200, 401, 403, 404, 500x
Read AdministratorsGET/contracts/{id}/administrators 200, 401, 403, 404, 500x
Change AdministratorsPOST/contracts/{id}/administrators 200, 401, 403, 404, 500x
SearchGET/contracts

sort

offset

rows

query

200, 400x

Example:

POST body for creating a new contract  Expand source
POST body for changing contract administrators  Expand source

Workspace

 MethodPathQueryReturnImplemented
CreatePOST/workspaces 

201, 400, 401, 403, 500

x
ReadGET/workspaces/{id} 200, 401, 403, 404, 500x
UpdatePUT/workspaces/{id} 200, 400, 401, 403, 404, 500x
DeleteDELETE/workspaces/{id} 200, 401, 403, 404, 500x
Read CuratorsGET/workspaces/{id}/curators 200, 401, 403, 404, 500x
Change CuratorsPOST/workspaces/{id}/curators 200, 401, 403, 404, 422, 500x
Read SubCuratorsGET/workspaces/{id}/subcurators 200, 401, 403, 404, 500x
Change SubCuratorsPOST/workspaces/{id}/subcurators 200, 401, 403, 404, 422, 500x
SearchGET/workspaces

sort

offset

rows

query

facetValues[]

200, 400x
FacetsGET/workspaces/facets

facetName

searchQuery

facetQuery

facetValues[]

rows

200, 400x

 

Examples:

POST body for creating a new workspace  Expand source
POST body for changing curators/subcurators  Expand source

Dataset

 MethodPathQueryReturnImplemented
CreatePOST/datasets 

201, 400, 401, 403, 500

x
ReadGET/datasets/{id} 200, 401, 403, 404, 500x
UpdatePUT/datasets/{id} 200, 400, 401, 403, 404, 500x
DeleteDELETE/datasets/{id} 200, 401, 403, 404, 500x
DownloadGET/datasets/{id}/download 200, 401, 403, 404, 500x
SearchGET/datasets

sort

offset

rows

query
facetValues
200, 400x
FacetsGET/datasets/facets

facetName

searchQuery

facetQuery

facetValues[]

rows

200, 400x
PublishPOST/datasets/{id}/publish 200, 401, 403, 404, 422, 500x
ArchivePOST/datasets/{id}/archive 200, 401, 403, 404, 422, 500x
ReviewPOST/datasets/{id}/startreview 200, 401, 403, 404, 422, 500x
PendingPOST/datasets/{id}/endreview 200, 401, 403, 404, 422, 500x
Get XML Descriptive MDGET/datasets/{id}/descriptivemd 200, 401, 403, 404, 422, 500 
Import XML Descriptive MDPOST/datasets/{id}/descriptivemd 200, 401, 403, 404, 422, 500 

 

Examples:

POST body for creating a new dataset  Expand source

Folder

 MethodPathQueryReturnImplemented
CreatePOST

/folders

 

201, 400, 401, 403, 500

x
ReadGET/folders/{id} 200, 401, 403, 404, 500x
UpdatePUT/folders/{id} 200, 400, 401, 403, 404, 500x
DeleteDELETE/folders/{id} 200, 401, 403, 404, 500x
SearchGET

/folders

sort

offset

rows

query

facetValues[]

200, 400x
FacetsGET/folders/facets

facetName

searchQuery

facetQuery

facetValues[]

rows

200, 400x
Import XML Descriptive MDPOST/folders/{id}/descriptivemd 200, 401, 403, 404, 422, 500 

Examples:

POST body for creating a new folder  Expand source

File

 MethodPath ReturnImplemented
CreatePOST

/files

 

201, 400, 401, 403, 500

x
ReadGET/files/{id} 200, 401, 403, 404, 500x
UpdatePUT/files/{id} 200, 400, 401, 403, 404, 500x
DeleteDELETE/files/{id} 200, 401, 403, 404, 500x
SearchGET

/files

sort

offset

rows

query

facetValues[]

200, 400x
FacetsGET/files/facets

facetName

searchQuery

facetQuery

facetValues[]

rows

200, 400x
Import XML Descriptive MDPOST/files/{id}/descriptivemd 200, 401, 403, 404, 422, 500 

Examples:

POST body for creating a new file  Expand source