Histórico da Página
...
VERBO GET
Através do verbo GET, a API pode as APIs podem retornar os dados dos alertas cadastrados (tabela BQ7) e os dados do MV_PLTOP.
VERBO PUT
Através do verbo PUT, a API permite as APIs permitem realizar atualizações dos alertas através da rotina (PLSA777) e o conteúdo do MV_PLTOP.
02. CONFIGURAÇÕES INI
Para iniciar a instalação do processo, devemos configurar seu INI Protheus com a funcionalidade REST para habilitar o acesso as API´s. Documentos auxiliares:
...
Seguem os verbos disponíveis na API:
Verbo | Path | QueryParams | PathParam | Descrição |
---|---|---|---|---|
GET | alerts | Opcional: code - Código do alerta (BQ7_CODIGO) | Retorna dados de alertas | |
GET | alerts/settings | Retorna conteúdo do MV_PLTOP | ||
PUT | alerts/{id} | id - BQ7_CODIGO | Atualiza dados de um alerta | |
PUT | alerts/settings | Atualiza conteúdo do MV_PLTOP |
04. EXEMPLO DE CHAMADA DA API
Chamada GET alerts
http://localhost:8080/rest/totvsHealthPlans/v1/alerts
...
Caso queira que devolva todos os alertas, é só retirar o queryParam code.
GET alerts/settings
http://localhost:8080/rest/totvsHealthPlans/v1/alerts/settings
PUT alerts Chamada PUT - Atualizando um alerta
Exemplo atualizando um alerta que tem o BQ7_CODIGO igual a 000001.
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
{ "code": "000001", "description": "Alerta após resposta na mensageria(Auditoria)", "sendNotification": "1", "txtNotification": "A guia [%B53->B53_NUMGUI%] recebeu uma resposta", "titleNotification": "Você tem uma nova mensagem", "typeNotification": "1", "sendEmail": "1", "txtEmail": "<h1 class=\"title\">\r\n Atualização na guia em auditoria\r\n </h1>\r\n <p> Olá, <strong> [%BAU->BAU_NOME%]!</strong> </p>\r\n <p> Sua guia [%B53->B53_NUMGUI%] recebeu uma nova mensagem! </p>\r\n<div style=\"border: 1px solid black; padding: 10px;\">\r\n <p>[%cParam%]</p>\r\n </div>", "sendWpp": "0", "codeTemplate": "", "useLayout": "1" } |
PUT alerts/settings - Atualizando MV_PLTOP
http://localhost:8080/rest/totvsHealthPlans/v1/alerts/settings
A API alerts/settings criptografa o conteúdo informado no operatorID antes de fazer a gravação no banco de dados. Exemplo de body da requisição:
05. ATRIBUTOS DE RESPOSTA
Solicitação GET alerts
Atributo | Campo | Tipo |
---|---|---|
code | BQ7_CODIGO | Caracter |
description | BQ7_DESCRI | Caracter |
sendNotification | BQ7_NOTIF | Caracter |
txtNotification | BQ7_TXTNOT | Caracter |
titleNotification | BQ7_TITNOT | Caracter |
typeNotification | BQ7_TIPNOT | Caracter |
sendEmail | BQ7_EMAIL | Caracter |
txtEmail | BQ7_TXTEMA | Caracter |
sendWpp | BQ7_WPP | Caracter |
codeTemplate | BQ7_TEMPLA | Caracter |
useLayout | BQ7_LAYPAD | Caracter |
Solicitação GET alerts/settings
Atributo | Campo | Tipo |
---|---|---|
operatorID | MV_PLTOP | Caracter |
06. EXEMPLOS DE JSON DE RESPOSTA
Solicitação GET alerts:
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"hasNext": false,
"items": [
{
"code": "000001",
"description": "Alerta após resposta na mensageria(Auditoria)",
"sendNotification": "1",
"txtNotification": "A guia [%B53->B53_NUMGUI%] recebeu uma resposta",
"titleNotification": "Você tem uma nova mensagem",
"typeNotification": "1",
"sendEmail": "1",
"txtEmail": "<h1 class=\"title\">\r\n Atualização na guia em auditoria\r\n </h1>\r\n <p> Olá, <strong> [%BAU->BAU_NOME%]!</strong> </p>\r\n <p> Sua guia [%B53->B53_NUMGUI%] recebeu uma nova mensagem! </p>\r\n<div style=\"border: 1px solid black; padding: 10px;\">\r\n <p>[%cParam%]</p>\r\n </div>",
"sendWpp": "0",
"codeTemplate": "",
"useLayout": "1"
},
{
"code": "000002",
"description": "Alerta após resposta na mensageria(Faturamento)",
"sendNotification": "1",
"txtNotification": "O protocolo [%BCI->BCI_CODPEG%] recebeu uma resposta.",
"titleNotification": "Você tem uma nova mensagem",
"typeNotification": "1",
"sendEmail": "1",
"txtEmail": "<h1 class=\"title\">\r\n Atualização no protocolo de faturamento\r\n </h1>\r\n <p> Olá, <strong> [%BCI->BCI_NOMRDA%]!</strong> </p>\r\n <p> Seu protocolo [%BCI->BCI_CODPEG%] recebeu uma nova mensagem! </p>\r\n<div style=\"border: 1px solid black; padding: 10px;\">\r\n <p>[%cParam%]</p>\r\n </div>",
"sendWpp": "0",
"codeTemplate": "",
"useLayout": "1"
}
]
} |
Solicitação GET alerts/settings:
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"hasNext": false,
"items": [
{
"operatorID":"5ðŽZèÏÕÁ•°pÔ3‡á‰¨íðÞ,這>ÛfÝ"
}
]
} |
Solicitação PUT alerts - Alteração de Alertas
Falha - HTTP Status 400
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"code": "0002",
"message": "Erro ao atualizar registro!",
"detailedMessage": "Não foi possível fazer a atualização, tente novamente mais tarde"
} |
Solicitação PUT alerts/settings - Alteração MV_PLTOP
Falha - HTTP Status 400
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"code": "0001",
"message": "Campo obrigatório não informado",
"detailedMessage": "'operatorID'"
} |