Paginação, datas e dinheiro
Paginação
Seção intitulada “Paginação”Listas que podem crescer (agendamentos, clientes, comandas) são paginadas por número de página:
| Parâmetro | Padrão | Faixa |
|---|---|---|
page |
1 |
a partir de 1 |
pageSize |
20 |
de 1 a 100 |
Valores fora da faixa são ajustados ao limite mais próximo (pedir pageSize=500 devolve páginas de 100). A resposta
traz os itens, a página, o tamanho e o total; as listas de agendamentos e de comandas trazem também o fuso do salão
(timeZone). Agendamentos vêm do mais recente ao mais antigo, e comandas da mais nova para a mais antiga:
curl -s -G "https://api.pegavez.com.br/api/salons/$SALON_ID/appointments" \ -H "Authorization: Bearer $PEGAVEZ_TOKEN" \ --data-urlencode "from=2026-11-01" \ --data-urlencode "to=2026-11-30" \ --data-urlencode "page=2" \ --data-urlencode "pageSize=100"{ "timeZone": "America/Sao_Paulo", "items": [ { "id": "…", "startsAt": "2026-11-03T14:00:00-03:00" } ], "page": 2, "pageSize": 100, "total": 287}Para ler tudo, avance page até page * pageSize >= total. Como a lista pode mudar entre uma página e outra,
use sempre um filtro de período e trate itens repetidos pelo id. Para acompanhar mudanças continuamente, prefira
webhooks a varrer as listas.
Datas, horários e fuso
Seção intitulada “Datas, horários e fuso”O salão funciona no fuso America/Sao_Paulo, e as listas devolvem o fuso no campo timeZone.
- Instantes (início de agendamento, criação, chegada…) são strings ISO 8601 com offset:
2026-11-03T14:00:00-03:00. Ao enviar, inclua sempre o offset (ouZpara UTC): sem ele, o horário pode ser interpretado em outro fuso. Segundos são ignorados no início do agendamento. - Datas sem hora (filtros
from,to,date, a data de movimento das comandas) são dias de calendário no fuso do salão, no formatoAAAA-MM-DD.from=2026-11-01&to=2026-11-30cobre de 1º de novembro 00:00 a 30 de novembro 23:59 em São Paulo. - As respostas da API trazem os instantes com o offset do salão. Os webhooks são a exceção: lá os
instantes vêm em UTC (
+00:00). - Ao exibir horários, converta para o fuso do salão. Não suponha
-03:00fixo: use uma biblioteca de fuso (TimeZoneInfono .NET,Intl/Temporalno JavaScript,zoneinfono Python).
# Agenda de um dia específicocurl -s -G "https://api.pegavez.com.br/api/salons/$SALON_ID/appointments" \ -H "Authorization: Bearer $PEGAVEZ_TOKEN" \ --data-urlencode "from=2026-11-03" \ --data-urlencode "to=2026-11-03"Dinheiro
Seção intitulada “Dinheiro”Valores em dinheiro são reais (BRL), como número JSON com até 2 casas decimais: 59.9 ou 59.90 significam
R$ 59,90. Não há campo de moeda: é sempre BRL.
{ "totalPrice": 89.9, "listTotalPrice": 99.9 }Some e compare valores com um tipo decimal (decimal no C#, Decimal no Python, centavos inteiros ou uma
biblioteca decimal no JavaScript), nunca com ponto flutuante binário.
Enums e nomes de campos
Seção intitulada “Enums e nomes de campos”- Campos em camelCase (
startsAt,professionalId). - Enums como texto, no nome em inglês com inicial maiúscula:
"cancelledBy": "Salon","status": "InService". Trate valores desconhecidos sem quebrar: um enum pode ganhar valores novos sem mudar de versão (veja compatibilidade). - Identificadores são UUIDs.
- Campos ausentes e campos
nullsignificam a mesma coisa: sem valor.
Editar com PUT
Seção intitulada “Editar com PUT”PUT /api/salons/{salonId}/customers/{customerId} substitui o cadastro inteiro: mande todos os campos, não só os
que mudaram. Campo omitido vale como vazio (null ou false) e apaga o que estava lá. Para alterar um campo, leia o
cliente com GET, mude o que precisa e envie tudo de volta.