Atualização de status em massa
curl --request PATCH \
--url https://api.controleclinic.com.br/v1/scheduling/appointments/bulk-status \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"appointment_ids": [
"3f6c1b9e-8a2d-4c5e-9f10-2b7a4d8e6c11"
],
"status": "confirmed"
}
'const options = {
method: 'PATCH',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({appointment_ids: ['3f6c1b9e-8a2d-4c5e-9f10-2b7a4d8e6c11'], status: 'confirmed'})
};
fetch('https://api.controleclinic.com.br/v1/scheduling/appointments/bulk-status', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.controleclinic.com.br/v1/scheduling/appointments/bulk-status"
payload = {
"appointment_ids": ["3f6c1b9e-8a2d-4c5e-9f10-2b7a4d8e6c11"],
"status": "confirmed"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"updated_count": 123,
"ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
]
}{
"success": false,
"error": null
}{
"error": "<string>"
}{
"error": "Insufficient scope"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Agendamentos
Atualização de status em massa
Muda o status de até 200 agendamentos de uma vez. Status aceitos: scheduled, confirmed, completed, cancelled, no_show.
Ids de outra clínica (ou inexistentes) são ignorados em silêncio: confira updated_count e ids na resposta.
🔴 Na clínica com o Pix antecipado ligado, confirmed significa “pagou”: mudar para confirmed um agendamento que exige Pix e não pagou devolve 409. Sessão de pacote já vendido, procedimento de valor zero e agendamento criado antes de a opção ser ligada não exigem Pix. No lote, um agendamento recusado recusa o lote inteiro.
Escopo: scheduling:write.
PATCH
/
v1
/
scheduling
/
appointments
/
bulk-status
Atualização de status em massa
curl --request PATCH \
--url https://api.controleclinic.com.br/v1/scheduling/appointments/bulk-status \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"appointment_ids": [
"3f6c1b9e-8a2d-4c5e-9f10-2b7a4d8e6c11"
],
"status": "confirmed"
}
'const options = {
method: 'PATCH',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({appointment_ids: ['3f6c1b9e-8a2d-4c5e-9f10-2b7a4d8e6c11'], status: 'confirmed'})
};
fetch('https://api.controleclinic.com.br/v1/scheduling/appointments/bulk-status', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.controleclinic.com.br/v1/scheduling/appointments/bulk-status"
payload = {
"appointment_ids": ["3f6c1b9e-8a2d-4c5e-9f10-2b7a4d8e6c11"],
"status": "confirmed"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"updated_count": 123,
"ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
]
}{
"success": false,
"error": null
}{
"error": "<string>"
}{
"error": "Insufficient scope"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Autorizações
Token de API no formato cc_live_<64 chars hex>. Obtido em Minha Clínica → Integrações.
Corpo
application/json
