
Resumo #
A API da plataforma eAgenda permite atualizar ou cancelar um agendamento de forma programática, ajustando o status ou removendo compromissos existentes. Este guia prático detalha como enviar requisições HTTP PATCH para atualizar (/api/v3/appointments/{appointment_key}/) e DELETE para cancelar (/api/v3/appointments/{appointment_key}/) um agendamento, além de processar as respostas. Para mais detalhes, consulte a documentação oficial da API da eAgenda.
Preparação do Ambiente #
Antes de começar, você precisará:
- Chave de API: Acesse o painel da eAgenda para obter seu token Bearer.
- Ferramenta para requisições HTTP: Use cURL, Postman ou bibliotecas como requests (Python) ou axios (JavaScript).
- Configuração do cabeçalho: A autenticação é feita via Bearer Token. Configure o cabeçalho Authorization: Bearer <seu-token> e, para atualização, defina Content-Type: application/json.
- Chave do agendamento (appointment_key): Obtenha o UUID do agendamento a ser atualizado ou cancelado, geralmente retornado ao criar ou listar agendamentos.
Dica: Consulte a seção de autenticação na documentação da API para configurar o token corretamente.
Atualizar um Agendamento #
Para atualizar um agendamento, envie uma requisição HTTP PATCH para o endpoint /api/v3/appointments/{appointment_key}/, modificando o status ou outros parâmetros.
Definição dos Dados para Atualização #
Envie um objeto JSON no corpo da requisição com os seguintes campos:
{
"status": "string",
"send_email": boolean,
"account_slug": "string"
}
status (opcional) #
- Descrição: Novo status do agendamento.
- Valores possíveis: ATTENDED, CANCELED, CANCELED_CLIENT, CANCELED_GOOGLE, CONFIRMED, IN_PROGRESS, NO_SHOW, PENDING, PENDING_COMPANIONS, PENDING_FORM, PENDING_PAYMENT.
- Impacto: Altera o estado do agendamento.
- Exemplo: “CONFIRMED”
send_email (opcional) #
- Descrição: Envia e-mail de confirmação da atualização.
- Impacto: Notifica os participantes se true.
- Exemplo: true
account_slug (opcional) #
- Descrição: Slug da conta ou subconta.
- Restrições: Mínimo de 1 caractere, padrão ^[-a-zA-Z0-9_]+$.
- Como obter: Use o endpoint de listagem de contas.
- Impacto: Vincula a atualização a uma conta específica.
- Exemplo: “minha-conta”
Nota: Pelo menos um campo deve ser enviado para atualizar o agendamento.
Envio da Requisição para Atualizar #
Para atualizar um agendamento, envie uma requisição HTTP PATCH para o endpoint:
https://eagenda.com.br/api/v3/appointments/{appointment_key}/
Configuração da Requisição #
- Método: PATCH
- Cabeçalhos:
- accept: application/json
- Authorization: Bearer <seu-token>
- Content-Type: application/json
- Corpo da requisição: JSON com os dados a serem atualizados.
Exemplo de Requisição com cURL #
curl -X PATCH https://eagenda.com.br/api/v3/appointments/19730681-29a0-4000-8ddf-025c8f2d1401/ \
-H "accept: application/json" \
-H "Authorization: Bearer ba08ab41bd58e9b9f82b4d2788b3cd9999ee9999" \
-H "Content-Type: application/json" \
-d '{
"status": "CONFIRMED",
"send_email": true,
"account_slug": "minha-conta"
}'
Exemplo em Python (usando requests) #
import requests
url = "https://eagenda.com.br/api/v3/appointments/19730681-29a0-4000-8ddf-025c8f2d1401/"
headers = {
"accept": "application/json",
"Authorization": "Bearer ba08ab41bd58e9b9f82b4d2788b3cd9999ee9999",
"Content-Type": "application/json"
}
data = {
"status": "CONFIRMED",
"send_email": True,
"account_slug": "minha-conta"
}
response = requests.patch(url, json=data, headers=headers)
print(response.status_code)
print(response.json())
Verificação da Resposta #
A API retornará uma resposta com o status da atualização. Verifique os seguintes pontos:
- Código de status HTTP:
- 200 OK: Agendamento atualizado com sucesso.
- 400 Bad Request: Erro nos dados enviados (verifique o JSON).
- 401 Unauthorized: Token inválido ou ausente.
- 404 Not Found: appointment_key inválido.
- Corpo da resposta: Contém os detalhes atualizados do agendamento, como:
{
"appointment_key": "19730681-29a0-4000-8ddf-025c8f2d1401",
"search_code": "A001",
"status": "CONFIRMED",
"calendar": {
"calendar_key": "1973125a-ab10-4000-8674-eef17b31e080",
"calendar_name": "Agenda Principal"
},
"service_list": [],
"tag_list": [],
"attendees": [
{
"person_key": "19730681-29a0-4000-8584-d036c75a2f80",
"name": "João Silva",
"email": "joao.silva@example.com",
"phone": null,
"identification_code": null,
"identification_type": null
}
],
"owner_user": null,
"start": {
"dateTime": "2025-06-01T10:00:00Z",
"timeZone": "UTC"
},
"end": {
"dateTime": "2025-06-01T10:30:00Z",
"timeZone": "UTC"
},
"description": null,
"questionnaires": [],
"created_at": {
"dateTime": "2025-06-01T09:58:00Z",
"timeZone": "UTC"
},
"location": null,
"conference_data": null,
"account_slug": "minha-conta"
}
O agendamento será atualizado no sistema, refletindo as alterações enviadas.
Cancelar um Agendamento #
Para cancelar um agendamento, envie uma requisição HTTP DELETE para o endpoint /api/v3/appointments/{appointment_key}/.
Definição dos Parâmetros para Cancelamento #
appointment_key (obrigatório) #
- Descrição: Chave UUID do agendamento.
- Impacto: Identifica o agendamento a ser cancelado.
- Como obter: Obtido ao criar ou listar agendamentos.
- Exemplo: 19730681-29a0-4000-8ddf-025c8f2d1401
send_email (opcional) #
- Descrição: Envia e-mail de notificação de cancelamento.
- Impacto: Notifica os participantes se true.
- Exemplo: true
Envio da Requisição para Cancelar #
Para cancelar um agendamento, envie uma requisição HTTP DELETE para o endpoint:
https://eagenda.com.br/api/v3/appointments/{appointment_key}/
Configuração da Requisição #
- Método: DELETE
- Cabeçalhos:
- accept: application/json
- Authorization: Bearer <seu-token>
- Query-string: Parâmetro send_email (ex.: ?send_email=true).
Exemplo de Requisição com cURL #
curl -X DELETE "https://eagenda.com.br/api/v3/appointments/19730681-29a0-4000-8ddf-025c8f2d1401/?send_email=true" \
-H "accept: application/json" \
-H "Authorization: Bearer ba08ab41bd58e9b9f82b4d2788b3cd9999ee9999"
Exemplo em Python (usando requests) #
import requests
url = "https://eagenda.com.br/api/v3/appointments/19730681-29a0-4000-8ddf-025c8f2d1401/"
headers = {
"accept": "application/json",
"Authorization": "Bearer ba08ab41bd58e9b9f82b4d2788b3cd9999ee9999"
}
params = {
"send_email": True
}
response = requests.delete(url, headers=headers, params=params)
print(response.status_code)
print(response.json())
Verificação da Resposta #
A API retornará uma resposta com o status do cancelamento. Verifique os seguintes pontos:
- Código de status HTTP:
- 200 OK: Agendamento cancelado com sucesso.
- 401 Unauthorized: Token inválido ou ausente.
- 404 Not Found: appointment_key inválido.
- Corpo da resposta: Contém os detalhes do agendamento cancelado, com o status atualizado para CANCELED, como:
{
"appointment_key": "19730681-29a0-4000-8ddf-025c8f2d1401",
"search_code": "A001",
"status": "CANCELED",
"calendar": {
"calendar_key": "1973125a-ab10-4000-8674-eef17b31e080",
"calendar_name": "Agenda Principal"
},
"service_list": [],
"tag_list": [],
"attendees": [
{
"person_key": "19730681-29a0-4000-8584-d036c75a2f80",
"name": "João Silva",
"email": "joao.silva@example.com",
"phone": null,
"identification_code": null,
"identification_type": null
}
],
"owner_user": null,
"start": {
"dateTime": "2025-06-01T10:00:00Z",
"timeZone": "UTC"
},
"end": {
"dateTime": "2025-06-01T10:30:00Z",
"timeZone": "UTC"
},
"description": null,
"questionnaires": [],
"created_at": {
"dateTime": "2025-06-01T09:58:00Z",
"timeZone": "UTC"
},
"location": null,
"conference_data": null,
"account_slug": null
}
O agendamento será marcado como cancelado no sistema, e os participantes serão notificados se send_email for true.
Conclusão #
Com este tutorial, você aprendeu como atualizar ou cancelar um agendamento via API da eAgenda, utilizando os endpoints PATCH e DELETE para gerenciar compromissos de forma eficiente. Essas integrações são ideais para automatizar a administração de agendamentos, ajustando status ou removendo compromissos conforme necessário. Para mais funcionalidades, como criar ou listar agendamentos, consulte a documentação completa da API da eAgenda.
Entre em Contato ou Saiba Mais #
Estamos à disposição para ajudar! Acesse nossos canais oficiais:
📞 WhatsApp : Clique aqui para nos enviar uma mensagem
🌐 Plataforma eAgenda : Conheça o eAgenda
🏢 Nossa Empresa : Mupi Systems – Soluções Inovadoras
📧 E-mail : contato@mupisystems.com.br
📚 Tutoriais e Documentação : Acesse nossos guias e tutoriais