normal
Zum Hauptinhalt springen

Kontakte

Nutzer können in Stud.IP sich andere Nutzer als Kontakte merken. Dafür ist kein neuer Ressourcentyp nötig.

Alle Kontakte

curl --request GET \
--url https://example.com/users/<ID>/contacts \
--header "Authorization: Basic `echo -ne "test_autor:testing" | base64`"

Mit dieser Route können alle Kontakte eines Nutzers ausgelesen werden.

HTTP Request

GET /users/{id}/contacts

ParameterBeschreibung
iddie ID des Nutzers

URL-Parameter

keine URL-Parameter

Autorisierung

Jeder Nutzer kann seine eigenen Kontakte sehen.

Alle Kontakt-IDs eines Nutzer

curl --request GET \
--url https://example.com/users/<ID>/relationships/contacts \
--header "Authorization: Basic `echo -ne "test_autor:testing" | base64`"

Mit dieser Route können alle IDs der Kontakte eines Nutzers ausgelesen werden.

(siehe http://jsonapi.org/format/#fetching-relationships)

HTTP Request

GET /users/{id}/relationships/contacts

ParameterBeschreibung
iddie ID des Nutzers

URL-Parameter

keine URL-Parameter

Autorisierung

Jeder Nutzer kann seine eigenen Kontakte sehen.

Kontakte eines Nutzers setzen

curl --request PATCH \
--url https://example.com/users/<ID>/relationships/contacts \
--header "Authorization: Basic `echo -ne "test_autor:testing" | base64`" \
--header "Content-Type: application/vnd.api+json" \
--data '{"data": [ \
{"type": "users","id":"<id1>"}, \
{"type": "users","id":"<id2>"}, \
{"type": "users","id":"<id3>"} \
]}'

Mit dieser Route kann man die alle Kontakte eines Nutzers setzen.

(siehe http://jsonapi.org/format/#crud-updating-to-many-relationships)

HTTP Request

PATCH /users/{id}/relationships/contacts

ParameterBeschreibung
iddie ID des Nutzers

URL-Parameter

keine URL-Parameter

Autorisierung

Jeder Nutzer kann seine eigenen Kontakte setzen.

Kontakte eines Nutzers hinzufügen

curl --request POST \
--url https://example.com/users/<ID>/relationships/contacts \
--header "Authorization: Basic `echo -ne "test_autor:testing" | base64`" \
--header "Content-Type: application/vnd.api+json" \
--data '{"data": [ \
{"type": "users","id":"<id4>"} \
]}'

Mit dieser Route kann man Kontakte eines Nutzers hinzufügen.

(siehe http://jsonapi.org/format/#crud-updating-to-many-relationships)

HTTP Request

POST /users/{id}/relationships/contacts

ParameterBeschreibung
iddie ID des Nutzers

URL-Parameter

keine URL-Parameter

Autorisierung

Jeder Nutzer kann seine eigenen Kontakte setzen.

Kontakte eines Nutzers löschen

curl --request DELETE \
--url https://example.com/users/<ID>/relationships/contacts \
--header "Authorization: Basic `echo -ne "test_autor:testing" | base64`" \
--header "Content-Type: application/vnd.api+json" \
--data '{"data": [ \
{"type": "users","id":"<id1>"}, \
{"type": "users","id":"<id4>"} \
]}'

Mit dieser Route kann man Kontakte eines Nutzers löschen.

(siehe http://jsonapi.org/format/#crud-updating-to-many-relationships)

HTTP Request

DELETE /users/{id}/relationships/contacts

ParameterBeschreibung
iddie ID des Nutzers

URL-Parameter

keine URL-Parameter

Autorisierung

Jeder Nutzer kann seine eigenen Kontakte löschen.