# Quickstart

Prepare your key, choose a model and make your first image request.

## 01 / Prepare your API key

Create a key in My API keys after signing in. Check your balance, membership and model access. Reading the documentation does not require a login.

```bash
export NOVEA_API_KEY="sk-your-key"
export REQUEST_ID="$(uuidgen)"
```

```powershell
$env:NOVEA_API_KEY = "sk-your-key"
$env:REQUEST_ID = [guid]::NewGuid().ToString()
```

## 02 / Check available models

```bash
curl --fail-with-body 'https://noveadream.com/v1/models' \
  -H "Authorization: Bearer $NOVEA_API_KEY"
```

Use a model ID from data[].id. A public model listing does not grant access to every account.

## 03 / Generate an image

```bash
curl --fail-with-body 'https://noveadream.com/v1/images/generations' \
  -H "Authorization: Bearer $NOVEA_API_KEY" \
  -H 'Content-Type: application/json' \
  -H "Idempotency-Key: $REQUEST_ID" \
  -d '{
  "model": "gpt-image-2",
  "prompt": "A ceramic teapot on a sunlit table, soft shadows",
  "size": "1024x1024",
  "quality": "medium",
  "n": 1,
  "response_format": "url"
}'
```

Reuse REQUEST_ID for retries; use a new value for a new generation.

## 04 / Save the result

```json
{
  "created": 1791300000,
  "data": [
    {
      "url": "https://example.com/result.png"
    }
  ]
}
```

Download the image from data[].url. example.com is a placeholder. If generation_pending is returned, the original task may still be running; preserve the idempotency key to avoid duplicate submissions.
