Para clientes que possuem aplicativos customizados e precisam consultar ou manipular as informações na rotina Cadastro de Permissões (MATA014), foram disponibilizados métodos Web Service REST.
GET Consulta | POST | PUT Alteração | DELETE Exclusã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.
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
GET
Retorno:
{ "id": "MATA014", "operation": 1, "pk": "RCBNRyAwMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwMDA0NTBNVEExMjE=", "models": [ { "id": "MATA014_CAB", "modeltype": "FIELDS", "fields": [ { "id": "DW_GRPPROD", "order": 3, "value": "G002" } ], "models": [ { "id": "MATA014_SDW", "modeltype": "GRID", "struct": [ { "id": "DW_FILIAL", "order": 1 }, { "id": "DW_USER", "order": 2 }, { "id": "DW_GRUPO", "order": 3 }, { "id": "DW_DOC", "order": 5 }, { "id": "DW_INCLUI", "order": 6 }, { "id": "DW_EXCLUI", "order": 7 }, { "id": "DW_ALTERA", "order": 8 } ], "items": [ { "id": 1, "deleted": 0, "fields": [ { "id": "DW_FILIAL", "value": "D MG 01" }, { "id": "DW_USER", "value": "000450" }, { "id": "DW_DOC", "value": "MTA121" }, { "id": "DW_EXCLUI", "value": "T" } ] } ] } ] } ] } |
POST
Não informar a PK (Primary Key) no path. |
Retorno:
{ "id":"MATA014", "operation":1, "models":[ { "id":"MATA014_CAB", "modeltype":"FIELDS", "fields":[ { "id":"DW_GRPPROD", "order":3, "value":"0001" } ], "models":[ { "id":"MATA014_SDW", "modeltype":"GRID", "struct":[ { "id":"DW_FILIAL", "order":1 }, { "id":"DW_USER", "order":2 }, { "id":"DW_GRUPO", "order":3 }, { "id":"DW_DOC", "order":5 }, { "id":"DW_INCLUI", "order":6 }, { "id":"DW_EXCLUI", "order":7 }, { "id":"DW_ALTERA", "order":8 } ], "items":[ { "id":1, "deleted":0, "fields":[ { "id":"DW_FILIAL", "value":"D MG 01" }, { "id":"DW_USER", "value":"000000" }, { "id":"DW_DOC", "value":"MTA121" } ] } ] } ] } ] } |
PUT
Retorno:
{ "id":"MATA014", "operation":1, "models":[ { "id":"MATA014_CAB", "modeltype":"FIELDS", "fields":[ ], "models":[ { "id":"MATA014_SDW", "modeltype":"GRID", "struct":[ { "id":"DW_EXCLUI", "order":7 } ], "items":[ { "id":1, "deleted":0, "fields":[ { "id":"DW_EXCLUI", "value":"T" } ] } ] } ] } ] } |
DELETE
Para realizar a deleção do registro, deve informar somente o path sem a estrutura (body). |
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