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

# Deploy

> Nasazení chatu do produkce

Nasadí chat do produkce. Spustí deployment na Vercel a okamžitě vrátí odpověď.

## Požadavek

```
POST /api/chat/{chatId}/deploy
```

### Hlavičky

| Hlavička        | Povinná | Popis               |
| --------------- | ------- | ------------------- |
| `Authorization` | Ano     | `Bearer macaly_...` |

### Parametry cesty

| Parametr | Typ    | Popis                          |
| -------- | ------ | ------------------------------ |
| `chatId` | string | ID chatu, který chcete nasadit |

### Příklad požadavku

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://www.macaly.com/api/chat/abc123/deploy \
    -H "Authorization: Bearer macaly_abc123..."
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    `https://www.macaly.com/api/chat/${chatId}/deploy`,
    {
      method: 'POST',
      headers: {
        'Authorization': 'Bearer macaly_abc123...',
      },
    }
  );

  const data = await response.json();
  console.log(data.url);
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      f'https://www.macaly.com/api/chat/{chat_id}/deploy',
      headers={
          'Authorization': 'Bearer macaly_abc123...',
      },
  )

  data = response.json()
  print(data['url'])
  ```
</CodeGroup>

## Odpověď

```json theme={null}
{
  "id": "jzga0sttml37v6mbizb8tk1x",
  "url": "https://macaly-staging-abc123.macaly.app",
  "status": "QUEUED",
  "deploymentId": "dpl_HKLBd2QDTwq58AMUJiaMyUzk8WUw"
}
```

### Pole odpovědi

| Pole           | Typ                        | Popis                     |
| -------------- | -------------------------- | ------------------------- |
| `id`           | string                     | ID nasazení v databázi    |
| `url`          | string                     | URL nasazené aplikace     |
| `status`       | `"QUEUED"` \| `"BUILDING"` | Počáteční stav            |
| `deploymentId` | string                     | ID deploymentu na Vercelu |

## Stavové kódy

| Kód | Popis                                                            |
| --- | ---------------------------------------------------------------- |
| 200 | Úspěch – nasazení spuštěno                                       |
| 400 | Neplatný požadavek (např. chat neobsahuje žádné zprávy)          |
| 401 | Neplatný nebo chybějící API klíč                                 |
| 403 | Nedostatečná oprávnění k nasazení, nebo chat nepatří vašemu týmu |
| 404 | Chat nenalezen                                                   |
| 500 | Chyba serveru                                                    |

## Poznámky

<Info>
  Tento endpoint vrátí odpověď ihned po spuštění nasazení. Samotné nasazení probíhá asynchronně na Vercelu.
</Info>

* Průběh nasazení sledujte pomocí [`GET /api/chat/{chatId}/deployment`](/cs/api/get-deployment)
* Vyžaduje oprávnění `hosting.publish_macaly`

## Další kroky

Po spuštění nasazení:

1. **Sledujte průběh** pomocí [`GET /api/chat/{chatId}/deployment`](/cs/api/get-deployment)
2. Počkejte, až se `status` změní na `READY`
