> ## Documentation Index
> Fetch the complete documentation index at: https://sferadev.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenAPI Clients

> Type-safe auto-generated API clients for various APIs

A collection of type-safe OpenAPI clients automatically generated from their respective OpenAPI specifications. These clients are updated daily to stay in sync with upstream API changes.

## Available Clients

| Package             | Description                         | npm                                                                                                       |
| ------------------- | ----------------------------------- | --------------------------------------------------------------------------------------------------------- |
| `vercel-api-js`     | Vercel Platform API client          | [![npm](https://img.shields.io/npm/v/vercel-api-js.svg)](https://npmjs.com/package/vercel-api-js)         |
| `v0-api`            | Vercel v0 API client                | [![npm](https://img.shields.io/npm/v/v0-api.svg)](https://npmjs.com/package/v0-api)                       |
| `cloudflare-api-js` | Cloudflare API client               | [![npm](https://img.shields.io/npm/v/cloudflare-api-js.svg)](https://npmjs.com/package/cloudflare-api-js) |
| `netlify-api`       | Netlify API client                  | [![npm](https://img.shields.io/npm/v/netlify-api.svg)](https://npmjs.com/package/netlify-api)             |
| `zoom-api-js`       | Zoom API client                     | [![npm](https://img.shields.io/npm/v/zoom-api-js.svg)](https://npmjs.com/package/zoom-api-js)             |
| `keycloak-api`      | Keycloak Admin & Account API client | [![npm](https://img.shields.io/npm/v/keycloak-api.svg)](https://npmjs.com/package/keycloak-api)           |
| `nuki-api-js`       | Nuki Smart Lock API client          | [![npm](https://img.shields.io/npm/v/nuki-api-js.svg)](https://npmjs.com/package/nuki-api-js)             |
| `litellm-api`       | LiteLLM API client                  | [![npm](https://img.shields.io/npm/v/litellm-api.svg)](https://npmjs.com/package/litellm-api)             |

## Installation

<CodeGroup>
  ```bash npm theme={null}
  npm install vercel-api-js
  ```

  ```bash pnpm theme={null}
  pnpm add vercel-api-js
  ```

  ```bash yarn theme={null}
  yarn add vercel-api-js
  ```
</CodeGroup>

Replace `vercel-api-js` with the package name for your desired API client.

## Usage

### Basic Usage

All clients export typed fetchers for each API endpoint:

```typescript theme={null}
import { Fetchers } from "vercel-api-js";

// Configure the client
const client = Fetchers.createClient({
  baseUrl: "https://api.vercel.com",
  headers: {
    Authorization: `Bearer ${process.env.VERCEL_TOKEN}`,
  },
});

// Make type-safe API calls
const projects = await client.listProjects();
```

### Type Exports

Each client exports TypeScript types for all API schemas:

```typescript theme={null}
import type { Types, Schemas } from "vercel-api-js";

// Use TypeScript types
type Project = Types.Project;

// Use Zod schemas for validation
const projectSchema = Schemas.project;
```

## Features

* **Type-Safe** - Full TypeScript support with auto-generated types
* **Zod Schemas** - Runtime validation with Zod schemas for all API types
* **Auto-Updated** - Daily regeneration from upstream OpenAPI specs
* **Tree-Shakeable** - Only import what you need

## How It Works

These clients are generated using [Kubb](https://kubb.dev) from OpenAPI specifications. The generation process:

1. Fetches the latest OpenAPI spec from the API provider
2. Cleans and normalizes operation IDs and schemas
3. Generates TypeScript types, Zod schemas, and fetch clients
   Updates are automated via GitHub Actions that run hourly to check for spec changes.
