Migration guides

APIMatic to Sourced migration: what maps and what doesn't

APIMatic generates SDKs in seven languages (Java, Python, TypeScript, Ruby, C#, PHP, Go) plus a branded developer portal, from an API description it converts internally into its own format. A migration to Sourced makes sense when your real footprint is narrower — TypeScript and Python SDKs plus hosted docs from one OpenAPI spec, the shortest path from OpenAPI spec to live docs and SDK previews — and you'd rather not run codegen settings through a separate API Editor UI. If your published SDKs span the other five languages, that's a scope change, not a full replacement: read the "what does NOT map" section below before you start. This is the path to move without breaking a customer's import statement.

When the migration makes sense

Consider Sourced when:

  • TypeScript and Python are the SDKs customers actually install.
  • You want SDK previews and hosted docs generated from the same OpenAPI upload, reviewed in one dashboard.
  • You want free, no-card previews before anything reaches npm, PyPI, or a production docs domain.
  • You don't need APIMatic's other five languages, its API Transformer (15 spec formats), or its dedicated API Portal product.

Stay with APIMatic if your published SDKs already span Ruby, Go, C#, PHP, or Java in production, or if the branded API Portal — with its playground, API governance/linting, and multi-format spec import — is doing real work your team depends on.

Inventory the current APIMatic setup

Find these first:

  • the API description APIMatic imports from — per APIMatic's docs, it accepts OpenAPI, RAML, API Blueprint, and other formats, which it converts internally into its own representation (publicly called the APIMatic format, or SDL)
  • Code Generation Settings — configured mostly through the API Editor UI (Settings > CodeGen Settings), covering things like Project Name, C# namespace, Java package name, PHP namespace, and controller postfixes, per APIMatic's SDK interface customization docs
  • an optional apimatic-metadata.json file, if your team uses it — per APIMatic's docs, this metadata file (filename must start with APIMATIC-META) is bundled in a ZIP alongside the API description to set codegen options in bulk, mainly useful when importing from a format that doesn't carry SDK-specific settings natively
  • generated SDK repos per language, and how they're published (registry, direct download, CI)
  • the API Portal: custom domain, playground config, branding, and any API Recipes or Code Sample API usage
  • Context Plugins or MCP server output, if you've generated either

The thing to flag early: unlike a single-file config such as stainless.yml or liblab.config.json, APIMatic's customization lives mostly in the API Editor's UI state, not in a file you'd check into git. Before migrating, screenshot or export every CodeGen Settings page you rely on — there's no config file to diff against later.

What actually maps to Sourced

Your API description is the portable asset either way. Since APIMatic accepts multiple formats and converts internally, confirm you're working from the actual OpenAPI source (not a round-tripped export of APIMatic's internal format, which can drift from the original spec over time) before uploading to Sourced.

For the languages both tools support — TypeScript and Python — compare:

  • package name and namespace/module path
  • constructor shape and auth setup (APIMatic supports Anonymous, API Key, and OAuth 2.0 depending on language, per its interface docs)
  • method and endpoint-group names (APIMatic's "Controller Postfix" setting affects generated group names — check whether Sourced's naming matches what customers already import)
  • pagination and error handling
  • the generated quickstart/README example

For docs, compare the API Portal's route structure, playground behavior, branding, and whether llms.txt exists today — it's not a standard APIMatic Portal output the way it is with Sourced.

The Sourced migration path

  1. Upload the original OpenAPI spec (not an APIMatic-exported copy) to Sourced.
  2. Generate TypeScript and Python SDK previews.
  3. Generate the hosted docs review site and llms.txt from the same spec.
  4. Compare the SDK public surface and the docs content against your live APIMatic-generated packages and Portal, confirming package names, namespaces, and auth setup match what's already published.

Nothing publishes, pushes, or goes live during this — it's a side-by-side review before you approve anything.

What does NOT map — say it plainly

APIMatic generates SDKs in Java, Python, TypeScript, Ruby, C#, PHP, and Go. Sourced's generated SDKs focus on TypeScript and Python today — the two ecosystems where most API teams publish first. For the other five languages, this is a scope change: Sourced takes over your TypeScript and Python SDKs plus all docs, while Ruby, Go, C#, PHP, and Java keep running on APIMatic (or another generator) in parallel until every language has an approved destination. APIMatic's API Transformer (converting between 15 spec formats), its API governance/linting tooling, its branded multi-format API Portal, and its Context Plugin generation for AI coding tools also have no direct Sourced equivalent. If those are part of why you chose APIMatic, this migration only replaces a slice of what you're using it for.

Comparison

Dimension APIMatic Sourced
Languages Java, Python, TypeScript, Ruby, C#, PHP, Go (7) TypeScript, Python (2)
Input formats OpenAPI, RAML, API Blueprint, and others (via API Transformer) OpenAPI 3.0/3.1
Config Mostly API Editor UI state; optional APIMATIC-META*.json for bulk import settings Dashboard/upload-driven, no local config file
Hosted docs API Portal product (playground, branding, governance) Yes, generated from the same spec
llms.txt Not a standard Portal output Yes
Compatibility diff vs. live SDK Not published in APIMatic's own docs Yes
Entry pricing (as of Sept 2026) Lite Starter: $10/mo (1 portal, 20 endpoints, REST + 1 language SDK), per APIMatic's pricing page Free unlimited previews + 2 hosted noindex docs sites, no card; Launch $99/month per API project to publish

Honest scope

If your team already ships SDKs across most of APIMatic's seven languages, or the API Portal's governance and multi-format import features are load-bearing, migrating to Sourced is a scope change, not a full replacement — see "what does NOT map" above and plan on a parallel run rather than a single cutover. This path is for teams whose actual customer-facing SDKs are TypeScript and Python, who want hosted docs and llms.txt generated in the same pass, and who'd rather review codegen output in a dashboard than maintain UI-configured settings with no file to diff.

FAQ

What artifacts does an APIMatic customer actually have?

An API description (commonly OpenAPI, though APIMatic also accepts RAML and API Blueprint), Code Generation Settings configured mostly through the API Editor UI, generated SDK repos in up to seven languages, and — if used — a branded API Portal and an optional apimatic-metadata.json file for bulk codegen settings on import.

Is there an APIMatic config file like Stainless's stainless.yml?

Not in the same sense. APIMatic's SDK customization mostly lives in the API Editor UI (Settings > CodeGen Settings). The closest thing to a file-based config is apimatic-metadata.json (filename starting with APIMATIC-META), used for bulk settings on import rather than as an ongoing source of truth.

Does Sourced support all the languages APIMatic does?

Not the full set — see "what does NOT map" above for the exact gap and the parallel-run option for the languages Sourced doesn't cover yet.

Can I run APIMatic and Sourced side by side?

Yes. Nothing about generating a Sourced preview requires touching your live APIMatic setup. Some teams keep APIMatic for the languages Sourced doesn't cover and the API Portal's governance features, and use Sourced for the TypeScript/Python-plus-docs slice.

What's APIMatic's current pricing?

As of September 2026, per APIMatic's pricing page: Lite Starter is $10/month (1 API portal, 20 endpoints, REST plus one language SDK), Basic is $300/month per language, Business and Enterprise are quote-based. Check the page directly since packaging can move.

Where do I start?

Validate your original OpenAPI spec with the OpenAPI validator, then create hosted docs from your repo or start free to compare a Sourced-generated TypeScript/Python preview against what APIMatic currently produces.

Bottom line

Migrate from APIMatic to Sourced when TypeScript and Python are the SDKs your customers install, and you want hosted docs plus llms.txt from the same OpenAPI upload without maintaining UI-configured codegen settings across a separate portal product. If Ruby, Go, C#, PHP, or Java SDKs are still live, plan for those to keep running on APIMatic in parallel rather than assuming a single clean cutover — see "what does NOT map" above — and the same goes if the API Portal's governance and multi-format import capabilities are part of what you're paying for.

Try Sourced free, check APIMatic's current pricing directly, or read the Speakeasy migration guide for another language-breadth tradeoff worth comparing.