Zum Inhalt springen
BeispielWerk
English

API-Formate: HAL, JSON Pointer, JSON Schema

Neben reinen JSON-Antworten gibt es Formate und Konventionen, die Schnittstellen beschreiben oder strukturieren. Die Seite zeigt HAL-Ressourcen mit _links und _embedded, JSON Pointer nach RFC 6901, ein kleines JSON Schema, den ETag-Ablauf mit 304, User-Agent-Werte und einen WebSocket-Handshake. Sie dient als Referenz beim Entwickeln und Testen von Clients.

15 Varianten auf einer Seite, jede mit eigenem Kopier- oder Download-Knopf. Darunter: 2× Reservierter Bereich, 3× Öffentliches Beispiel.

  • Ablauf mit ETag und 304

    GET /logo.png
    -> 200 OK, ETag: "v1"
    GET /logo.png, If-None-Match: "v1" …

    Kurzer Ablauf in Textform.

  • User-Agent-Wert curl/8.4.0

    curl/8.4.0

    Nur der Wert ohne Headernamen.

  • User-Agent-Wert ExampleBot/1.0Reservierter Bereich

    ExampleBot/1.0 (+https://example.com/bot)

    Nur der Wert; Bot fiktiv.

  • HAL: Ressource mit _links und _embedded

    {
      "id": "RE-2026-0001",
      "betrag_cent": 11900, …

    Hypertext Application Language; Content-Type application/hal+json.

  • HAL: Liste mit Seitenlinks

    {
      "_links": {
        "self": { …

    Links und eingebettete Ressourcen.

  • JSON Pointer (RFC 6901)

    /kunden/0/name
    /kunden/~0abc
    /pfad~1mit~1schraegstrich

    ~0 steht für ~ und ~1 für / in Schlüsseln.

  • JSON Schema, einfaches Beispiel

    {
      "type": "object",
      "required": [ …

    Ohne $schema-Angabe; Muster und Mindestwert prüfbar.

  • WebSocket-Handshake (Anfrage)Reservierter Bereich

    GET /socket HTTP/1.1
    Host: example.com
    Upgrade: websocket …

    Beispiel-Key aus RFC 6455.

  • WebSocket-Handshake (Antwort)

    HTTP/1.1 101 Switching Protocols
    Upgrade: websocket
    Connection: Upgrade …

    Accept ist Base64(SHA-1(Key + GUID)); für den RFC-Beispiel-Key nachgerechnet.

  • WebSocket-Close-CodesÖffentliches Beispiel

    1000 Normal Closure
    1001 Going Away
    1002 Protocol Error …

    Nach RFC 6455; 1006 wird nie gesendet.

  • gRPC-Statuscodes 0 bis 16Öffentliches Beispiel

    0 OK
    1 CANCELLED
    2 UNKNOWN …

    Die 17 Statuscodes von gRPC.

  • gRPC-Code zu HTTP-Status (übliche Zuordnung)Öffentliches Beispiel

    3 INVALID_ARGUMENT -> 400
    5 NOT_FOUND -> 404
    6 ALREADY_EXISTS -> 409 …

    Gängige Abbildung (z. B. in grpc-gateway); nicht normativ.

  • Unix-Zeitstempel (Generator)

    1756305651

    Sekunden seit 1970-01-01, zufällig zwischen 2023 und 2026; nur als Beispielwert.

  • 10 Unix-Zeitstempel (Generator)

    1718578338
    1772159137
    1784990512 …

    Zehn zufällige Zeitstempel in Sekunden, einer pro Zeile.

  • 10 UUIDs als Anfrage-IDs (Generator)

    5cdce15b-8da2-48af-acc3-8dc3dcc1f673
    d7e3b899-69c7-4206-9e1d-2ea678d1715e
    f41d8c2b-ebb0-4406-b291-a34aae3d0c4f …

    Zufällige UUIDs für X-Request-Id oder Korrelations-IDs.

Weitere Themen in Web & API