Přejít na hlavní obsah
GET
/
api
/
chat
/
{chatId}
/
deployment
Get Deployment
curl --request GET \
  --url https://macaly.com/api/chat/{chatId}/deployment \
  --header 'Authorization: Bearer <token>'
Zjistí aktuální stav nasazení chatu. Pokud nasazení ještě není v konečném stavu, endpoint nejdřív synchronizuje stav s Vercelem a až poté vrátí odpověď.

Požadavek

GET /api/chat/{chatId}/deployment

Hlavičky

HlavičkaPovinnáPopis
AuthorizationAnoBearer macaly_...

Parametry cesty

ParametrTypPopis
chatIdstringID chatu

Příklad požadavku

curl https://www.macaly.com/api/chat/abc123/deployment \
  -H "Authorization: Bearer macaly_abc123..."

Odpověď

Nasazení dokončeno

{
  "id": "jzga0sttml37v6mbizb8tk1x",
  "url": "https://macaly-staging-abc123.macaly.app",
  "status": "READY",
  "deploymentId": "dpl_HKLBd2QDTwq58AMUJiaMyUzk8WUw",
  "createdAt": "2025-01-12T21:18:54.906Z",
  "error": null,
  "domain": "macaly-staging-abc123.macaly.app",
  "domains": [
    {
      "domain": "macaly-staging-abc123.macaly.app",
      "verified": true,
      "isCustomDomain": false
    }
  ]
}

Žádné nasazení

{
  "id": null,
  "url": null,
  "status": null,
  "deploymentId": null,
  "createdAt": null,
  "error": null,
  "domain": null,
  "domains": [
    {
      "domain": "macaly-staging-abc123.macaly.app",
      "verified": true,
      "isCustomDomain": false
    }
  ]
}

Nasazení selhalo

{
  "id": "jzga0sttml37v6mbizb8tk1x",
  "url": "https://macaly-staging-abc123.macaly.app",
  "status": "ERROR",
  "deploymentId": "dpl_HKLBd2QDTwq58AMUJiaMyUzk8WUw",
  "createdAt": "2025-01-12T21:18:54.906Z",
  "error": ["Build failed: Module not found"],
  "domain": "macaly-staging-abc123.macaly.app",
  "domains": []
}

Pole odpovědi

PoleTypPopis
idstring | nullID nasazení v databázi (null, pokud chat nebyl nikdy nasazen)
urlstring | nullURL nasazené aplikace
statusstring | nullStav nasazení na Vercelu (viz níže)
deploymentIdstring | nullID deploymentu na Vercelu
createdAtstring | nullDatum a čas vytvoření nasazení (ISO formát)
errorstring[] | nullChybové hlášky, pokud nasazení selhalo
domainstring | nullPrimární doména nasazení
domainsarrayVšechny připojené domény
domains[].domainstringNázev domény
domains[].verifiedbooleanZda je doména ověřená
domains[].isCustomDomainbooleanZda jde o vlastní doménu

Hodnoty stavu nasazení

StavPopis
QUEUEDNasazení čeká ve frontě
BUILDINGProbíhá build
READYNasazení úspěšně dokončeno
ERRORNasazení selhalo
CANCELEDNasazení bylo zrušeno
UNPUBLISHEDNasazení bylo staženo z produkce

Stavové kódy

KódPopis
200Úspěch (vrátí odpověď i pokud žádné nasazení neexistuje – pole budou null)
401Neplatný nebo chybějící API klíč
403Chat nepatří vašemu týmu
404Chat nenalezen

Příklad průběžné kontroly

while true; do
  DEPLOYMENT=$(curl -s https://www.macaly.com/api/chat/$CHAT_ID/deployment \
    -H "Authorization: Bearer macaly_...")

  STATUS=$(echo $DEPLOYMENT | jq -r '.status')
  echo "Status: $STATUS"

  if [[ $STATUS == "READY" ]]; then
    echo "Deployed: $(echo $DEPLOYMENT | jq -r '.url')"
    break
  elif [[ $STATUS == "ERROR" ]]; then
    echo "Failed: $(echo $DEPLOYMENT | jq -r '.error')"
    break
  fi

  sleep 3
done