Eventos
A API de eventos disponibiliza métodos eficientes para acessar informações, incorporando recursos avançados de filtragem e pesquisa detalhada. Essas funcionalidades aprimoram a gestão dos dados, apoiando decisões mais informadas.
Introdução
Nesta documentação, detalhamos os campos que você pode esperar manipular ao interagir com a API. Cada campo é descrito para esclarecer sua função e o tipo de dado esperado, como nome, contato, e informações demográficas, garantindo que você possa fornecer ou obter informações precisas.
As URLs da API são especificadas para cada operação possível, desde a listagem de todos os eventos. Ao seguir as URLs e métodos HTTP detalhados, você será capaz de realizar a visualização de forma intuitiva e eficaz.
Veja abaixo:
URLs
Método | URL | Ação | Descrição |
---|---|---|---|
GET | /api/v1/events | Listar | Lista todos os eventos |
GET | /api/v1/events/{id} | Visualizar | Exibe um determinado evento pelo ID |
Listar
Endpoint: /api/v1/events
Método: GET
Retorna uma lista de todos os eventos. Suporta busca e paginação para gerenciar grandes volumes de dados.
Ordenação
Para melhorar a experiência de visualização dos dados, oferecemos suporte à ordenação de registros. Você pode especificar a ordenação dos dados através de dois parâmetros:
Parâmetros:
sort
: Define a direção da ordenação. Valores permitidos:asc
para ascendente,desc
para descendente.field_sort
: Especifica o campo pelo qual os registros devem ser ordenados, você pode consultar os campos disponíveis clicando aqui.
Exemplo de Uso: Para ordenar os eventos pelo nome em ordem ascendente: /api/v1/events?field_sort=nomeevento&sort=asc
Busca por período
A busca por período entre datas é fundamental para a gestão eficiente de dados, especialmente quando trabalhamos com grandes volumes. Ao definir um intervalo de datas, podemos limitar o número de registros retornados, reduzindo o tempo de processamento e aprimorando a usabilidade do sistema.
Parâmetros:
start
: Especifica o campo que define a data de início para o filtro, deve ser enviada no formato Y-m-d.end
: Especifica o campo que define a data de fim para o filtro, deve ser enviada no formato Y-m-d
Exemplo de Uso: Para filtrar os eventos por período: /api/v1/events?start=2024-07-01&end=2024-07-30
Paginação
A paginação é essencial para o gerenciamento eficiente dos dados, especialmente quando lidamos com grandes volumes. Cada página pode conter um número definido de registros, reduzindo o tempo de carregamento e melhorando a usabilidade.
Parâmetro:
page
: Número da página desejada.limit
(opcional): Número de registros por página, o limite e de até 200 registros.
Exemplo de Uso: Para acessar a segunda página de registros: /api/v1/events?page=2&limit=10
Buscar
Nossa API oferece buscas detalhadas no cadastro de eventos, permitindo a fácil localização de registros específicos. A busca é realizada nos campos listados na tabela abaixo, otimizando o processo de consulta sem necessidade de especificar os campos manualmente.
Parâmetro:
search
: Valor a ser pesquisado.
Tipos de Busca:
Campos Pesquisados
: Informações, Observação, Nome do evento, Nome Cliente
Exemplo de Uso: Para buscar eventos pelos campos acima: /api/v1/events?search=Nome Cliente
Resumo
Utilizar as funcionalidades de Ordenação, Paginação e Buscar em conjunto permite uma manipulação eficiente e precisa dos dados na nossa API. Por exemplo, para listar eventos por um nome específico, ordenados pelo ID, e exibir apenas os primeiros 10 resultados, você pode usar a seguinte URL:
/api/v1/events?search=Jonathan&field_sort=id&sort=desc&page=1&limit=10
Para realizar uma busca por período, adicione os parâmetros start e date.
/api/v1/events?search=Jonathan&start=2024-07-01&end=2024-07-30&field_sort=id&sort=desc&page=1&limit=10
Response:
{
"data": [
{
"id": "1084",
"caracteristica": null,
"tipoEvento": "Almoço ",
"datadecadastro": "2024-03-04",
"idorcamento": "0",
"idcliente": "1216",
"nomeCliente": "Teste cliente nome",
"dataevento": "2030-08-08",
"horaevento": "00:00:00",
"localevento": "",
"nomeevento": "Teste Jonathan",
"idlocalevento": "159",
"endereco": "",
"numero": "",
"complemento": "",
"cep": "",
"bairro": "",
"cidade": "",
"estado": "",
"informacoes": "teste 2323",
"observacao": "",
"codigointerno": "",
"convidados": "100",
"datasAdicionais": [
{
"fim": "2030-08-10 15:00:00",
"inicio": "2030-08-10 08:00:00"
},
{
"fim": "2030-08-09 15:00:00",
"inicio": "2030-08-09 08:00:00"
},
{
"fim": "2024-07-07 00:00:00",
"inicio": "2024-07-07 00:00:00"
},
{
"fim": "2024-07-06 00:00:00",
"inicio": "2024-07-06 00:00:00"
},
{
"fim": "2024-07-05 00:00:00",
"inicio": "2024-07-05 00:00:00"
},
{
"fim": "2024-07-04 00:00:00",
"inicio": "2024-07-04 00:00:00"
},
{
"fim": "2024-07-03 00:00:00",
"inicio": "2024-07-03 00:00:00"
},
{
"fim": "2024-07-02 00:00:00",
"inicio": "2024-07-02 00:00:00"
}
],
"status": "Eventos Anteriores" // Define categoria que o evento se encontra, (controle interno do sistema), tipos possíveis "Próximos Eventos", "Eventos Anteriores", "Cancelado"
}
],
"pagination": {
"page": 1, // Página atual
"page_size": 200, // Quantidade de registros exibida por pagina
"total_page": 1, // Quantidade de paginas no total
"total_data": 1 // Quantidade total de registros encontrados
}
}
Visualizar
Endpoint: /api/v1/events/{id}
Método: GET
Para visualizar as informações de um evento, você pode fazer uma solicitação GET para endpoint acima. Não é necessário fornecer informações no corpo da solicitação, já que você estará apenas recuperando dados. O ID do cliente a ser consultado deve ser especificado no endpoint.
Response:
{
"id": "1",
"caracteristica": null,
"tipoEvento": "Casamento",
"datadecadastro": "2018-11-29",
"idorcamento": "0",
"idcliente": "1186",
"nomeCliente": "Jonathan Moreira Brambati",
"dataevento": "2019-04-20",
"horaevento": "11:26:00",
"localevento": "Mineirão ",
"nomeevento": "Casamento Giselle e Tiago",
"idlocalevento": "0",
"endereco": "Avenida Antônio Abrahão Caram",
"numero": "1001",
"complemento": "",
"cep": "31275-000",
"bairro": "São José",
"cidade": "BH",
"estado": "MG",
"informacoes": "Teste",
"observacao": "",
"codigointerno": "",
"convidados": "100",
"datasAdicionais": null,
"status": "Cancelado"
}