Especificação dos endpoints e seus contratos. Para análise rápida, importe o postman: View file |
---|
name | Logger.postman_collection.json |
---|
height | 150 |
---|
|
Site postman: Postman API Platform | Sign Up for Free
Fora feito um mock da api usando a tool mockoon, segue o enviroment: É possível abrir esse enviroment e utilizar todo o mock feito. Site mockoon: Create mock APIs in seconds with Mockoon
Deck of Cards |
---|
| Card |
---|
id | LoggerTiposIntegração |
---|
label | Tipos de integração e tipos logs |
---|
| Objetivo: Busca tipos de integração e tipos de logs Esses endpoint's serão usado para o preenchimento dos select box 'Integração' e 'Tipo de log' Recomenda-se o backend realizar cache desses endpoints, devida suas características invariantes Tipo de requisição: GET Endpoints: api/rh/logs/v1/integrations/types e api/rh/logs/v1/integrations/logTypes
Estrutura de Retorno: Campo | Tipo | hasNext | boolean | items | array de objetos detalhado abaixo |
Para o array de items, a estrutura do objeto de retorno no json deve conter obrigatoriamente os campos abaixo. Campo | Tipo | id | int | description | string |
Exemplos de Requisição: GET /api/rh/logs/v1/integrations/types Expandir |
---|
| { "hasNext": false, "items": [ { "id": 1, "description": "TAF" }, { "id": 2, "description": "TSS" }, { "id": 3, "description": "Feedz" } ] } |
GET /api/rh/logs/v1/integrations/logTypes Expandir |
---|
| { "hasNext": false, "items": [ { "id": 1, "description": "Trace" }, { "id": 2, "description": "Error" } ] } |
|
Card |
---|
id | LoggerProcessesList |
---|
label | Listagem de processos |
---|
| Objetivo: Obter os processos de uma determinada integração
Tipo de requisição: GET Endpoint: /api/rh/logs/v1/integrations/processes Query Params: Campo | Descrição | Tipo | Obrigatório | Exemplo | idIntegration | Equivale ai items.id retornado em /api/rh/logs/v1/integrations/types | inteiro | sim | 1 |
Estrutura de Retorno: Para conseguirmos abranger todas as áreas, utilizamos a nomenclatura abaixo. Campo | Tipo | hasNext | boolean | items | array de objetos detalhado abaixo |
Para o array de items, a estrutura do objeto de retorno no json deve conter obrigatoriamente os campos abaixo. Campo | Tipo | id | int | description | string |
Exemplo de Requisição: GET /api/rh/logs/v1/integrations/processes?idIntegration=1 Expandir |
---|
| { "hasNext": false, "items": [ { "id": 1, "description": "Status" }, { "id": 2, "description": "Evento xpto" } ] } |
|
Card |
---|
id | LoggerActive |
---|
label | Ativar log |
---|
| Objetivo: Ativar ou desligar um log. Tipo de requisição: POST Endpoint: /api/rh/logs/v1/integrations Estrutura do corpo da requisição (Body) Campo | Descrição | Tipo | Obrigatório | Exemplo | active | Flag para ativar ou desativar o log. | boolean | Sim | true | companyId | Company id injetado na session storage do frontEnd | int | Sim | 1 | idIntegration | Identificação a integração | int | Sim | 1 | idLogType | Identificação do tipo de log que será ativado | int | Sim | 1 | idProcess | Identificação do processo da integração | int | Não | 1 |
POST /api/rh/logs/v1/integrations Expandir |
---|
title | Exemplo body request |
---|
| { "active": true, "companyId": 1, "idIntegration": 1, "idLogType": 1, "idProcess": 5 } |
Caso não seja selecionado o proceso, o front-end enviará o valor de idProcess como 0, valor default do inteiro. Portanto, se faz necessário considerar 0 como valor não informado.
Estrutura de Retorno: Para o retorno, utilizamos a forma abaixo. Campo | Descrição | Tipo | timer | 'Cronômetro' representado em milissegundos, cujo valor irá determinar o tempo máximo que o front-end, aguardará a resposta da primeira página. | int | interval | Intervalo entre requisições em milissegundos, que serão feitos pelo front-end para verificar o retorno da primeira página. | int |
Exemplo de Retorno: Expandir |
---|
| { "timer": 60000, "interval": 2000 } |
|
Card |
---|
id | LoggerSummaryList |
---|
label | Listagem resumida dos logs |
---|
| Objetivo: Obtenção paginada dos logs gerados pela aplicação após sua ativação. O front end, após a chamada do endpoint que faz a ativação do log, se o mesmo fora para ativar, entrará em modo de carregamento aguardando o retorno da primeira página contendo os primeiros logs. Mesmo que o backend retorne uma lista vazia e com a flag hasNext igual a false, a tela continuará tentando obter resultados até seu ciclo de espera terminar ou o backend retornar uma lista de itens em 'items' Motivo: Entende-se que nem sempre logo após a ativação será captado algum log, portanto se faz necessário esperar por até que haja estímulo para captação do log. O ciclo de espera do front-end é terminado pelos campos 'timer' e 'interval' retornados na requisição da ativação, portanto cada linha poderá configurar da melhor forma que entender, tanto o tempo de espera, quando a frequência de validação.
Tipo de requisição: GET Endpoints: /api/rh/logs/v1/integrations QueryParams: Campo | Tipo | Observação | Obrigatorio | Exemplo | companyId | int |
| Sim | 1 | idIntegration | int |
| Sim | 1 | idLogType | int |
| Sim | 1 | idProcess | int |
| Não | 0 | startDateTime | dateTime | Formato yyyy-mm-ddThh:mm:ss, usado para filtrar a partir de qual data hora se deseja obter a listagem, o filtro se aplica no campo 'dateTime' | Não | 2024-05-10T09:53:37 | page | int |
| Sim | 1 | pageSize | int |
| Sim | 30 |
Exemplo: /api/rh/logs/v1/integrations?companyId=1&idIntegration=0&idLogType=0&idProcess=1&startDateTime=2024-05-10T09:53:37&page=1&pageSize=30 Estrutura de Retorno: Campo | Tipo | hasNext | boolean | items | array de objetos detalhado abaixo |
Para o array de items, a estrutura do objeto de retorno no json deve conter obrigatoriamente os campos abaixo. Campo | Tipo | id | string | dateTime | Data hora formato yyyy-mm-ddThh:mm:ss | isError | boolean | statusCode | string | verb | string | process | string | url | string |
Expandir |
---|
| { "hasNext": true, "items": [ { "id": "11620630817", "dateTime": "2024-05-10T09:53:37", "isError": false, "statusCode": "200", "verb": "GET", "process": "", "url": "http://localhost:8051/api/something/to/do?id=80982&scope=global" }, { "id": "11081228397", "dateTime": "2024-05-11T10:15:45", "isError": true, "statusCode": "404", "verb": "POST", "process": "", "url": "http://localhost:8051/api/another/endpoint" } ] } |
|
Card |
---|
id | LoggerDetails |
---|
label | Detalhes de um log |
---|
| Objetivo: Detalhes de um log, a partir do seu id. Tipo de requisição: GET Endpoint: /api/rh/logs/v1/integrations/details/:id PathParam: Campo | Tipo | Observação | Obrigatorio | Exemplo | id | string | Mesmo Id retornado em 'Listagem resumida dos logs' | Sim | "11620630817" |
Exemplo: /api/rh/logs/v1/integrations/details/11620630817 Estrutura de Retorno: Campo | Tipo | id | string | dateTime | Data hora formato yyyy-mm-ddThh:mm:ss | isError | boolean | statusCode | string | verb | string | process | string | url | string | comments | string | request | objeto | response | objeto |
Para os objetos request / response, estrutura: Campo | Tipo | header | array de objetos | body | objeto |
Para array de objetos campo header: Campo | Tipo | key | string | value | string |
Para objeto campo body: Campo | Tipo | Observações | type | string | valor suportado nesta primeira versão : "raw" | format | string | valores suportados : "json" / "xml" ou "txt" | content | string | atenção se trata de uma string, portanto ao colocar um json ou xml deve-se retornar corretamente formatado para tal, veja os exemplos. |
Expandir |
---|
title | Exemplo retorno com json |
---|
| { "id": "11620630817", "dateTime": "2024-05-10T09:53:37", "isError": true, "statusCode": "200", "verb": "GET", "url": "http://localhost:8051/api/something/to/do?id=80982&scope=global", "server": "10.29.0.0", "process": "AtualizarStatusEvento", "comments": "algum comentário útil", "request": { "header": [ { "key": "User-Agent", "value": "PostmanRuntime/7.37.3" }, { "key": "Connection", "value": "keep-alive" } ], "body": { "type": "raw", "format": "json", "content": "{}" } }, "response": { "header": [], "body": { "type": "raw", "content": "{\"example\":\"value\"}" } } } |
Expandir |
---|
title | Exemplo retorno com xml |
---|
| { "id": "116351206011", "dateTime": "2024-05-10T09:53:37", "isError": false, "statusCode": "200", "verb": "POST", "url": "http://spon010119801:8051/wsDataServer/IwsDataServer", "server": "20.10.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "Content-Type", "value": "text/xml; charset=utf-8" }, { "key": "SOAPAction", "value": "http://www.totvs.com/IwsDataServer/ReadRecord" }, { "key": "Authorization", "value": "Basic bWVzdHJlOnRvdHZz" } ], "body": { "type": "raw", "format": "xml", "content": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:tot=\"http://www.totvs.com/\">\r\n <soapenv:Header/>\r\n <soapenv:Body>\r\n <tot:ReadRecord>\r\n <!--Optional:-->\r\n <tot:DataServerName>FopFuncData</tot:DataServerName>\r\n <!--Optional:-->\r\n <tot:PrimaryKey>1;00001</tot:PrimaryKey>\r\n <!--Optional:-->\r\n <tot:Contexto>codcoligada=1;codusuario=mestre;codsistema=p</tot:Contexto>\r\n </tot:ReadRecord>\r\n </soapenv:Body>\r\n</soapenv:Envelope>" } }, "response": { "header": [], "body": { "type": "raw", "content": "" } } } |
|
Card |
---|
id | LoggerDetailsList |
---|
label | Detalhes de vários logs pelos ids |
---|
| Objetivo: Detalhes de vários logs dado um conjunto de ids Tipo de requisição: GET Endpoint: /api/rh/logs/v1/integrations/details QueryParam: Campo | Tipo | Observação | Obrigatorio | Exemplo | ids | string | Uma string contendo vários logs separados por vírgula , | Sim | "11620630817,11620630812,11620630812" |
Exemplo: /api/rh/logs/v1/integrations/details?ids=11620630817,11081228397,11628122137,116351206011 Estrutura de Retorno: Campo | Tipo | hasNext | boolean | items | array de objetos detalhado abaixo |
Items - cada objeto terá o mesmo retorno especificado em 'Detalhes de um log' Expandir |
---|
| { "hasNext": false, "items": [ { "id": "11620630817", "dateTime": "2024-05-10T09:53:37", "isError": true, "statusCode": "200", "verb": "GET", "url": "http://localhost:8051/api/something/to/do?id=80982&scope=global", "server": "11.29.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "User-Agent", "value": "PostmanRuntime/7.37.3" }, { "key": "Connection", "value": "keep-alive" } ], "body": { "type": "raw", "format": "json", "content": "{}" } }, "response": { "header": [], "body": { "type": "raw", "content": "{}" } } }, { "id": "11081228397", "dateTime": "2024-05-10T09:53:37", "isError": false, "statusCode": "200", "verb": "GET", "url": "http://localhost:8051/api/framework/v2/companies/", "server": "11.10.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "Authorization", "value": "Basic bWVzdHJlOnRvdHZz" } ], "body": { "type": "raw", "format": "json", "content": "{}" } }, "response": { "header": [], "body": { "type": "raw", "content": "{\"hasNext\":false,\"items\":[{\"id\":1,\"nomeFantasia\":\"TOTVS SA\",\"federalId\":\"21.867.387/0001-58\",\"name\":\"TOTVS SA\",\"phoneNumber\":\"31-21229000\",\"email\":\"silvana@totvs.com.br\",\"rua\":\"AVENIDA RAJA GABAGLIA\",\"numero\":\"2664\",\"complemento\":\"2º ANDAR\",\"bairro\":\"SANTA LÚCIA\",\"cidade\":\"Belo Horizonte\",\"estado\":\"MG\",\"pais\":\"Brasil\",\"cep\":\"30350-540\"},{\"id\":6,\"nomeFantasia\":\"INSTITUTO TOTVS DE ENSINO SA\",\"federalId\":\"25.578.337/0001-01\",\"name\":\"INSTITUTO TOTVS DE ENSINO SA\",\"phoneNumber\":\"31-21229000\",\"email\":\"masterkeyweb@totvs.com.br\",\"rua\":\"AVENIDA RAJA GABAGLIA\",\"numero\":\"2664\",\"complemento\":\"2º ANDAR\",\"bairro\":\"SANTA LÚCIA\",\"cidade\":\"BELO HORIZONTE\",\"estado\":\"MG\",\"pais\":\"BRASIL\",\"cep\":\"30350-540\"},{\"id\":7,\"nomeFantasia\":\"INSTITUTO TOTVS DE ENSINO SUPERIOR SA\",\"federalId\":\"05.295.401/0001-30\",\"name\":\"INSTITUTO TOTVS DE ENSINO SUPERIOR SA\",\"phoneNumber\":\"31-21229000\",\"email\":\"masterkeyweb@totvs.com.br\",\"rua\":\"AVENIDA RAJA GABAGLIA\",\"numero\":\"2664\",\"complemento\":\"2º ANDAR\",\"bairro\":\"SANTA LÚCIA\",\"cidade\":\"BELO HORIZONTE\",\"estado\":\"MG\",\"pais\":\"BRASIL\",\"cep\":\"30350-540\"}]}" } } }, { "id": "11628122137", "dateTime": "2024-05-10T09:53:37", "isError": false, "statusCode": "200", "verb": "POST", "url": "http://localhost:8051/api/rh/esocial/v1/reportEsocialBaseConfer/", "server": "20.10.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "CodUsuario", "value": "mestre" }, { "key": "CodColigada", "value": "1" }, { "key": "CodSistema", "value": "p" } ], "body": { "type": "raw", "format": "json", "content": "{\"companyId\":1,\"lotationCode\":[],\"eSocialCategory\":[],\"cpfNumber\":[\"21170836097\"],\"eSocialRegistration\":[],\"paymentPeriod\":\"202304\",\"tribute\":\"3\",\"pageSize\":\"50\",\"differencesOnly\":false}" } }, "response": { "header": [], "body": { "type": "raw", "content": "" } } }, { "id": "116351206011", "dateTime": "2024-05-10T09:53:37", "isError": false, "statusCode": "200", "verb": "POST", "url": "http://spon010119801:8051/wsDataServer/IwsDataServer", "server": "20.10.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "Content-Type", "value": "text/xml; charset=utf-8" }, { "key": "SOAPAction", "value": "http://www.totvs.com/IwsDataServer/ReadRecord" }, { "key": "Authorization", "value": "Basic bWVzdHJlOnRvdHZz" } ], "body": { "type": "raw", "format": "xml", "content": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:tot=\"http://www.totvs.com/\">\r\n <soapenv:Header/>\r\n <soapenv:Body>\r\n <tot:ReadRecord>\r\n <!--Optional:-->\r\n <tot:DataServerName>FopFuncData</tot:DataServerName>\r\n <!--Optional:-->\r\n <tot:PrimaryKey>1;00001</tot:PrimaryKey>\r\n <!--Optional:-->\r\n <tot:Contexto>codcoligada=1;codusuario=mestre;codsistema=p</tot:Contexto>\r\n </tot:ReadRecord>\r\n </soapenv:Body>\r\n</soapenv:Envelope>" } }, "response": { "header": [], "body": { "type": "raw", "content": "" } } } ] } |
|
Card |
---|
id | LoggerDetailsList |
---|
label | Detalhes de vários logs |
---|
| Objetivo: Detalhes de vários logs Tipo de requisição: GET Endpoint: /api/rh/logs/v1/integrations/details QueryParam: Exemplo: /api/rh/logs/v1/integrations/details?companyId=1&idIntegration=0&idLogType=0&idProcess=1&startDateTime=2024-05-10T09:53:37&order=-dateTime&page=1&pageSize=30
Mais detalhes sobre o campo order:
Image Added
Estrutura de Retorno: Campo | Tipo | hasNext | boolean | items | array de objetos detalhado abaixo |
Items - cada objeto terá o mesmo retorno especificado em 'Detalhes de um log' Expandir |
---|
| { "hasNext": false, "items": [ { "id": "11620630817", "dateTime": "2024-05-10T09:53:37", "isError": true, "statusCode": "200", "verb": "GET", "url": "http://localhost:8051/api/something/to/do?id=80982&scope=global", "server": "11.29.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "User-Agent", "value": "PostmanRuntime/7.37.3" }, { "key": "Connection", "value": "keep-alive" } ], "body": { "type": "raw", "format": "json", "content": "{}" } }, "response": { "header": [], "body": { "type": "raw", "content": "{}" } } }, { "id": "11081228397", "dateTime": "2024-05-10T09:53:37", "isError": false, "statusCode": "200", "verb": "GET", "url": "http://localhost:8051/api/framework/v2/companies/", "server": "11.10.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "Authorization", "value": "Basic bWVzdHJlOnRvdHZz" } ], "body": { "type": "raw", "format": "json", "content": "{}" } }, "response": { "header": [], "body": { "type": "raw", "content": "{\"hasNext\":false,\"items\":[{\"id\":1,\"nomeFantasia\":\"TOTVS SA\",\"federalId\":\"21.867.387/0001-58\",\"name\":\"TOTVS SA\",\"phoneNumber\":\"31-21229000\",\"email\":\"silvana@totvs.com.br\",\"rua\":\"AVENIDA RAJA GABAGLIA\",\"numero\":\"2664\",\"complemento\":\"2º ANDAR\",\"bairro\":\"SANTA LÚCIA\",\"cidade\":\"Belo Horizonte\",\"estado\":\"MG\",\"pais\":\"Brasil\",\"cep\":\"30350-540\"},{\"id\":6,\"nomeFantasia\":\"INSTITUTO TOTVS DE ENSINO SA\",\"federalId\":\"25.578.337/0001-01\",\"name\":\"INSTITUTO TOTVS DE ENSINO SA\",\"phoneNumber\":\"31-21229000\",\"email\":\"masterkeyweb@totvs.com.br\",\"rua\":\"AVENIDA RAJA GABAGLIA\",\"numero\":\"2664\",\"complemento\":\"2º ANDAR\",\"bairro\":\"SANTA LÚCIA\",\"cidade\":\"BELO HORIZONTE\",\"estado\":\"MG\",\"pais\":\"BRASIL\",\"cep\":\"30350-540\"},{\"id\":7,\"nomeFantasia\":\"INSTITUTO TOTVS DE ENSINO SUPERIOR SA\",\"federalId\":\"05.295.401/0001-30\",\"name\":\"INSTITUTO TOTVS DE ENSINO SUPERIOR SA\",\"phoneNumber\":\"31-21229000\",\"email\":\"masterkeyweb@totvs.com.br\",\"rua\":\"AVENIDA RAJA GABAGLIA\",\"numero\":\"2664\",\"complemento\":\"2º ANDAR\",\"bairro\":\"SANTA LÚCIA\",\"cidade\":\"BELO HORIZONTE\",\"estado\":\"MG\",\"pais\":\"BRASIL\",\"cep\":\"30350-540\"}]}" } } }, { "id": "11628122137", "dateTime": "2024-05-10T09:53:37", "isError": false, "statusCode": "200", "verb": "POST", "url": "http://localhost:8051/api/rh/esocial/v1/reportEsocialBaseConfer/", "server": "20.10.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "CodUsuario", "value": "mestre" }, { "key": "CodColigada", "value": "1" }, { "key": "CodSistema", "value": "p" } ], "body": { "type": "raw", "format": "json", "content": "{\"companyId\":1,\"lotationCode\":[],\"eSocialCategory\":[],\"cpfNumber\":[\"21170836097\"],\"eSocialRegistration\":[],\"paymentPeriod\":\"202304\",\"tribute\":\"3\",\"pageSize\":\"50\",\"differencesOnly\":false}" } }, "response": { "header": [], "body": { "type": "raw", "content": "" } } }, { "id": "116351206011", "dateTime": "2024-05-10T09:53:37", "isError": false, "statusCode": "200", "verb": "POST", "url": "http://spon010119801:8051/wsDataServer/IwsDataServer", "server": "20.10.0.0", "comments": "algum comentário útil", "process": "", "request": { "header": [ { "key": "Content-Type", "value": "text/xml; charset=utf-8" }, { "key": "SOAPAction", "value": "http://www.totvs.com/IwsDataServer/ReadRecord" }, { "key": "Authorization", "value": "Basic bWVzdHJlOnRvdHZz" } ], "body": { "type": "raw", "format": "xml", "content": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:tot=\"http://www.totvs.com/\">\r\n <soapenv:Header/>\r\n <soapenv:Body>\r\n <tot:ReadRecord>\r\n <!--Optional:-->\r\n <tot:DataServerName>FopFuncData</tot:DataServerName>\r\n <!--Optional:-->\r\n <tot:PrimaryKey>1;00001</tot:PrimaryKey>\r\n <!--Optional:-->\r\n <tot:Contexto>codcoligada=1;codusuario=mestre;codsistema=p</tot:Contexto>\r\n </tot:ReadRecord>\r\n </soapenv:Body>\r\n</soapenv:Envelope>" } }, "response": { "header": [], "body": { "type": "raw", "content": "" } } } ] } |
|
|
|