Get deployment
curl --request GET \
--url https://macaly.com/api/chat/{chatId}/deployment \
--header 'Authorization: Bearer <token>'import requests
url = "https://macaly.com/api/chat/{chatId}/deployment"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://macaly.com/api/chat/{chatId}/deployment', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://macaly.com/api/chat/{chatId}/deployment",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://macaly.com/api/chat/{chatId}/deployment"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://macaly.com/api/chat/{chatId}/deployment")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://macaly.com/api/chat/{chatId}/deployment")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyEndpointit
Get deployment
Hae keskustelun uusimman julkaisuyrityksen tila
GET
/
api
/
chat
/
{chatId}
/
deployment
Get deployment
curl --request GET \
--url https://macaly.com/api/chat/{chatId}/deployment \
--header 'Authorization: Bearer <token>'import requests
url = "https://macaly.com/api/chat/{chatId}/deployment"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://macaly.com/api/chat/{chatId}/deployment', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://macaly.com/api/chat/{chatId}/deployment",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://macaly.com/api/chat/{chatId}/deployment"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://macaly.com/api/chat/{chatId}/deployment")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://macaly.com/api/chat/{chatId}/deployment")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyHakee keskustelun uusimman julkaisuyrityksen tilan tai sen yrityksen tilan, jonka
deploymentId ilmoittaa. Uusin yritys voi olla vielä rakentumassa, tai se on voinut epäonnistua, vaikka vanhempi versio on yhä julkaistuna. Tällä hetkellä julkaistun version osoite on kentässä liveUrl. Jos julkaisu ei ole lopullisessa tilassa, päätepiste synkronoi tilan Vercelin kanssa ennen vastaamista.
Pyyntö
GET /api/chat/{chatId}/deployment
Otsakkeet
| Otsake | Pakollinen | Kuvaus |
|---|---|---|
Authorization | Kyllä | Bearer macaly_... |
Polun parametrit
| Parametri | Tyyppi | Kuvaus |
|---|---|---|
chatId | string | Keskustelun tunniste |
Kyselyparametrit
| Parametri | Pakollinen | Kuvaus |
|---|---|---|
deploymentId | Ei | id tai deploymentId, jonka POST /deploy palautti. Ilman sitä päätepiste palauttaa keskustelun uusimman julkaisuyrityksen. |
Esimerkkipyyntö
curl "https://www.macaly.com/api/chat/abc123/deployment?deploymentId=jzga0sttml37v6mbizb8tk1x" \
-H "Authorization: Bearer macaly_abc123..."
const response = await fetch(
`https://www.macaly.com/api/chat/${chatId}/deployment?deploymentId=${deploymentId}`,
{
headers: {
'Authorization': 'Bearer macaly_abc123...',
},
}
);
const data = await response.json();
console.log(data.status, data.liveUrl);
import requests
response = requests.get(
f'https://www.macaly.com/api/chat/{chat_id}/deployment',
params={'deploymentId': deployment_id},
headers={
'Authorization': 'Bearer macaly_abc123...',
},
)
data = response.json()
print(data['status'], data['liveUrl'])
Vastaus
Julkaisu valmis
{
"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
}
],
"liveUrl": "https://macaly-staging-abc123.macaly.app"
}
Ei julkaisua
{
"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
}
],
"liveUrl": null
}
Julkaisu epäonnistui
Epäonnistunut uudelleenjulkaisu jättää edellisen version julkaistuksi, jotenliveUrl säilyy asetettuna.
{
"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": [],
"liveUrl": "https://macaly-staging-abc123.macaly.app"
}
Response Fields
| Kenttä | Tyyppi | Kuvaus |
|---|---|---|
id | string | null | Julkaisun tunniste tietokannassa (null, jos ei koskaan julkaistu) |
url | string | null | Julkaisun osoite |
status | string | null | Vercelin julkaisun tila (katso alla) |
deploymentId | string | null | Vercelin julkaisutunniste |
createdAt | string | null | Julkaisun luontiaika ISO-aikaleimana |
error | string[] | null | Virheilmoitukset, jos julkaisu epäonnistui |
domain | string | null | Julkaisun ensisijainen verkkotunnus |
domains | array | Kaikki liitetyt verkkotunnukset |
domains[].domain | string | Verkkotunnuksen nimi |
domains[].verified | boolean | Onko verkkotunnus vahvistettu |
domains[].isCustomDomain | boolean | Onko kyseessä oma verkkotunnus |
liveUrl | string | null | Julkaistun version osoite (null, jos mitään ei ole julkaistu) |
Julkaisun tila-arvot
| Tila | Kuvaus |
|---|---|
QUEUED | Julkaisu on jonossa |
BUILDING | Rakennus on käynnissä |
READY | Julkaisu onnistui |
ERROR | Julkaisu epäonnistui |
CANCELED | Julkaisu peruutettiin |
UNPUBLISHED | Julkaisu poistettiin käytöstä |
Tilakoodit
| Tila | Kuvaus |
|---|---|
| 200 | Onnistui (myös silloin, kun julkaisua ei ole, jolloin kentät ovat null) |
| 401 | Virheellinen tai puuttuva API-avain |
| 403 | Keskustelu ei kuulu workspacellesi |
| 404 | Keskustelua ei löytynyt, tai deploymentId ei vastaa mitään tämän keskustelun julkaisua |
Tilan kyselyn malli
AnnadeploymentId-parametrin arvoksi id, jonka POST /deploy palautti.
while true; do
DEPLOYMENT=$(curl -s "https://www.macaly.com/api/chat/$CHAT_ID/deployment?deploymentId=$DEPLOYMENT_ID" \
-H "Authorization: Bearer macaly_...")
STATUS=$(echo $DEPLOYMENT | jq -r '.status')
echo "Status: $STATUS"
if [[ $STATUS == "READY" ]]; then
echo "Deployed: $(echo $DEPLOYMENT | jq -r '.liveUrl')"
break
elif [[ $STATUS == "ERROR" ]]; then
echo "Failed: $(echo $DEPLOYMENT | jq -r '.error')"
break
fi
sleep 3
done
Oliko tästä sivusta hyötyä?