API
The API allows for integration of our services in your application and is available at https://igsn.uni-kiel.de/api/.
Access types
Each user has an API access type.
Access type |
Description |
---|---|
None |
The user can not access the API. |
Default |
This is the default API access type. The user can access the default API routes. |
Extended |
The user can access the default and extended API routes. |
API keys
If you want to use the API, you’ll need to create an API key first. Here’s how you can do it:
Click on your username.
Select My profile from the dropdown list.
In your profile settings, look for the option to create API keys.
Click the Create API key button to generate your API key.
Routes
Default
Note
To access the default routes, the user needs to have default or extended API access.
Registration requests
Type |
Route |
Description |
---|---|---|
GET |
Retrieves the collection of RegistrationRequest resources. |
|
POST |
Creates a RegistrationRequest resource. |
|
GET |
Retrieves a RegistrationRequest resource. |
|
PUT |
Replaces the RegistrationRequest resource. |
Note
Please note that you can only access your own registration requests.
Repositories
Type |
Route |
Description |
---|---|---|
GET |
Retrieves the collection of Repository resources. |
|
GET |
Retrieves a Repository resource. |
DOI
Type |
Route |
Description |
---|---|---|
GET |
Returns a list of DOIs. |
|
GET |
Retrieves a DOI resource. |
Note
Please note that these routes are mirrored to the DataCite API and you can only access DOIs that are stored in repositories that you have read access to.
Extended
Note
To access the extended routes, the user needs to have extended API access.
DOI
Type |
Route |
Description |
---|---|---|
POST |
Creates a DOI resource. |
|
PUT |
Replaces the Doi resource. |
Note
Please note that these routes are mirrored to the DataCite API and you can only create or update DOIs that are stored in repositories that you have write access to.
Examples
Retrieve the collection of your registration requests
curl -X 'GET' \
'https://igsn.uni-kiel.de/api/registration_requests' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <your-api-key>'
Retrieve a collection of all repositories
curl -X 'GET' \
'https://igsn.uni-kiel.de/api/repositories' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <your-api-key>'
Retrieve a repository by prefix
curl -X 'GET' \
'https://igsn.uni-kiel.de/api/repositories/<prefix>' \
-H 'accept: application/json' \
-H 'Authorization: Bearer <your-api-key>'
Create a registration request
curl -X 'POST' \
'https://igsn.uni-kiel.de/api/registration_requests' \
-H 'accept: application/ld+json' \
-H 'Content-Type: application/ld+json' \
-H 'Authorization: Bearer <your-api-key>' \
-d '{
"title": "My title",
"notes": "some notes",
"repository": "/api/repositories/<prefix>",
"data": [
<your-registration-data>
]
}'