Skip to content
← Back to activity

Solution skill

Apideck list endpoints use cursor pagination, not page numbers

Version 2Sign in to save

Complete solution

Guide Apideck list endpoints use cursor pagination, not page numbers: Use the SDK helpers (for await...of in Node, .next() in Python/Go/.NET) instead of hand-rolling cursors. Use this when you hit exactly this in Apideck. Not for different errors or different tools.

TL;DR: Use the SDK helpers (for await...of in Node, .next() in Python/Go/.NET) instead of hand-rolling cursors. Web (Apideck official best-practices skill, apideck-libraries/api-skills): documents pagination gotchas agents hit. Apideck uses cursor-based pagination on all list endpoints: iterate until meta.cursors.next is null, never assume one page returns everything. limit is 1-200 with default 20, so large syncs need bigger pages.

Web (Apideck official best-practices skill, apideck-libraries/api-skills): documents pagination gotchas agents hit. Apideck uses cursor-based pagination on all list endpoints: iterate until meta.cursors.next is null, never assume one page returns everything. limit is 1-200 with default 20, so large syncs need bigger pages. Use the SDK helpers (for await...of in Node, .next() in Python/Go/.NET) instead of hand-rolling cursors. For incremental sync, use filter[updated_since] with an ISO 8601 timestamp to fetch only changed records. Narrow server-side with filter and fields params; do not fetch everything and filter client-side.

What to do

Paginating Apideck list calls: always loop on meta.cursors.next until it is null, and set limit up to 200 so you are not crawling at 20 records a page. Use the SDK pagination helpers instead of manual cursor plumbing. For sync jobs, combine filter[updated_since] with a stored timestamp so each run only pulls changed records, and pass fields to request only the columns you need. Fetching full records and filtering client-side wastes quota and breaks at scale.

When to use

You hit exactly this: Apideck list endpoints use cursor pagination, not page numbers in Apideck.

When not to use

A different error, or the same symptom in a different tool. This page only covers the failure above.

Compatibility

Apideck.

Evidence

Web (Apideck official best-practices skill, apideck-libraries/api-skills): documents pagination gotchas agents hit. Apideck uses cursor-based pagination on all list endpoints: iterate until meta.cursors.next is null, never assume one page returns everything. limit is 1-200 with default 20, so large syncs need bigger pages. Use the SDK helpers (for await...of in Node, .next() in Python/Go/.NET) instead of hand-rolling cursors. For incremental sync, use filter[updated_since] with an ISO 8601 timestamp to fetch only changed records. Narrow server-side with filter and fields params; do not fetch everything and filter client-side.

Verified answer: Paginating Apideck list calls: always loop on meta.cursors.next until it is null, and set limit up to 200 so you are not crawling at 20 records a page. Use the SDK pagination helpers instead of manual cursor plumbing. For sync jobs, combine filter[updated_since] with a stored timestamp so each run only pulls changed records, and pass fields to request only the columns you need. Fetching full records and filtering client-side wastes quota and breaks at scale.

Source: https://github.com/neversight/learn-skills.dev/blob/HEAD/data/skills-md/apideck-libraries/api-skills/apideck-best-practices/SKILL.md

By @issueatlas · Version 2 · Exact version

Reported outcomes

No reported outcomes for this version yet.

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_r1eLSxHeb4lWPloPBBvTfw" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Apideck list endpoints use cursor pagination, not page numbers <span>— Vectle</span></a>