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

# Create an API Key

> An API key authenticates every request to the Autorender API. Create and manage yours in the dashboard.

An API key authenticates every request you make through code — the REST API, the SDKs, secure uploading and delivery, video encoding, and document conversion. It's unique to your workspace and confidential: anyone who has it can act as your workspace, so treat it like a password.

Only workspace owners can create or delete keys. One key is enough to start; create more when you want a separate key per app or environment, since deleting one leaves the others working.

## Create a key

<Steps>
  <Step title="Open the API Keys page.">
    Sign in to [Autorender](https://app.autorender.io) and click **API Keys** under **Configurations** in the sidebar.
  </Step>

  <Step title="Click Add secret key and save the key immediately.">
    Autorender generates the key at once and shows it a single time in a **Save Your API Key** dialog. Click **Copy** or **Download**, then confirm **I've Saved It**.

    <Warning>
      This is the only time the full key is shown. Autorender stores only a hash of it, so it cannot be displayed again — closing the dialog without saving means you have to create a new key.
    </Warning>
  </Step>
</Steps>

## Use the key in your code

<Steps>
  <Step title="Store the key as an environment variable.">
    Never hardcode the key. Put it in `.env`:

    ```bash .env theme={null}
    AUTORENDER_API_KEY=your-api-key
    ```

    Add `.env` to `.gitignore` if it isn't already there, so the key never lands in version control. Most frameworks do this for you by default.
  </Step>

  <Step title="Pass the key to your client.">
    ```typescript {4} theme={null}
    import Autorender from '@autorender/nodejs';

    const client = new Autorender({
      apiKey: process.env.AUTORENDER_API_KEY,
    });
    ```

    Every backend SDK follows this same pattern — see [SDKs](/docs/resources/sdks) for your language.
  </Step>

  <Step title="Or call the API directly without an SDK.">
    Send the key as a header on any request:

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

    ```text theme={null}
    x-api-key: YOUR_API_KEY
    ```
  </Step>
</Steps>

## Delete a key

On the same **API Keys** page, hover over a key in the list, click the trash icon that appears, then confirm.

<Warning>
  Deleting a key is immediate and permanent. Anything still using it starts failing with `401` errors right away — rotate to a new key first if the key is live in production.
</Warning>

## Next steps

<CardGroup cols={2}>
  <Card title="Quickstart" icon="rocket" iconType="solid" href="/docs/introduction">
    Turn your key into a transformed delivery URL.
  </Card>

  <Card title="Authentication reference" icon="key" iconType="solid" href="/docs/api-reference/introduction">
    Header formats and error responses for the API.
  </Card>
</CardGroup>
