Árvore de páginas

CONTEÚDO

  1. Visão Geral
  2. Serviços Disponíveis
  3. Exemplo de utilização
    1. GET
    2. POST
    3. PUT
    4. DELETE
  4. Assuntos Relacionados

01. VISÃO GERAL

Para clientes que possuem aplicativos customizados e precisam consultar ou manipular as informações na rotina Grupo de Produtos (MATA035), foram disponibilizados métodos Web Service REST.

02. SERVIÇOS DISPONÍVEIS


GET
Consulta

POST
Inclusão

PUT
Alteração
DELETE
Exclusão
(seleção)(seleção)(seleção)(seleção)

03. EXEMPLO DE UTILIZAÇÃO

Para realizar testes, pode ser utilizado qualquer programa de sua preferência, que teste API Web Service REST.

Como exemplos de programas, podemos citar o SoapUI ou Postman . Ambos são excelentes aplicativos.

Os exemplos a seguir serão demonstrados utilizando a extensão PostCode do programa VSCODE, executando os métodos GET, POST, PUT e DELETE.

Importante

Por padrão, para realizar consulta, alteração ou deleção de um determinado dado do servidor através dos métodos GET, PUT ou DELETE, é necessário informar a PK (Primary Key), valor da chave primaria do alias do modelo, encodado em base64, caso contrário não informado, serão retornado os registros conforme sua paginação.

Para inclusão ou alteração do registro, pode utilizar a mesma estrutura (body), os campos podem ser adicionados dentro da tag FIELDS.
Maiores detalhes referente a montagem da estrutura, verificar modelo abaixo.

Onde:

id: é id da API

operation: é o código da operação, valor padrão: 1,

pk: é a chave primária do alias do modelo de dados encodado em base64,

models: são os modelos de negócios de cada API, ou seja, modelo de dados do MVC, que é definido por:

id: é o modelo de dados definido no MVC

modeltype: é tipo de modelo de dados, "FIELDS" ou "GRID"

models: é um vetor com os submodelos do modelo de dados do MVC, definido por:

id: é o submodelo de dados definido no MVC

modeltype: é tipo de modelo de dados, "FIELDS" ou "GRID"

items: é um vetor definindo os itens do GRID, definido por:

id: é um sequêncial do vetor dos itens,

deleted: indica se o registro é deletado ou não, valor padrão: 0,

fields: é um vetor com os campos e valores dos itens do GRID, definido por: 

id: é nome do campo

value: é o valor do campo

Modelo Estrutura POST e PUT
{
    "id": "MATA035",
    "operation": 1,
    "pk": "RCBNRyAwMSAwMDAx",
    "models": [
        {
            "id": "MATA035_SBM",
            "modeltype": "FIELDS",
            "fields": [
                {
                    "id": "BM_FILIAL",
                    "order": 1,
                    "value": "D MG 01"
                },
                {
                    "id": "BM_GRUPO",
                    "order": 2,
                    "value": "0001"
                },
                {
                    "id": "BM_DESC",
                    "order": 3,
                    "value": "Plastico"
                }
            ]
        }
    ]
}
    1. GET



      Retorno:

      Retorno Get
      {
          "id": "MATA035",
          "operation": 1,
          "pk": "RCBNRyAwMSAwMDAx",
          "models": [
              {
                  "id": "MATA035_SBM",
                  "modeltype": "FIELDS",
                  "fields": [
                      {
                          "id": "BM_FILIAL",
                          "order": 1,
                          "value": "D MG 01"
                      },
                      {
                          "id": "BM_GRUPO",
                          "order": 2,
                          "value": "0001"
                      },
                      {
                          "id": "BM_DESC",
                          "order": 3,
                          "value": "Plastico"
                      }
                  ]
              }
          ]
      }
    2. POST

      Importante

      Não informar a PK (Primary Key) no path.




      Retorno:

      Retorno Post
      {
          "id": "MATA035",
          "operation": 1,
          "pk": "RCBNRyAwMSBUVFRU",
          "models": [
              {
                  "id": "MATA035_SBM",
                  "modeltype": "FIELDS",
                  "fields": [
                      {
                          "id": "BM_FILIAL",
                          "order": 1,
                          "value": "D MG 01"
                      },
                      {
                          "id": "BM_GRUPO",
                          "order": 2,
                          "value": "TTTT"
                      },
                      {
                          "id": "BM_DESC",
                          "order": 3,
                          "value": "Teste"
                      },
                      {
                          "id": "BM_PROORI",
                          "order": 5,
                          "value": "0"
                      },
                      {
                          "id": "BM_CLASGRU",
                          "order": 16,
                          "value": "1"
                      }
                  ]
              }
          ]
      }
    3. PUT



      Retorno:

      Retorno Put
      {
          "id": "MATA035",
          "operation": 1,
          "pk": "RCBNRyAwMSBUVFRU",
          "models": [
              {
                  "id": "MATA035_SBM",
                  "modeltype": "FIELDS",
                  "fields": [
                      {
                          "id": "BM_FILIAL",
                          "order": 1,
                          "value": "D MG 01"
                      },
                      {
                          "id": "BM_GRUPO",
                          "order": 2,
                          "value": "TTTT"
                      },
                      {
                          "id": "BM_DESC",
                          "order": 3,
                          "value": "Teste PUT"
                      },
                      {
                          "id": "BM_PROORI",
                          "order": 5,
                          "value": "0"
                      },
                      {
                          "id": "BM_CLASGRU",
                          "order": 16,
                          "value": "1"
                      }
                  ]
              }
          ]
      }
    4. DELETE

      Importante

      Para realizar a deleção do registro, deve informar somente o path sem a estrutura (body).



04. ASSUNTOS RELACIONADOS

FWRestModel - API RESTful dos modelos de dados do Protheus

Integração do Easy Import Control via API REST

Catálogo de Produtos via API REST