Presence API - Orientações Técnicas
O Presence API possui endpoints (chamadas de métodos via URL). As chamadas são:
PingServer - Verifica se o serviço de autenticação está em execução
Autenticação (Basic Auth):
Usuário e Senha fornecidos pela Presence para realizar a integração.
Método - GET
Retorno
- {
- "api": "PresenceAuthorization",
- "state": "Running",
- "time": "2021-04-14T16:49:44.846Z"
- }
Exemplo de chamada do método via Postman
Autenticação (Basic Auth):
PingServer - Verifica se o serviço de consulta está em execução
URL
Retorno
- {
- "api": "PresenceWebApi",
- "state": "Running",
- "time": "2021-04-14T16:49:44.846Z"
- }
Exemplo de chamada do método via Postman
Autenticação - Geração de Token
Autenticação (Basic Auth)
Usuário e Senha fornecidos pela Presence para realizar a integração.
Método - POST
Body
No exemplo abaixo onde está "SISTEMA", "NUMERO DE SERIE", "NOME_METODO" deve ser trocado por um dos métodos disponíveis para o uso. Ex.: "FUNCIONARIOS".
- {
- "sistema" : "SISTEMA",
- "serie": NUMERO DE SERIE
- "metodo": "NOME_METODO"
- }
- {
- "access": "granted",
- "token": "TOKEN RETORNADO DA API"
- }
Exemplo de chamada do método via Postman
Autenticação (Basic Auth):
Body (Com o método informado):
Consulta - Consumo de Dados
Offset e limit
Quando a URL possuir informações de offset e limit (?offset=1&limit=1000), a consulta irá retornar os registros por paginação:
Offset = Ponteiro dos registros retornados;
Limit = Limite de regisros retornados por carregamento (o valor máximo e padrão permitido é de 1000 registros).
Exemplo prático:
Quando enviamos o valor ?offset=1&limit=10, configuramos o retorno de 10 registros por página (limit=10), iniciando o ponteiro no registro 1 (offset=1).
Após carregar esses 10 primeiros registros, o cabeçalho do retorno apresentará as tags nextStartedAt e nextOffset.
A tag nextOffset, deve alimentar a tags abaixo, que deve ser enviadas na próxima requisição ao método:
Valor da tag nextOffset deve ser enviado na URL (parâmetro) Offset para identificar qual será o primeiro registro da próxima páginação;
Até o final do processamento de todas as paginações (quando o retorno não tiver mais a tag nextOffset), a tag data_at deve ser a mesma do início do processamento.
Pending
Quando existem registros com erros da método que está sendo consultado, eles sempre serão retornados em uma primeira paginação e o cabeçalho do retorno apresentará a tag nextPending.
Essa tag, nextPending, deve alimentar a tag abaixo, que deve ser enviada na próxima requisição ao método:
Valor da tag nextPending deve ser enviado na tag Pending para para identificar se a próxima paginação a ser apresentada será de erro (1) ou não (0).
Autenticação (Bearer Token)
Token gerado através da chamada do método Token acima.
Método - POST
Body
- {
- "status": "ok",
- "method": "NOME_METODO",
- "data": [ Resultado do método como uma lista JSON]
- }
Exemplo de chamada do método via Postman
Autenticação (Bearer Token):
Body (Com parâmetro):
Body (Com mais de um parâmetro):
Inclusão e Atualização de Dados
URL
Autenticação (Bearer Token)
Token gerado através da chamada do método Token acima informando um dos métodos INCLUIR_CLIENTE, INCLUIR_PRODUTO, INCLUIR_PEDIDO ou ALTERAR_STATUS_PEDIDO.
Método - POST
Exemplo de chamada via Postman
Body
Body (Exemplo INCLUIR_CLIENTE)
- {
- "codigoExterno":"String",
- "loja": "String",
- "cpf_cnpj": "String",
- "razao":"String",
- "nome": "String"
- "tipoPessoa":"String",
- "operacao": "String",
- "situacao": "String",
- "rg_ie": "String",
- "email": "String",
- "sexo": "String",
- "dataNascimento":"DateTime",
- "dddTelefone": "String",
- "telefone": "String",
- "dddCelular": "String",
- "celular": "String",
- "dddTelComercial": "String",
- "telComercial": "String",
- "dddFax": "String",
- "fax": "String",
- "endereco": "String",
- "numero": "String",
- "complemento": "String",
- "bairro": "String",
- "cep": "String",
- "cidade": "String",
- "uf": "String",
- "pais": "String",
- "enderecoCobranca":{
- "endereco": "String",
- "numero": "String",
- "complemento": "String",
- "bairro": "String",
- "cep": "String",
- "cidade": "String",
- "uf": "String",
- "pais": "String",
- },
- "enderecoEntrega":{
- "endereco": "String",
- "numero": "String",
- "complemento": "String",
- "bairro": "String",
- "cep": "String",
- "cidade": "String",
- "uf": "String",
- "pais": "String",
- }
- }
- {
- "status": "sucesso",
- "msg": "String"
- }
- {
- "status": "erro",
- "msg": "String
- }
Exemplo de Erro
Related Articles
Presence API - Página Inicial
Essa API permite o consumo de informações disponíveis nos sistemas Presence através de chamadas de serviço, bem como a inserção de dados nos sistemas. Para ter acesso aos métodos já existentes, ou solicitação da criação de novos métodos, consulte as ...
Presence API - INCLUIR_PRODUTO
Inclusão de Produtos (Atualização e Inclusão) Este módulo é responsável por incluir produtos na base da dados. Parâmetros Campos Tipo Obrigatório Descrição codigo string(8) Não para inclusão, sim para alteração, quando codigoExterno ou codigoLegado ...
Presence API - NFE
Nota Fiscal Este módulo é responsável por listar as notas fiscais da base da dados. Parâmetros Nome Obrigatório Tipo Descrição data_at SIM quando não informado demais campos. Data (AAAA-MM-DDT00:00:00) Data de atualização dos dados. Padrão ISO8601. ...
Presence API - MOVIMENTO_CONTA
Movimentações de Conta-corrente Este módulo é responsável por listar as movimentações de conta-corrente da base da dados. Parâmetros Nome Obrigatório Tipo Descrição cod_contacorrente Não Integer Código da conta-corrente cadastrada no Presence Domain ...
Presence API - INCLUIR_PEDIDO
Inclusão de Pedidos (Somente Inclusão) Este módulo é responsável por incluir pedidos na base da dados. BODY Pedido Nome Obrigatório Tipo Descrição codigoPedidoExterno Sim String Código do pedido na plataforma dataEmissão Não Data ...