Pular para o conteúdo principal

Serviço

A especificação de "Serviço" inclui dois endpoints que permitem recuperar informações sobre os serviços cadastrados no sistema.

Definição

Um serviço representa uma oferta de atendimento ou procedimento que pode ser agendado pelos clientes. Este conceito abrange todos os tipos de serviços oferecidos pelas organizações; como consultas médicas, exames, tratamentos, procedimentos, etc.

O registro de um serviço contém pelo menos o nome do serviço. O registro também pode conter informações sobre preço, duração estimada, descrição detalhada e instruções de preparação.

Esses dados podem ser apresentados ao cliente final durante o processo de agendamento e em mensagens estruturadas. O sistema utiliza essas informações para permitir que os clientes escolham o serviço desejado e entendam o que será incluído no pedido de agendamento.

Objeto

O objeto de Service representa um serviço oferecido pela organização.

Não temos restrições sobre o formato dos campos name, description e preparation. Não utilizamos esses campos para validações ou filtros internos. Estes campos são apenas para fins de apresentação ao cliente final.

O campo de duration deve ser sempre um inteiro positivo. Ele vai indicar a duração do serviço em minutos.

AtributoTipoOpcionalDescrição
idstringNãoO identificador único para o serviço.
namestringNãoO nome do serviço.
pricenumberSimO preço do serviço, em reais (R$).
durationnumberSimA duração estimada em minutos.
descriptionstringSimA descrição detalhada do serviço.
preparationstringSimInstruções de preparação para o serviço.

Endpoints

Obter uma lista de serviços

Lista todos os serviços, opcionalmente filtrados por parâmetros de consulta.

O parâmetro enabled é um booleano que indica se o serviço está ativo ou não. O significado de "ativo" depende da implementação do sistema de terceiro.

Ele é usado para termos a possibilidade de filtrar os serviços que não devem ser disponibilizados para o cliente final, mas que ainda estão cadastrados no sistema.

GET /services

Parâmetros de Consulta

ParâmetroTipoOpcionalDescrição
locationstringSimFiltrar por ID de localidade.
professionalstringSimFiltrar por ID de profissional.
healthInsurancestringSimFiltrar por ID de convênio.
specialtystringSimFiltrar por ID de especialidade.
planstringSimFiltrar por ID de plano.
clientstringSimFiltrar por ID de cliente.
enabledbooleanSimFiltrar por status de ativação.

Resposta

Um array JSON de objetos Service.

[
{
"id": "123",
"name": "Consulta Médica",
"price": 150.00,
"duration": 30,
"description": "Consulta médica geral com avaliação completa",
"preparation": "Trazer exames recentes se houver"
}
]

Obter um serviço por ID

Recupera um único serviço pelo seu ID. O ID do serviço é passado como um parâmetro no caminho.

O campo id utilizado neste endpoint é populado pelo nosso sistema, normalmente a partir do resultado de outros endpoints que retornam objetos Service. Por exemplo, o endpoint de listagem de serviços previamente mencionado retorna um array de objetos Service, cada um com seu próprio id.

GET /services/{id}

Parâmetros de Caminho

ParâmetroTipoDescrição
idstringO ID do serviço a ser recuperado.

Resposta

Um único objeto Service.

{
"id": "123",
"name": "Consulta Médica",
"price": 150.00,
"duration": 30,
"description": "Consulta médica geral com avaliação completa",
"preparation": "Trazer exames recentes se houver"
}