Skip to content

fix!: match the backend's standardized single-level pagination shape#50

Merged
lakhansamani merged 2 commits into
mainfrom
fix/pagination-schema-standardization
Jul 23, 2026
Merged

fix!: match the backend's standardized single-level pagination shape#50
lakhansamani merged 2 commits into
mainfrom
fix/pagination-schema-standardization

Conversation

@lakhansamani

Copy link
Copy Markdown
Contributor

Summary

  • The Authorizer backend removed the PaginatedRequest wrapper type entirely (see the corresponding authorizerdev/authorizer PR — a fix(graphql)! breaking-change commit standardizing GraphQL pagination on PaginationRequest directly, matching the proto/gRPC surface, which never had a double-wrapper)
  • This SDK's verificationRequests/webhooks/emailTemplates methods hardcoded PaginatedRequest in both their GraphQL query strings and their Types.PaginatedRequest parameter type — both updated to PaginationRequest directly
  • Breaking change for callers: .webhooks({ pagination: { limit: 10 } }) becomes .webhooks({ limit: 10 }) (same for emailTemplates/verificationRequests)
  • The 6 List*Request types (Clients/TrustedIssuers/SAMLServiceProviders/Organizations/OrgDomains/OrgMembers) needed no change here: their pagination field was already typed as PaginationRequest in this SDK, even though the old backend schema actually required the PaginatedRequest wrapper for those — meaning no strictly-typed caller of this SDK could have constructed the shape the old schema demanded for those 6 endpoints in the first place. The backend fix makes those types correct rather than accidentally correct.

Test plan

  • npx tsc --noEmit clean
  • pnpm build clean
  • Verified against a locally built authorizer image running the backend fix (not yet released): all 26 admin.test.ts integration tests pass (graphql + rest transports), including the 2 test call sites updated to the new flat pagination shape
  • Confirmed against the currently-published quay.io/authorizer/authorizer:latest image (predates the backend fix) that the old server correctly rejects the new shape with Variable "$params" of type "PaginationRequest" used in position expecting type "PaginatedRequest" — expected, and confirms this SDK change is correctly coordinated with (not accidentally divergent from) the backend fix

Please coordinate merging/releasing this alongside the backend fix — until the backend PR ships, this SDK version would send a shape the currently-deployed backend rejects.

BREAKING CHANGE: the Authorizer backend removed the PaginatedRequest
wrapper type entirely (authorizerdev/authorizer, fix(graphql)! commit
standardizing pagination on PaginationRequest directly, matching the
proto/gRPC surface which never had a double-wrapper). This SDK's
verificationRequests/webhooks/emailTemplates methods hardcoded
PaginatedRequest in both their query strings and Types.PaginatedRequest
parameter type - both now updated to PaginationRequest directly.

Callers previously wrote e.g. `.webhooks({ pagination: { limit: 10 } })`;
now write `.webhooks({ limit: 10 })` directly.

The 6 List*Request types (Clients/TrustedIssuers/SAMLServiceProviders/
Organizations/OrgDomains/OrgMembers) needed no change here: their
`pagination` field was already typed as PaginationRequest in this SDK,
even though the old backend schema actually required the PaginatedRequest
wrapper for those - meaning no strictly-typed caller of this SDK could
have constructed the shape the old schema demanded for those 6 endpoints
in the first place. This backend fix makes those types correct rather
than accidentally correct.

Verified against a locally built authorizer image running the backend
fix: all 26 admin.test.ts integration tests pass (graphql + rest), full
build and typecheck clean.
Picks up the backend's pagination schema fix this PR targets.
@lakhansamani
lakhansamani merged commit f50bc1b into main Jul 23, 2026
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant