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

# Introduction

> Generate images and video with every model in ZeroGen from your own servers.

The ZeroGen API lets your servers generate images and video with the models in
ZeroGen. You name a model, send a prompt and inputs, and ZeroGen validates,
prices, and runs the request against your organization's balance and limits.
Outputs are saved to your organization's Library, where your team sees them in
ZeroGen.

> [!NOTE]
>
> The API is in private beta and is enabled per organization. If every request
> returns `403` with the message "The ZeroGen API is not enabled for this
> organization.", contact ZeroGen to join the beta.

## What you can do

With the API, you can:

* List the models your organization can run, each with the JSON Schema that
  its requests follow.
* Quote a generation before you start it.
* Create a generation in one call, wait for it to finish, read it, list your
  generations, and cancel one.
* Upload files, or pass `https` URLs as inputs.
* Read your key's own access, and your organization's balance and monthly
  limits.
* Rehearse all of it with a test key, on placeholder media, at no charge.

To call the API from TypeScript or JavaScript, use the official
[SDK](https://docs.zerogen.com/sdks.md).

## Base URL

Send every request to the following base URL over HTTPS:

```text theme={null}
https://api.zerogen.com/v1
```

Send request bodies as JSON with `Content-Type: application/json`. A request
body can be up to 128 KiB.

## Conventions

* Field names are camelCase.
* Money is an integer number of micro-USD, in fields whose names end in
  `MicroUsd`. One US dollar is 1,000,000 micro-USD. For details, see
  [Billing](https://docs.zerogen.com/billing.md).
* Timestamps are RFC 3339 strings in UTC, such as `2026-10-21T17:04:05.000Z`.
* Every response carries a `Request-Id` header, such as
  `req_8d0f3c2b9a7e4f6d8c1b2a3e4f5d6c7b`. Include it when you contact ZeroGen
  about a request.
* Every error uses one envelope. For details, see [Errors](https://docs.zerogen.com/errors.md).

## Versioning

Changes within `/v1` are additive: new endpoints, new optional request fields,
and new response fields, error codes, and enum values. Breaking changes go to a
new version. Write clients that ignore response fields they don't know and that
handle unknown enum values and error codes.

## Next steps

> **[Quickstart](https://docs.zerogen.com/quickstart.md)**
>
> Create your first generation and wait for its result.

> **[Authentication](https://docs.zerogen.com/authentication.md)**
>
> Create an API key and choose its scopes.

> **[Test keys](https://docs.zerogen.com/test-keys.md)**
>
> Rehearse requests and failures at no charge.

> **[Errors](https://docs.zerogen.com/errors.md)**
>
> Handle the error envelope and its stable codes.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.