Produtos e Serviços
A API de produtos e serviços disponibiliza métodos eficientes para acessar informações de produtos oferecidos pela empresa, 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, valores, descrição e composição, 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 produtos até a criação de novos registros. Ao seguir as URLs e métodos HTTP detalhados, você será capaz de realizar operações de forma intuitiva e eficaz.
Veja abaixo:
URLs
Método | URL | Ação | Descrição |
---|---|---|---|
GET | /api/v1/products-services | Listar | Lista todos os produtos e serviços |
GET | /api/v1/products-services/{id} | Visualizar | Exibe um determinado produto/serviço pelo ID |
POST | /api/v1/products-services | Criar | Cria um novo produto ou serviço |
Campos
Abaixo estão os campos disponíveis na API:
Campo | Tipo | Descrição | Obrigatório |
---|---|---|---|
nome | string | Nome do produto/serviço | Sim |
idmedida | integer | ID da unidade de medida | Não |
valor | decimal | Valor de venda do produto/serviço | Não |
valorcusto | decimal | Valor de custo do produto/serviço | Não |
datacadastro | datetime | Data e hora do cadastro | Não |
codigoproduto | string | Código interno do produto | Não |
descricao | text | Descrição detalhada | Não |
modopreparo | text | Modo de preparo ou instruções | Não |
id_cat | integer | ID da categoria | Não |
composicao | array | Lista de itens que compõem o produto | Não |
Listar
Endpoint: /api/v1/products-services
Método: GET
Retorna uma lista de todos os produtos e serviços. 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 produtos pelo nome em ordem ascendente: /api/v1/products-services?field_sort=nome&sort=asc
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 é de até 200 registros.
Exemplo de Uso: Para acessar a segunda página de registros: /api/v1/products-services?page=2&limit=10
Buscar
Nossa API oferece buscas detalhadas no cadastro de produtos e serviços, 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
: Nome, Código do produto, Descrição, Modo de preparo
Exemplo de Uso: Para buscar produtos pelos campos acima: /api/v1/products-services?search=Bolo
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 produtos por um nome específico, ordenados pelo ID, e exibir apenas os primeiros 10 resultados, você pode usar a seguinte URL:
/api/v1/products-services?search=Bolo&field_sort=id&sort=desc&page=1&limit=10
Response:
{
"data": [
{
"id": "1",
"nome": "Bolo de Chocolate",
"idmedida": "2",
"valor": "150.00",
"valorcusto": "80.00",
"datacadastro": "2024-01-15 10:30:00",
"codigoproduto": "BOLO001",
"descricao": "Delicioso bolo de chocolate com cobertura",
"modopreparo": "Pré-aquecer forno a 180°C. Misturar ingredientes e assar por 40 minutos",
"id_cat": "3",
"composicao": [
{
"id_item": "15",
"quantidade": "2",
"nome_item": "Chocolate em Pó"
},
{
"id_item": "18",
"quantidade": "1",
"nome_item": "Farinha de Trigo"
}
]
}
],
"pagination": {
"page": 1,
"page_size": 200,
"total_page": 1,
"total_data": 1
}
}
Visualizar
Endpoint: /api/v1/products-services/{id}
Método: GET
Para visualizar as informações de um produto ou serviço, 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 produto/serviço a ser consultado deve ser especificado no endpoint.
Response:
{
"id": "1",
"nome": "Bolo de Chocolate",
"idmedida": "2",
"valor": "150.00",
"valorcusto": "80.00",
"datacadastro": "2024-01-15 10:30:00",
"codigoproduto": "BOLO001",
"descricao": "Delicioso bolo de chocolate com cobertura",
"modopreparo": "Pré-aquecer forno a 180°C. Misturar ingredientes e assar por 40 minutos",
"id_cat": "3",
"composicao": [
{
"id_item": "15",
"quantidade": "2",
"nome_item": "Chocolate em Pó"
},
{
"id_item": "18",
"quantidade": "1",
"nome_item": "Farinha de Trigo"
}
]
}
Criar
Endpoint: /api/v1/products-services
Método: POST
Para criar um novo produto ou serviço, você deve fazer uma solicitação POST para o endpoint acima. Os dados devem ser enviados no corpo da requisição em formato JSON.
Campos Obrigatórios:
nome
: Nome do produto/serviço
Campos Opcionais:
idmedida
: ID da unidade de medidavalor
: Valor de venda (formato: "150.00" ou "150,00")valorcusto
: Valor de custo (formato: "80.00" ou "80,00")codigoproduto
: Código interno do produtodescricao
: Descrição detalhadamodopreparo
: Instruções de preparoid_cat
: ID da categoriacomposicao
: Array de itens que compõem o produto
Exemplo de Requisição:
{
"nome": "Torta de Limão",
"idmedida": 2,
"valor": "120.00",
"valorcusto": "60.00",
"codigoproduto": "TORTA001",
"descricao": "Torta de limão com merengue",
"modopreparo": "Preparar massa, recheio e merengue separadamente",
"id_cat": 3,
"composicao": [
{
"id_item": 20,
"quantidade": 3
},
{
"id_item": 25,
"quantidade": 1
}
]
}
Response de Sucesso:
{
"status": "success",
"message": "Produto/Serviço cadastrado com sucesso.",
"data": {
"id": "15",
"nome": "Torta de Limão",
"idmedida": "2",
"valor": "120.00",
"valorcusto": "60.00",
"datacadastro": "2024-01-15 14:30:00",
"codigoproduto": "TORTA001",
"descricao": "Torta de limão com merengue",
"modopreparo": "Preparar massa, recheio e merengue separadamente",
"id_cat": "3",
"composicao": [
{
"id_item": "20",
"quantidade": "3",
"nome_item": "Limão"
},
{
"id_item": "25",
"quantidade": "1",
"nome_item": "Açúcar"
}
]
}
}