Skip to content

Compatibility

The generator is tested against 128 real-world public API specs on every relevant PR and on a weekly schedule. Specs include payment processors, cloud platforms, developer tools, social platforms, and government APIs covering a wide range of OpenAPI authoring styles. If your spec uses a pattern that exists in the wild, the generator has almost certainly encountered it.

VersionSupport level
OpenAPI 3.1.x (including 3.1.1)Primary target. Full support.
OpenAPI 3.0.xSupported in practice. 8 of the 13 showcase specs are 3.0.x and all compile under tsc --strict. A few 3.0-only constructs such as nullable: true pass through; full 3.0 normalization is a planned feature.
OpenAPI 2.0 (Swagger)Not supported.

OpenAPI 3.1 is the primary target across all packages in the suite.

128 specs live in examples/specs/. Every spec has a corresponding config in examples/configs/. The suite splits into two tiers.

13 specs have their generated output committed to examples/generated/ and tracked in git. The Showcase CI workflow regenerates these on every relevant PR and fails the build if the output has drifted (git diff --exit-code examples/generated/). All 13 generated clients also pass tsc --noEmit --strict.

SpecOpenAPI versionPathsDomain
redocly-museum3.1.05Reference / museum
1password-connect3.0.211Security / secrets
petstore-3.03.0.413Canonical reference
adyen-legal-entity3.1.020Fintech / KYC
adyen-checkout3.1.026Payments
resend3.1.047Email / developer tools
devto3.0.349Developer community
open-meteo3.0.01 (deep schema)Weather
spotify3.0.371Music
twitter3.0.067Social
openai3.0.0~100AI
exchangerate3.0.21Finance / FX rates
canada_holidays3.0.06Public data

Compatibility matrix specs (115 runtime-only)

Section titled “Compatibility matrix specs (115 runtime-only)”

The remaining 115 specs are generated during pnpm test in each package (parameterized tests). Their output is not committed to git. The test suite fails if any spec produces a generator error.

Together with the 13 showcase specs, all 128 specs generate without errors.

The two tiers provide different guarantees.

Showcase specs (13):

  • Output is committed to examples/generated/ and tracked in git.
  • The Showcase workflow regenerates them and runs git diff --exit-code. Any behavior change that affects output fails CI immediately.
  • All generated files pass tsc --noEmit --strict (TypeScript strict mode, no emit).
  • Runs on every PR that touches packages/openapi-gen/**, packages/openapi-react-query/**, packages/openapi-server/**, or examples/**, plus a weekly run on Monday at 6am UTC to catch upstream spec drift.

Compatibility matrix specs (115):

  • Generated at test time by parameterized vitest tests in pnpm test.
  • Checked for generator errors (no crashes, no uncaught exceptions).
  • Output is not type-checked and is not committed.
  • Runs on every PR via the standard CI workflow.

The full 128-spec suite exercises many real-world authoring patterns:

  • Dots in operationIds: calendar.calendars.insert becomes calendarCalendarsInsert (Google API style)
  • Spaces and special characters: operationIds with whitespace, parentheses, or braces are sanitized to valid identifiers
  • Kebab-case operationIds: post-applePay-sessions becomes postApplePaySessions
  • Hyphenated schema names: CapabilityProblemEntity-recursive becomes CapabilityProblemEntityRecursive
  • Array query params: project_ids[] maps to TS property project_ids, wire name project_ids[]
  • Dot-notation query params: place.fields maps to TS property placeFields, wire name place.fields
  • Path-item level parameters: inherited by all operations under that path
  • Schema name conflicts with global types: OpenAI has a schema named Response
  • 100+ query parameters on a single endpoint: Open-Meteo
  • Mixed 3.0.x and 3.1.x specs in the same suite

A sample of the real-world APIs covered: Stripe, GitHub, Google Calendar, Google Drive, Google Sheets, Google Cloud Run, Google Compute, Google GKE, Spotify, Slack, Vercel, Twilio (messaging, verify, video), Plaid, Notion, Jira, Okta, Asana, Bitbucket, Box, Brex, CircleCI, Klarna, Linode, NASA APOD, Pinecone, SendGrid, Square, Webflow, Xero, YouTube, Zoom, Zuora, Adyen, AWS (API Gateway, CloudFormation, Cognito, DynamoDB, IAM, Lambda, RDS, S3, SNS, SQS), Ably, Airflow, Amadeus, Appwrite, BBC, Bigquery, Braze, Bungie, Bunq, ClickSend, ClickUp, Codat, ConfigCat, DigitalOcean, Discourse, Docker, DocuSign, Dracoon, ElevenLabs, eBay (fulfillment, marketing), Flickr, Getty Images, Giphy, Here (positioning, tracking), Lufthansa, Medium, New York Times, Postman, RAWG, Reverb, ShipStation, Shutterstock, Snyk, SoundCloud, StackExchange, Telegram, TomTom (maps, routing), Traccar, Trello, Vimeo, Vonage, Visual Crossing Weather, Wolfram, Wordnik, World Time, and more.