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

2.3

Products

Blog

Free trial

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 Documents

GET

/

v2

/

documents

This endpoint lists all documents. You may optionally filter using query parameters.

Query Parameters

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 string

Number of results to return per page.

offset

optional string

The initial index from which to return the results.

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.

REQUEST

GET

Node

import { VellumClient } from “vellum-ai”

const vellum = VellumClient(api_key="API_KEY")

result = await vellum.documents.list({

documentIndexId: "6289e235",

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",

]

}

]

}

Node

Typescript

Python

Java

Go

Ruby

C#

Swift

import { VellumClient } from “vellum-ai”;

const vellum = new VellumClient({ apiKey: "API_KEY" });

result = await vellum.documents.list({

documentIndexId: "59ca1aa4-c919-...",

limit: 50,

ordering: ”label”

});

Trusted by

Webflow
Cohere
ElevenLabs
ElevenLabs
Hume
OctoAI
OctoAI
AssemblyAI

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

Webflow
Cohere
ElevenLabs
ElevenLabs
Hume
OctoAI
OctoAI
AssemblyAI

2.3

Products

Blog

Free trial

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 Documents

GET

/

v2

/

documents

This endpoint lists all documents. You may optionally filter using query parameters.

Query Parameters

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 string

Number of results to return per page.

offset

optional string

The initial index from which to return the results.

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.

REQUEST

GET

Node

import { VellumClient } from “vellum-ai”

const vellum = VellumClient(api_key="API_KEY")

result = await vellum.documents.list({

documentIndexId: "6289e235",

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",

]

}

]

}

Node

Typescript

Python

Java

Go

Ruby

C#

Swift

import { VellumClient } from “vellum-ai”;

const vellum = new VellumClient({ apiKey: "API_KEY" });

result = await vellum.documents.list({

documentIndexId: "59ca1aa4-c919-...",

limit: 50,

ordering: ”label”

});

Trusted by

Webflow
Cohere
ElevenLabs
ElevenLabs
Hume
OctoAI
OctoAI
AssemblyAI

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

Logos
Logos

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).

Maven
Maven
Maven

Java

Ruby

Python

Node

Go

C#

Swift

npm install @mergeapi/merge-node-client

Java

Ruby

Python

Node

Go

C#

Swift

npm install @mergeapi/merge-node-client

Java

Ruby

Python

Node

Go

C#

Swift

npm install @mergeapi/merge-node-client

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

Kian Hooshmand

Co-founder at Vocode

So much better than the openapi generators!

Gil Feig

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

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

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

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

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

Joe McKenney

CTO at Dopt

The sleek and modern CLI made integrating Fern into our monorepo’s versioning and publishing workflows trivial.

Sandeep Dinesh

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

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

Y-Combinator
Abhinav Asthana

Abhinav Asthana

CEO, Postman

Abhinav Asthana

Abhinav Asthana

CEO, Postman

Abhinav Asthana

Abhinav Asthana

CEO, Postman

Abhinav Asthana

Abhinav Asthana

CEO, Postman

Arash Ferdowsi

Arash Ferdowsi

Co-founder, Dropbox

Arash Ferdowsi

Arash Ferdowsi

Co-founder, Dropbox

Arash Ferdowsi

Arash Ferdowsi

Co-founder, Dropbox

Arash Ferdowsi

Arash Ferdowsi

Co-founder, Dropbox

Ian McCrystal

Cindy Bi

General Partner, CapitalX

Ian McCrystal

Cindy Bi

General Partner, CapitalX

Ian McCrystal

Cindy Bi

General Partner, CapitalX

Ian McCrystal

Cindy Bi

General Partner, CapitalX

Jo Zhu

Jo Zhu

Investor, Pear VC

Jo Zhu

Jo Zhu

Investor, Pear VC

Jo Zhu

Jo Zhu

Investor, Pear VC

Jo Zhu

Jo Zhu

Investor, Pear VC

Avlok Kohli

Avlok Kohli

CEO, AngelList

Avlok Kohli

Avlok Kohli

CEO, AngelList

Avlok Kohli

Avlok Kohli

CEO, AngelList

Avlok Kohli

Avlok Kohli

CEO, AngelList

Benny Joseph

Benny Joseph

CTO, Allbirds

Benny Joseph

Benny Joseph

CTO, Allbirds

Benny Joseph

Benny Joseph

CTO, Allbirds

Benny Joseph

Benny Joseph