Paginierung
Alle Listen-Endpoints der RxScale APIs unterstützen Paginierung über Query-Parameter.
Query-Parameter
| Parameter | Typ | Standard | Beschreibung |
|---|
page | Integer | 0 | Seitennummer (nullbasiert) |
limit | Integer | 50 | Anzahl der Einträge pro Seite |
Seiten sind nullbasiert. Die erste Seite ist page=0, nicht page=1.
Paginierte Endpoints geben Folgendes zurück:
{
"data": [...],
"totalRegistries": 150,
"totalPages": 3
}
data — Array der Einträge für die aktuelle Seite
totalRegistries — Gesamtanzahl der Einträge über alle Seiten
totalPages — Gesamtanzahl der Seiten (berechnet als ceil(totalRegistries / limit))
Limits
| API | Standard-Limit | Maximales Limit |
|---|
| External Pharmacy API | 50 | 200 |
| Management API | 50 | 200 |
| Public API (Produkte) | 50 | 150 |
Wird ein limit über dem Maximum angefordert, wird es auf das Maximum begrenzt.
Beispiel
Abruf der zweiten Seite mit 25 Produkten:
curl -X GET "https://api.rxscale.com/v1/management/products?page=1&limit=25" \
-H "X-API-Key: your-api-key"
Antwort:
{
"data": [
{"uid": "prod_abc", "name": "Product 26"},
{"uid": "prod_def", "name": "Product 27"}
],
"totalRegistries": 75,
"totalPages": 3
}
Durch alle Seiten iterieren
import requests
page = 0
all_items = []
while True:
response = requests.get(
"https://api.rxscale.com/v1/management/products",
headers={"X-API-Key": "your-api-key"},
params={"page": page, "limit": 50}
)
data = response.json()
all_items.extend(data["data"])
if page >= data["totalPages"] - 1:
break
page += 1
Verwenden Sie das kleinste limit, das für Ihren Anwendungsfall sinnvoll ist. Kleinere Seiten bedeuten schnellere Antworten und weniger Speicherverbrauch.