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

# Authentication & Teams

> Choose the right account, create a key, and understand Personal and Team availability.

## Base URL and account

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

Personal and Team keys use the same base URL. Your key selects the asset library,
billing account and generation configuration. Teams do not need a separate
client or customer-specific hostname. For a test deployment, use the
base URL shown in **API Access** and keep the same `/v1` paths.

Select **Personal** or your **Team** in Gizmo before creating a key. Personal keys
use your own assets and credits; Team keys use that Team's shared assets and credits.
The API calls a Team a `workspace` in some field names and error codes.

### Available features

| Capability | Personal key | Team key |
| - | - | - |
| Upload references, generate one asset, list assets, poll jobs, cancel a job | Available | Available when Team API access is enabled |
| Export an asset | Available formats depend on the asset | Available formats depend on its accepted release |
| Batch generation, saved-file download links, export-only retry | Not available | Available when enabled for the Team |
| Live job events (SSE), API-key request usage, delete an asset | Available | Not yet available |

**Team integrations: use polling for progress.** Job event streams, `GET /v1/usage`
and `DELETE /v1/assets/{id}` currently return `403 workspace_route_unavailable`
with a Team key. This is an unsupported operation, not an invalid key or a
transient error. Do not retry it. Use job/batch polling for progress and Team Billing for the current balance.

This guide and the API reference describe one API. The table shows current
availability; it does not promise that every operation works with both key types.

## Authentication

Open **API Access** in the selected account, create a key, and send it with every request:

```text theme={null}
Authorization: Bearer gzm_k1_YOUR_KEY
```

## Verify your key

```bash theme={null}
curl --fail-with-body "https://api.gizmo.antimlabs.com/v1/whoami" \
  -H "Authorization: Bearer $GIZMO_API_KEY"
```

Keep API keys on your server. Do not embed them in a browser app or commit them to source control.

[Endpoint reference](/api-reference/account/current-user-info) · [Generate your first asset](/api-generate)


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