Pierwsze kroki
Paginacja
Trzy rodzaje list używają trzech stylów paginacji. Wybieraj endpoint według tego, czego potrzebujesz, a nie tylko według zestawu filtrów.
| Numery stron | Kursor przewijania | Kursor ID | |
|---|---|---|---|
| Endpointy | /search, /car-options | /cars | /countries, /locations |
| Żądanie | page, perPage | Podążaj za next_url | after_id, per_page |
| Rozmiar strony | 2–50, domyślnie 50 | 1–2000, domyślnie 500 | 1–1000, domyślnie 100 |
| Limit głębokości | page × perPage ≤ 10 000 | Brak, kursor żyje 1–15 min | Brak |
| Zakończ, gdy | links.next ma wartość null | scroll_id ma wartość null | meta.has_more ma wartość false |
| Zastosowanie | Wyszukiwanie dla użytkowników | Synchronizacja całej oferty | Synchronizacja słowników |
Dwie osobliwości /search, które trzeba obsłużyć w kodzie. data może zawierać o jeden samochód więcej niż perPage (widzieliśmy 3 samochody dla perPage=2), więc przytnij wynik po stronie klienta, jeśli potrzebujesz dokładnego rozmiaru. Ponadto meta.total zatrzymuje się na 10 000: traktuj tę wartość jako "10 000 lub więcej" i wywołaj /search/count z tymi samymi filtrami, aby uzyskać dokładną liczbę.
/search · links i metaNa żywo
{
"links": {
"first": "https://api.lotarius.com/search?perPage=2&page=1",
"last": "https://api.lotarius.com/search?perPage=2&page=5000",
"prev": null,
"next": "https://api.lotarius.com/search?perPage=2&page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 5000,
"path": "https://api.lotarius.com/search",
"per_page": 2,
"to": 3,
"total": 10000
}
}/countries · metaNa żywo
{
"data": [
"…3 countries…"
],
"meta": {
"per_page": 3,
"has_more": true,
"next_after_id": 3
}
}