Input OpenAPI. Output SDKs and Docs.
Stripe-level SDKs and Docs
for your API
Input OpenAPI. Output SDKs and Docs.
Stripe-level SDKs and Docs
for your API
Node
Python
Java
Go
Ruby
C#
PHP
import { VellumClient } from “vellum-ai”;
const vellum = new VellumClient({ apiKey: "API_KEY" });
const result = await vellum.documents.list({
documentIndexId: "59ca1aa4-c919-...",
limit: 50,
ordering: ”label”
});
Trusted by
Node
Java
Python
Go
Ruby
C#
import { VellumClient } from “vellum-ai”
const vellum = VellumClient(api_key="API_KEY")
result = await vellum.documents.list({
documentIndexId: "59ca1aa4-c919-...",
limit=50,
ordering=”label”
});
Trusted by
Node
Python
Java
Go
Ruby
C#
PHP
import { VellumClient } from “vellum-ai”;
const vellum = new VellumClient({ apiKey: "API_KEY" });
const result = await vellum.documents.list({
documentIndexId: "59ca1aa4-c919-...",
limit: 50,
ordering: ”label”
});
Trusted by
Our products
Our products
Our products
SDKs
Offer type-safe SDKs in the most popular languages
Let Fern do the heavy lifting of generating and publishing client libraries so your team can focus on building the API.
SDKs
Offer type-safe SDKs in the most popular languages
Let Fern do the heavy lifting of generating and publishing client libraries so your team can focus on building the API.
Step 1
Step 1
Step 1
Import your API
Import your API
Import your API definition, whether it's in OpenAPI or Fern's simpler format.
Import your API definition, whether it's in OpenAPI or Fern's simpler format.
openapi: 3.0.3
paths:
"/benefits/{id}":
get:
operationId: benefits_retrieve
description: Retrieves a `Benefit` object
parameters:
- …
Fern Definition
OpenAPI specification
openapi: 3.0.3
paths:
"/benefits/{id}":
get:
operationId: benefits_retrieve
description: Retrieves a `Benefit` object
parameters:
- …
Fern Definition
OpenAPI specification
openapi: 3.0.3
paths:
"/benefits/{id}":
get:
operationId: benefits_retrieve
description: Retrieves a `Benefit` object
parameters:
- …
Fern Definition
OpenAPI specification
Step 2
Step 2
Generate your SDKs
Generate your SDKs
Generate your
SDKs
Select which code generators you'd like to use:
TypeScript, Python, Java, Go, Ruby, C#, Swift
Select the code generators you'd like to use:
TypeScript, Python, Java, Go
*Ruby and C# are coming soon
Step 3
Step 3
Publish your packages
Publish your packages
Publish your
packages
Fern semantically versions and publishes packages to each registry (e.g. npm, pypi, maven).
Fern semantically versions and publishes packages to each registry
(e.g. npm, pypi, maven).
Docs
Beautiful API documentation that reflects your brand
API docs that auto-update — no human touches required.
SDK code snippets
Integrate in CI
Versioning
Markdown support
Docs
Beautiful API documentation that reflects your brand
API docs that auto-update — no human touches required.
SDK code snippets
Integrate in CI
Versioning
Markdown support
Docs
Beautiful API documentation that reflects your brand
API docs that auto-update — no human touches required.
SDK code snippets
Integrate in CI
Versioning
Markdown support
Docs
Beautiful API documentation that reflects your brand
API docs that auto-update — no human touches required.
SDK code snippets
Integrate in CI
Versioning
Markdown support
v2.3
Products
Blog
Get an API Key
Search...
Help Center
Changelog
API Reference
Introduction
Execute Workflow Stream
Generate
Generate Stream
Submit Completion Actuals
Submit Workflow Execution Actuals
API Reference
Deployments
Document Indexes
Documents
Partial Update Document
List Documents
Destroy Document
Upload Document
API Reference
List Document
POST
/
v2
/
search
This endpoint lists all documents. You may optionally filter using query parameters.
Request
document_index_id
optional string
Filter down to only those documents that are included in the specified index. You may provide either the Vellum-generated ID or the unique name of the index specified upon initial creation.
limit
optional integer
Number of results to return per page. Must be included when `do_not_bill` is `False`. Some other random text.
offset
string
Please always include this when you have it, even for cash-only claims. Filter down to only those documents that are included in the specified index.
offset
string
Please always include this when you have it, even for cash-only claims. Filter down to only those documents that are included in the specified index.
Response
doctor ID
string
This is just a descripiton.
Triangle
int
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
Square
int
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
14 properties
Circle
int
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
14 properties
Errors
403
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Configuration
404
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
14 properties
404
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
14 properties
API v2.1
This endpoint is used to buy an NFT on the marketplace. The provider who referred the services that were rendered. All physicians who order services or refer Medicare beneficiaries must report this data. If a claim involves multiple referring physicians, create a separate encounter for each physician.
Set the thing to
API-201
and then you’ll get a bunch of cool new stuff.
Do this
X-API-Version
and then do that.
New fields
––
Added
paymentMethod.descriptor
and
paymentMethod.paymentType
––
Removed
xy.name
and
blue-green
from the client session
from the client session
––
Added
paymentMethod.descriptor
on the request and response
from the client session
REQUEST
GET
Node.js
import { VellumClient } from “vellum-ai”
const vellum = VellumClient(api_key="API_KEY")
result = await vellum.documents.list({
documentIndexId: "59ca1aa4-c919-...",
limit=50,
ordering=”label”
});
RESPONSE
{
"count": 10,
"next": "https://api.vellum.ai/next?page=2",
"previous": "null",
"results": [
{
"id": "6289e235-88c6-425e-97be-cdb419fddd52",
"external_id": "doc_e65ce15c",
"last_uploaded_at": "2023-09-27T00:03:22Z",
"label": "idiomnatic",
"processing_state": "PROCESSED",
"status": "ACTIVE",
"keywords": [
"classification",
"sorting",
]
}
]
}
What developers are saying
What developers are saying
Kian Hooshmand
Co-founder at Vocode
So much better than the openapi generators!
Gil Feig
CTO at Merge.dev
We used an alternative SDK generator for years, and customers constantly complained. Since adopting Fern, customers have migrated rapidly to our new SDKs and have been blown away by the quality.
Steve Yazicioglu
Head of Engineering
at Candid Health
Fern sped up new API development by at least 50%.
The bits sped up are the most tedious, annoying parts. 🔥
Joe McKenney
CTO at Dopt
The sleek and modern CLI made integrating Fern into our monorepo’s versioning and publishing workflows trivial.
Noah Flaherty
CTO at Vellum
We use Fern to autogenerate our Python and Node API clients from our OpenAPI spec. The clients are high quality, easy to update, and the Fern team moves blazing fast on feature requests.
Ashley Mulligan
Head of Developer Experience
at Flatfile
The Node.js library they produce is idiomatic and very similar to how we’d write it manually: the SDK is resource-based and Fern natively supports union types.
A monumental improvement to the Flatfile developer experience versus the OpenAPI generator.
Andrew Israel
CEO at PropelAuth
I really dislike most autogenerated code, but Fern’s genuinely feels like we have a developer writing it - would highly recommend.
Nikolas Huebecker
Co-founder at Onward
We migrated our API and SDK to them over a weekend. They provide exceptional support!
Sandeep Dinesh
CTO at Mercoa
We use Fern to build our API and UI elements, and couldn’t be happier! End to end type safety and client/server generation gives us the ability to move very quickly.
Even better, we get great SDKs and API docs without any additional work!
Joe McKenney
CTO at Dopt
The sleek and modern CLI made integrating Fern into our monorepo’s versioning and publishing workflows trivial.
Sandeep Dinesh
CTO at Mercoa
We use Fern to build our API and UI elements, and couldn’t be happier! End to end type safety and client/server generation gives us the ability to move very quickly.
Even better, we get great SDKs and API docs without any additional work!
Noa Flaherty
CTO at Vellum
We use Fern to autogenerate our Python and Node API clients from our OpenAPI spec. The clients are high quality, easy to update, and the Fern team moves blazing fast on feature requests.
Robust
Robust
Idiomatic
Each SDK gives the impression of being hand-written by an expert in the language.
Idiomatic
Each SDK gives the impression of being hand-written by an expert in the language.
Idiomatic
Each SDK gives the impression of being hand-written by an expert in the language.
Strongly typed
Get type safety and auto-complete when you hover your cursor over a type in the SDK.
Strongly typed
Get type safety and auto-complete when you hover your cursor over a type in the SDK.
Strongly typed
Get type safety and auto-complete when you hover your cursor over a type in the SDK.
Retry logic
Choose a retry mechanism for API calls, such as exponential backoff.
Retry logic
Choose a retry mechanism for API calls, such as exponential backoff.
Retry logic
Choose a retry mechanism for API calls, such as exponential backoff.
Flexible
Flexible
Add custom code
Enrich the automatically generated code with custom additions, such as utility functions or a wrapper around the generated client.
Add custom code
Enrich the automatically generated code with custom additions, such as utility functions or a wrapper around the generated client.
Add custom code
Enrich the automatically generated code with custom additions, such as utility functions or a wrapper around the generated client.
Server-sent events
SDK users get autocompletion for events returned by the API and can traverse through them with a simple `for` loop.
Server-sent events
SDK users get autocompletion for events returned by the API and can traverse through them with a simple `for` loop.
Server-sent events
SDK users get autocompletion for events returned by the API and can traverse through them with a simple `for` loop.
Webhooks
Get webhook functions to set up webhook endpoints, manage incoming payloads, and validate signatures to confirm the authenticity of the requests.
Webhooks
Get webhook functions to set up webhook endpoints, manage incoming payloads, and validate signatures to confirm the authenticity of the requests.
Webhooks
Get webhook functions to set up webhook endpoints, manage incoming payloads, and validate signatures to confirm the authenticity of the requests.
Automated
Automated
CI/CD integration
Use the Fern CLI in your build process to automatically generate code and update your SDKs.
CI/CD integration
Use the Fern CLI in your build process to automatically generate code and update your SDKs.
CI/CD integration
Use the Fern CLI in your build process to automatically generate code and update your SDKs.
GitHub app
We'll open a PR to update your SDK repo whenever your API changes.
GitHub app
We'll open a PR to update your SDK repo whenever your API changes.
GitHub app
We'll open a PR to update your SDK repo whenever your API changes.
SDK code snippets
Show developers how to use your SDKs. The code examples are populated in your documentation automatically.
SDK code snippets
Show developers how to use your SDKs. The code examples are populated in your documentation automatically.
SDK code snippets
Show developers how to use your SDKs. The code examples are populated in your documentation automatically.
Built by a team from
and
We are fortunate to work with some of the best investors in the world
We are fortunate to work with some of the best investors in the world
Abhinav Asthana
CEO, Postman
Abhinav Asthana
CEO, Postman
Abhinav Asthana
CEO, Postman
Abhinav Asthana
CEO, Postman
Arash Ferdowsi
Co-founder, Dropbox
Arash Ferdowsi
Co-founder, Dropbox
Arash Ferdowsi
Co-founder, Dropbox
Arash Ferdowsi
Co-founder, Dropbox
Cindy Bi
General Partner, CapitalX
Cindy Bi
General Partner, CapitalX
Cindy Bi
General Partner, CapitalX
Cindy Bi
General Partner, CapitalX
Jo Zhu
Investor, Pear VC
Jo Zhu
Investor, Pear VC
Jo Zhu
Investor, Pear VC
Jo Zhu
Investor, Pear VC
Avlok Kohli
CEO, AngelList
Avlok Kohli
CEO, AngelList
Avlok Kohli
CEO, AngelList
Avlok Kohli
CEO, AngelList
Benny Joseph
CTO, Allbirds
Benny Joseph
CTO, Allbirds
Benny Joseph
CTO, Allbirds
Benny Joseph
CTO, Allbirds
Austen Allred
CEO, BloomTech
Austen Allred
CEO, BloomTech
Austen Allred
CEO, BloomTech
Austen Allred
CEO, BloomTech
Reed McGinley-Stempel
CEO, Stytch
Reed McGinley-Stempel
CEO, Stytch
Reed McGinley-Stempel
CEO, Stytch
Reed McGinley-Stempel
CEO, Stytch
Katey Caldwell
Investor, TwentyTwo VC
Katey Caldwell
Investor, TwentyTwo VC
Katey Caldwell
Investor, TwentyTwo VC
Katey Caldwell
Investor, TwentyTwo VC
Start building with Fern
Start building with Fern
SDKs
Offer type-safe SDKs in the most popular languages
Let Fern do the heavy lifting of generating and publishing client libraries so your team can focus on building the API.
SDKs
Offer type-safe SDKs in the most popular languages
Let Fern do the heavy lifting of generating and publishing client libraries so your team can focus on building the API.
Step 1
Import your API
Import your API definition, whether it's in OpenAPI or Fern's simpler format.
openapi: 3.0.3
paths:
"/benefits/{id}":
get:
operationId: benefits_retrieve
description: Retrieves a `Benefit` object
parameters:
- …
Fern Definition
OpenAPI specification
openapi: 3.0.3
paths:
"/benefits/{id}":
get:
operationId: benefits_retrieve
description: Retrieves a `Benefit` object
parameters:
- …
Fern Definition
OpenAPI specification
Step 2
Generate your SDKs
Select the code generators you'd like to use:
TypeScript, Python, Java, Go
*Ruby is coming soon