Ninox API mit pagination callen
Hallo Leute,
ich möchte die Ninox Api von aussen aufrufen, und dabei bestimme Datensätze abholen. Soweit kann man das in der url mit filter query
.../tables/XC/records?filters={"Q3": true}
jetzt könnte es sein, dass die zurückgelieferten Daten zu viel sind, ich hatte was von 500 Einträgen max. gelesen.
Zu diesem Zweck gibt es wohl die Möglichkeit die Ergebnisse Seitenweise abzufragen. Dazu gibt es die Parameter
page=x
perPage=y
die man ebenfalls an die URL anhängt. Ich würde das jetzt grundsätzlich so verstehen, dass man die Seiten reihenweise abfragt, etwa, bei 540 Datensätzen so:
.../tables/XC/records?filters={"Q3": true}&page=1&perPage=200
dann
.../tables/XC/records?filters={"Q3": true}&page=2&perPage=200
dann
.../tables/XC/records?filters={"Q3": true}&page=3&perPage=200
page 3 würde dann nur 140 Einträge liefern.
Das Verhalten bei meinen Tests ist aber irgendwie anders, und ich habe es nicht verstanden. Wie wird das gemacht?
Danke
6 Antworten
-
Ahoi! Du solltest eigentlich mit ... ?filters={"Q3": true}&perPage=1000&page=1 ... alle Datensätze auf einer Seite bekommen...
Und denk dran, bei der Benutzung von "filters" sind die zurückgegebenen Werte im JSON alle mit der fieldId (zb. "Q3" statt "Auswahl") und - noch wichtiger - im root des JSON und nicht unter "fields": abgelegt... -
Ja, als erstes gibst du die perPage-Anzahl an, und dann die Seite. Bei 200 perPage und "page=2" erhältst du dann Datensatz 201 - 400...
Die Anzahl und auch die Seitennummer kannst Du ja in Ninox auch aus Eingabefeldern oder for-Schleifen holen. Du machst dann mehrfache API Abfragen in einer Schleife...
Content aside
- Status Answered
- vor 4 TagenZuletzt aktiv
- 6Antworten
- 52Ansichten
-
2
Folge bereits