Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Paginering in JSON #605

Open
joeribekker opened this issue Jul 14, 2023 · 1 comment
Open

Paginering in JSON #605

joeribekker opened this issue Jul 14, 2023 · 1 comment
Labels
Status: proposal proposal for change, to be discussed in wg WG: API design rules (extensies) issues regarding API design rules extension(s)

Comments

@joeribekker
Copy link

De huidige, niet normatieve, API Strategie extensie voor navigatie (API-71) schrijft voor dat voor elke GET-response opgevraagd kan worden in de JSON HAL representatie.

Ik interpreteer dit als: Je mag een GET-response opvragen in application/json (staat bijv. bij 3.7.5 Validate content types expliciet) en in application/json+hal representatie.

Vervolgens staat er bij paginering (API-42) een voorbeeld dat typisch een GET-response is in application/json+hal representatie:

{
  "currentPage": 1,
  "nextPage": 2,
  "pageSize": 10,
  "_embedded": {
    "items": [
    ]
  },
  "_links": {
    "self": {
      "href": "https://api.example.org/v1/books"
    },
    "next": {
      "href": "https://api.example.org/v1/books?page=2"
    }
  }
}

Graag zou ik ook eenzelfde API-principe willen zien voor de application/json representatie die niet gebruik maakt van JSON HAL structuur.

Bijvoorbeeld:

{
  "currentPage": 1,
  "self": "https://api.example.org/v1/books",
  "nextPage": 2,
  "next": "https://api.example.org/v1/books?page=2",
  "pageSize": 10,
  "items": [
  ]
}

Paginering is nu net één van die onderdelen die je het liefst over zo veel mogelijk APIs hetzelfde wil hebben.

@mrtn78
Copy link
Collaborator

mrtn78 commented Jul 19, 2023

Goed punt Joeri en duidelijk voordeel om dit eenduidig te houden. Ik heb het issue toegekend aan onze werkgroep design rules

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: proposal proposal for change, to be discussed in wg WG: API design rules (extensies) issues regarding API design rules extension(s)
Projects
None yet
Development

No branches or pull requests

2 participants