Grundlagen
Paginierung
Listen werden seitenweise geliefert. Folge next_cursor, bis has_more false ist und du alle Objekte hast.
Parameter
Jeder Listen-Endpoint akzeptiert dieselben zwei Parameter, zusätzlich zu seinen eigenen Filtern.
- limitintegerWie viele Objekte eine Seite höchstens enthält, von 1 bis 100. Standardmäßig 25.
- cursorstringDer
next_cursorder vorherigen Seite. Lass ihn für die erste Seite weg.
Das Listenobjekt
- objectstringImmer
list. - dataarrayDie Objekte der Seite.
- has_morebooleanTrue, wenn nach dieser Seite noch eine kommt.
- next_cursorstring oder nullDer Cursor der nächsten Seite, null auf der letzten.
Antwort200
{
"object": "list",
"data": [
{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {}
}
],
"has_more": true,
"next_cursor": "eyJzIjoiMjAyNi0xMS0wNVQxNDowMzo0MC4xMTdaIn0"
}Durch alle Seiten iterieren
Eine Seite kann weniger Objekte als limit enthalten, sogar keine, während has_more noch true ist. Jede Anfrage liest einen begrenzten Ausschnitt des Index, so bleiben Filter auch bei Millionen von Leads schnell. Iteriere immer über has_more und next_cursor, nie über die Anzahl der Objekte.
- Behalte auf jeder Seite dieselben Filter und dieselbe
order. Ein Cursor funktioniert nur mit den Filtern, für die er erstellt wurde, sonst lautet die Antwort 400cursor_invalid. - Cursor sind opak. Erzeuge oder verändere nie selbst einen.
- Objekte sind nach der Reihenfolge der Liste sortiert, bei Gleichstand nach ID, so wiederholt eine Seite nie ein Objekt der vorherigen.
- Bei Zehntausenden Leads ist ein Export schneller als Paginierung.
curl -G https://gemlead.ai/api/v1/leads \
-H "Authorization: Bearer $GEMLEAD_API_KEY" \
-d hot=true \
-d limit=100
# The next page, with the next_cursor of the one before
curl -G https://gemlead.ai/api/v1/leads \
-H "Authorization: Bearer $GEMLEAD_API_KEY" \
-d hot=true \
-d limit=100 \
-d cursor=eyJzIjoiMjAyNi0xMS0wNVQxNDowMzo0MC4xMTdaIn0