mirror of
https://github.com/Part-DB/Part-DB-server.git
synced 2025-06-21 01:25:55 +02:00
Added documentation about pagination and property filter to API docs.
This commit is contained in:
parent
6387c24c89
commit
915444b5da
2 changed files with 25 additions and 2 deletions
|
@ -11,3 +11,6 @@ api_platform:
|
||||||
access_token:
|
access_token:
|
||||||
name: Authorization
|
name: Authorization
|
||||||
type: header
|
type: header
|
||||||
|
|
||||||
|
defaults:
|
||||||
|
pagination_client_items_per_page: true # Allow clients to override the default items per page
|
|
@ -13,6 +13,7 @@ This allows external applications to interact with Part-DB, extend it or integra
|
||||||
{: .warning }
|
{: .warning }
|
||||||
> This feature is currently in beta. Please report any bugs you find.
|
> This feature is currently in beta. Please report any bugs you find.
|
||||||
> The API should not be considered stable yet and could change in future versions, without prior notice.
|
> The API should not be considered stable yet and could change in future versions, without prior notice.
|
||||||
|
> Some features might be missing or not working yet.
|
||||||
> Also be aware, that there might be security issues in the API, which could allow attackers to access or edit data via the API, which
|
> Also be aware, that there might be security issues in the API, which could allow attackers to access or edit data via the API, which
|
||||||
> they normally should be able to access. So currently you should only use the API with trusted users and trusted applications.
|
> they normally should be able to access. So currently you should only use the API with trusted users and trusted applications.
|
||||||
|
|
||||||
|
@ -69,3 +70,22 @@ API generators which can generate a client library for the API from the schema a
|
||||||
Part-DB provides an interactive documentation for the API, which is available under `/api/docs` (so `https://your-part-db.local/api/docs`).
|
Part-DB provides an interactive documentation for the API, which is available under `/api/docs` (so `https://your-part-db.local/api/docs`).
|
||||||
You can pass your API token in the form on the top of the page, to authenticate yourself and then you can try out the API directly in the browser.
|
You can pass your API token in the form on the top of the page, to authenticate yourself and then you can try out the API directly in the browser.
|
||||||
This is a great way to test the API and see how it works, without having to write any code.
|
This is a great way to test the API and see how it works, without having to write any code.
|
||||||
|
|
||||||
|
## Pagination
|
||||||
|
|
||||||
|
By default all list endpoints are paginated, which means only a certain number of results is returned per request.
|
||||||
|
To get another page of the results, you have to use the `page` query parameter, which contains the page number you want to get (e.g. `/api/categoues/?page=2`).
|
||||||
|
When using JSONLD, the links to the next page are also included in the `hydra:view` property of the response.
|
||||||
|
|
||||||
|
To change the size of the pages (the number of items in a single page) use the `itemsPerPage` query parameter (e.g. `/api/categoues/?itemsPerPage=50`).
|
||||||
|
|
||||||
|
See [API Platform docs](https://api-platform.com/docs/core/pagination) for more infos.
|
||||||
|
|
||||||
|
## Property filter
|
||||||
|
|
||||||
|
Sometimes you only want to get a subset of the properties of an entity, for example when you only need the name of a part, but not all the other properties.
|
||||||
|
You can achieve this using the `properties[]` query parameter with the name of the field you want to get. You can use this parameter multiple times to get multiple fields.
|
||||||
|
For example if you only want to get the name and the description of a part, you can use `/api/parts/123?properties[]=name&properties[]=description`.
|
||||||
|
It is also possible to use this filters on list endpoints (get collection), to only get a subset of the properties of all entities in the collection.
|
||||||
|
|
||||||
|
See [API Platform docs](https://api-platform.com/docs/core/filters/#property-filter) for more infos.
|
Loading…
Add table
Add a link
Reference in a new issue