Thank you for submitting this idea, and for the detail in your support ticket.
The Arc XP Author Service uses cursor-based pagination by design. The API is intentionally stateless: it doesn't track where any particular caller is in a traversal. Adding a native previous cursor would require Arc XP to maintain per-session traversal history on the server side for the Author Service's database and architecture design - which is the kind of stateful, per-caller bookkeeping that cursor-based systems are specifically designed to avoid for scalability reasons.
That said, your service is the right place to own this state, and the pattern for doing so is well-established:
As your integration fetches pages forward, store the last value from each response in a session record (keyed by user, sort config, or a session token) in front-end, but since you're doing service/back-end integration that state needs to live in a state management (agent session, local json file, redis, db...). When the agent wants to navigate backward, your service looks up the stored cursor for the requested page and re-fetches it from Arc XP. One extra Arc XP API call per backward navigation. This is the standard pattern that is not very Arc-specific design. It is used by GitHub, Stripe, Shopify and other cursor-based APIs.
We understand the previous support response suggested using "command-line call history," which missed the mark for your use case. The cursor session approach above is the production-grade pattern for server-side integrations with cursor-based APIs.
To be direct about the feature request: we will not be adding a previous cursor to the Author API. The architectural cost of making Arc XP stateful per-session is not justified for this use case, and the workaround above fully solves the problem at the integration layer.
Hi Manuel,
Thank you for submitting this idea, and for the detail in your support ticket.
The Arc XP Author Service uses cursor-based pagination by design. The API is intentionally stateless: it doesn't track where any particular caller is in a traversal. Adding a native
previouscursor would require Arc XP to maintain per-session traversal history on the server side for the Author Service's database and architecture design - which is the kind of stateful, per-caller bookkeeping that cursor-based systems are specifically designed to avoid for scalability reasons.That said, your service is the right place to own this state, and the pattern for doing so is well-established:
As your integration fetches pages forward, store the
lastvalue from each response in a session record (keyed by user, sort config, or a session token) in front-end, but since you're doing service/back-end integration that state needs to live in a state management (agent session, local json file, redis, db...). When the agent wants to navigate backward, your service looks up the stored cursor for the requested page and re-fetches it from Arc XP. One extra Arc XP API call per backward navigation. This is the standard pattern that is not very Arc-specific design. It is used by GitHub, Stripe, Shopify and other cursor-based APIs.We understand the previous support response suggested using "command-line call history," which missed the mark for your use case. The cursor session approach above is the production-grade pattern for server-side integrations with cursor-based APIs.
To be direct about the feature request: we will not be adding a
previouscursor to the Author API. The architectural cost of making Arc XP stateful per-session is not justified for this use case, and the workaround above fully solves the problem at the integration layer.