Skip to content

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étodoURLAçãoDescrição
GET/api/v1/products-servicesListarLista todos os produtos e serviços
GET/api/v1/products-services/{id}VisualizarExibe um determinado produto/serviço pelo ID
POST/api/v1/products-servicesCriarCria um novo produto ou serviço

Campos

Abaixo estão os campos disponíveis na API:

CampoTipoDescriçãoObrigatório
nomestringNome do produto/serviçoSim
idmedidaintegerID da unidade de medidaNão
valordecimalValor de venda do produto/serviçoNão
valorcustodecimalValor de custo do produto/serviçoNão
datacadastrodatetimeData e hora do cadastroNão
codigoprodutostringCódigo interno do produtoNão
descricaotextDescrição detalhadaNão
modopreparotextModo de preparo ou instruçõesNão
id_catintegerID da categoriaNão
composicaoarrayLista de itens que compõem o produtoNã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:

json
{
  "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:

json
{
  "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 medida
  • valor: Valor de venda (formato: "150.00" ou "150,00")
  • valorcusto: Valor de custo (formato: "80.00" ou "80,00")
  • codigoproduto: Código interno do produto
  • descricao: Descrição detalhada
  • modopreparo: Instruções de preparo
  • id_cat: ID da categoria
  • composicao: Array de itens que compõem o produto

Exemplo de Requisição:

json
{
  "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:

json
{
  "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"
      }
    ]
  }
}