...
Hinzufügen einer URL zu einer URN
Löschen einer URL von einer URN
Aktualisieren der Priorität einer URL
...
Um eine zusätzliche URL zu einer URN zu registrieren, kann ein POST
-Request auf den Endpunkt /urns/urn/<urn>/urls
gemacht werden. Zusätzliche URLs dürfen nicht nur an eigenen URNs registriert werden, sondern an beliebigen URNs. Die Angabe des Feldes priority
ist wieder optional.
Codeblock |
---|
POST http://localhost:8080/sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/urls
Authorization: Basic dXJuLXBhcnRuZXI6bWVpbi1wYXNzd29ydA==
Content-Type: application/json
Accept: application/json
{
"url" : "http://example.org/another-document-url",
"priority" : 100
} |
Codeblock |
---|
title | Antwort auf POST /sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/urls |
---|
collapse | true |
---|
|
HTTP/1.1 201 Created
Connection: keep-alive
Location: http://localhost:8080/sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/urls/base64/aHR0cDovL2V4YW1wbGUub3JnL2Fub3RoZXItZG9jdW1lbnQtdXJs
Content-Type: application/json
Content-Length: 466
Date: Wed, 13 Feb 2019 15:11:15 GMT
{
"url": "http://example.org/another-document-url",
"creationDate": "2019-02-13T16:11:15+0100",
"lastModified": "2019-02-13T16:11:15+0100",
"urn": "http://localhost:8080/sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532",
"organisation": "http://localhost:8080/sandbox/v2/organisations/id/1",
"priority": 100,
"@id": "http://localhost:8080/sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/urls/base64/aHR0cDovL2V4YW1wbGUub3JnL2Fub3RoZXItZG9jdW1lbnQtdXJs"
} |
Als Antwort auf das Anlegen einer neuen URL wird der Status 201 Created
zurückgegeben und die Beschreibung der neuen URL zurückgegeben.
Aktualisieren der Priorität einer URL
Um die Priorität einer URL zu ändern, kann ein PATCH
-Request auf die jeweilige URL-Ressource unter dem Endpunkt-Muster /urns/urn/<urn>/urls/base64/<url-in-base64>
gemacht werden.
Codeblock |
---|
PATCH /sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/urls/base64/aHR0cDovL2V4YW1wbGUub3JnL2Fub3RoZXItZG9jdW1lbnQtdXJs
Authorization: Basic dXJuLXBhcnRuZXI6bWVpbi1wYXNzd29ydA==
Content-Type: application/json
Accept: application/json
{
"priority" : 3
} |
Codeblock |
---|
title | Antwort auf PATCH /sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/urls/base64/aHR0cDovL2V4YW1wbGUub3JnL2Fub3RoZXItZG9jdW1lbnQtdXJs |
---|
collapse | true |
---|
|
HTTP/1.1 204 No Content
Date: Wed, 13 Feb 2019 15:16:10 GMT
<Response body is empty> |
Wenn die Änderung der Priorität erfolgreich durchgeführt wurde, liefert die API den Status 204 No Content
zurück.
Löschen einer URL von einer URN
Soll eine URL von einer URN gelöscht werden, so geschieht dies über einen DELETE
-Request auf die URL-Referenz /urns/urn/<urn>/urls/base64/<url-in-base64>
. Dabei können selbstverständlich nur die eigenen URLs gelöscht werden. Außerdem muss mindestens eine URL an der URN registriert bleiben. Wenn die eigene die letzte URL an einer URN ist, kann sie nicht entfernt werden.
Codeblock |
---|
DELETE /sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/urls/base64/aHR0cDovL2V4YW1wbGUub3JnL2Fub3RoZXItZG9jdW1lbnQtdXJs
Authorization: Basic dXJuLXBhcnRuZXI6bWVpbi1wYXNzd29ydA==
Accept: application/json |
Codeblock |
---|
title | Antwort auf DELETE /sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/urls/base64/aHR0cDovL2V4YW1wbGUub3JnL2Fub3RoZXItZG9jdW1lbnQtdXJs |
---|
collapse | true |
---|
|
HTTP/1.1 204 No Content
Date: Wed, 13 Feb 2019 15:22:20 GMT
<Response body is empty> |
Das erfolgreiche Löschen wir durch den Status 204 No Content
zurückgemeldet.
Austauschen aller eigenen URLs an einer URN
Neben dem Hinzufügen und Löschen einzelner URLs bietet die URN-Service API auch die Möglichkeit, alle eigenen URLs durch neue URLs zu ersetzen. Dies geschieht über einen PATCH
-Request an den Endpunkt /urns/urn/<urn>/my-urls
. Der Request muss eine Liste der neuen URLs enthalten. Diese können sich auch teilweise mit den Existierenden überschneiden, falls nur ein Teil der URLs verändert werden soll. Im folgenden Beispiel, soll die existierende URL beibehalten werden, daher ist sie in der Liste enthalten. Allerdings verändern wir ihre Priorität. Zusätzlich registrieren wir eine neue URL. Dabei verzichten wir auf die Angabe der Priorität, sodass die URL die Priorität 0 erhält.
Codeblock |
---|
PATCH /sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/my-urls
Authorization: Basic dXJuLXBhcnRuZXI6bWVpbi1wYXNzd29ydA==
Content-Type: application/json
Accept: application/json
[
{
"url": "http://example.org/document-url",
"priority": 23
},
{
"url": "http://example.org/additional-document-url"
}
] |
Codeblock |
---|
title | Antwort auf PATCH /sandbox/v2/urns/urn/urn:nbn:de:example-2019021315155244513532/my-urls |
---|
collapse | true |
---|
|
(!) Server error (Upps!) |
Nachfolger einer URN setzen
...