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

# Autorender API

> Upload, manage, and organize files in your Autorender workspace over HTTPS.

<div className="flex items-center gap-2 mb-8">
  <h1 className="text-4xl font-bold">Autorender API</h1>
  <span className="bg-gray-100 dark:bg-gray-800 text-gray-700 dark:text-gray-300 text-xs px-2 py-1 rounded">v1.0.0</span>
</div>

The Autorender API uploads files to your workspace and manages the files and folders in it. Every request goes over HTTPS and carries your API key.

<div className="border border-gray-200 dark:border-gray-800 rounded-lg mb-8 overflow-hidden">
  <div className="bg-gray-50 dark:bg-white/5 px-4 py-2 border-b border-gray-200 dark:border-gray-800 font-semibold text-sm">
    API Base URL
  </div>

  <div className="p-4 bg-white dark:bg-transparent">
    <div className="flex gap-2 text-sm">
      <span className="font-semibold text-gray-700 dark:text-gray-300">Live Server:</span>
      <code className="text-blue-600 dark:text-blue-400">[https://upload.autorender.io](https://upload.autorender.io)</code>
    </div>
  </div>
</div>

## Authentication

Every request needs your API key. Send it in one of two headers:

```
Authorization: Bearer YOUR_API_KEY
```

```
x-api-key: YOUR_API_KEY
```

Requests over plain HTTP, or requests with no key, fail. We store each key as a SHA-256 hash and never keep the plaintext, so copy your key when you create it — you cannot retrieve it afterward. Create and revoke keys in [the dashboard](https://app.autorender.io); see [Create an API key](/docs/create-an-api-key).

## Response codes

Every endpoint returns one of these status codes. Successful responses are wrapped as `{ "success": true, "data": { ... } }` unless the endpoint notes otherwise.

| Code  | Meaning                                                         |
| ----- | --------------------------------------------------------------- |
| `200` | Request succeeded                                               |
| `400` | The request body or parameters were invalid                     |
| `401` | The API key was missing or invalid                              |
| `404` | The requested file or folder does not exist                     |
| `500` | Autorender hit an unexpected error while processing the request |

## Rate limit

Rate limits apply per endpoint and scale with your plan. Requests that exceed a limit receive a `429` response — pause briefly and retry. Contact us if you need higher limits.

<div className="border border-gray-200 dark:border-gray-800 rounded-lg mb-8 overflow-hidden">
  <div className="bg-gray-50 dark:bg-white/5 px-4 py-2 border-b border-gray-200 dark:border-gray-800 font-semibold text-sm">
    Additional Information
  </div>

  <div className="p-4 text-sm bg-white dark:bg-transparent">
    <div className="flex flex-col gap-2">
      <a href="https://autorender.io/contact" className="text-blue-600 dark:text-blue-400">Contact the Autorender team</a>
      <a href="https://autorender.io/terms" className="text-blue-600 dark:text-blue-400">Terms of Service</a>
    </div>
  </div>
</div>

## Next steps

<CardGroup cols={2}>
  <Card title="Direct upload" icon="cloud-arrow-up" iconType="solid" href="/docs/api-reference/direct-upload">
    Upload a file from your backend with multipart/form-data.
  </Card>

  <Card title="Create an API key" icon="key" iconType="solid" href="/docs/create-an-api-key">
    Generate and manage the keys that authenticate your requests.
  </Card>
</CardGroup>
