Documentação da API do HubSoft!

_images/hubsoft.png

Bem-vindo à documentação da API do HubSoft. Para utilizar a API é necessário que você tenha em mãos as seguintes informações: Endereço do Servidor, Client Secret, Client Id, Username e Password. Com esses dados em mãos, será possível fazer autenticação via oAuth2, para utilizar a API

Introdução

HubSoft é um sistema voltado para empresas de telecomunicação. A ideia de liberar a API do sistema, torna todos os processos de integração / comunicação mais dinâmicos, tornando as rotinas das empresas mais simples e ágeis.

Com intuito de sempre inovar, a API do HubSoft foi construída em cima das tecnologias mais recentes do mercado. A troca de mensagens com a API é feita através do HTTP (Hypertext Transfer Protocol) utilizando o estilo arquitetural REST (Representation State Transfer).

Exemplos:

https://example.com/produto/1234

Ao fazer uma chamada na rota acima utilizando o método GET, estaremos fazendo a consulta do produto de código 1234. Porém ao fazer a chamada na mesma rota, utilizando o método DELETE, estaremos enviando a instrução para que a API faça a remoção do produto 1234.

Dessa forma, todas as funções do CRUD estarão dipsoníveis pela API, através dos métodos:

  • GET (Consultar)
  • POST (Adicionar)
  • PUT (Editar)
  • DELETE (Apagar)

Autenticação da API

Necessário

Para autenticar na API, será necessário possuir os seguintes dados em mãos:

  • client_id
  • client_secret
  • username
  • password
  • host

Para fazer a autenticação na API é necessário fazer uma requisição POST na rota:

https://endereco_do_servidor/oauth/token

Deverá ser enviado na requisição um JSON, com as seguintes informações:

{
        "grant_type":"password",
        "client_id":"3",
        "client_secret":"ONe7Ns48Y30tB",
        "username":"teste@teste.com",
        "password":"1234"
}

O exemplo acima, possui alguns prarâmetros, que serão explicados abaixo:

  • grant_type: Sempre deverá conter o valor «password»
  • client_id: Será o client_id que a empresa e/ou equipe do HubSoft lhe enviar
  • client_secret: Será o client_secret que a empresa e/ou equipe do HubSoft lhe enviar
  • username: Será o nome de usuário do sistema (Sempre será um endereço de e-mail)
  • password: Senha do usuário

O resultado da requisição da rota /oauth/token, será igual ao exemplo abaixo:

{
        access_token:"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
        expires_in:2592000
        refresh_token:"def502007d459fb49e6b09071f127a0163714607233687eac066
        token_type:"Bearer"
}

Nesse momento, você já possui todos os dados necessário para iniciar as chamadas na rota da API. Em todas as rotas da API, será necessário enviar o TOKEN que foi recebido na rota /oauth/token. O TOKEN que deve ser enviado, é formado pelo token_type + access_token, no caso do exemplo acima o token ficaria da seguinte forma:

Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O

Exemplo de chamada em uma rota, enviando os dados do Token:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
https://endereco_servidor/api/v1/teste -k

Aviso

IMPORTANTE: O token irá expirar conforme o tempo retornado no parametro expires_in. Observação: O valor 2592000 é equivalente a 30 dias. Sugerimos que armazenem o token e reutilizem o mesmo, conforme for necessário. Será necessário gerar um novo token sempre que o mesmo expirar. Observação 2: Caso o token ainda não tenha terminado o seu prazo de validade, porém a API retornar o código de status HTTP 401, significa que é necessário gerar um novo token, pois o mesmo pode ter sido cancelado / expirado manualmente através de algum usuário administrador do sistema (por exemplo, durante atualizações o sistema poderá invalidar todos os TOKENS, fazendo com que uma nova autenticação seja necessária)

Aviso

IMPORTANTE: Veja que o token foi enviado no HEADER da requisição HTTP. Conforme o exemplo acima, podemos observar que o token é enviado sempre no header Authorization. Caso o Token não esteja presente no header Authorization a API irá responder com o código HTTP 401 (Unauthorized), não permitindo a utilização da API.

Atendimento

Necessário

Para fazer requisições nos dados de atendimento, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de atendimentos, devem ser feitos na rota:

/api/v1/integracao/atendimento

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/atendimento

Abaixo estão todas as funções disponíveis do atendimento

Consulta (Todos os Atendimentos - Com Paginação)

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação).

As requisições de atendimentos, devem ser feitos na rota:

/api/v1/integracao/atendimento/paginado/{quantidade}?page={numero_pagina}

O parâmetro quantidade indica quantos itens serão retornados por página. E o parâmetro numero_pagina indica qual pagina será consultada na requisição

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/atendimento/paginado/10?page=1

POST

No método POST, irá consultar os dados dos atendimentos e retornar um JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
data_inicio Data de Cadastro Inicial Sim
data_fim Data de Cadastro Final Sim

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
data_inicio Valor no formato DateTime (YYYY-MM-DD) Nenhum
data_fim Valor no formato DateTime (YYYY-MM-DD) Obs: Maior ou igual data_inicio Nenhum

Exemplo de requisição POST na rota de atendimentos:

curl --request POST \
  --url 'http://endereco_servidor/api/v1/integracao/atendimento/paginado/5?page=1' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O \
  --header 'Content-Type: application/json' \
  --data '{
  "data_inicio":"2021-04-10",
  "data_fim":"2021-04-15"
}'

Retorno da requisição POST:

{
  "status": "success",
  "msg": "Dados consultados com sucesso",
  "atendimentos": {
    "current_page": 2,
    "data": [
      {
        "id_atendimento": 2364,
        "protocolo": "202104151321184",
        "id_cliente_servico": 11883,
        "id_tipo_atendimento": 132,
        "id_usuario_abertura": 1129,
        "id_usuario_fechamento": null,
        "descricao_abertura": "ir no cliente com urgência",
        "descricao_fechamento": null,
        "data_cadastro": "2021-04-15 13:24:14",
        "data_fechamento": null,
        "ip_cadastro": "177.22.5.2",
        "id_usuario_responsavel": null,
        "id_setor_responsavel": null,
        "destino": "usuario",
        "status_fechamento": null,
        "id_motivo_fechamento_atendimento": null,
        "id_atendimento_status": 22,
        "nome_contato": "JULIO CESAR ANANIAS",
        "telefone_contato": "37988469145",
        "email_contato": "naotem@naotem.com.br",
        "rascunho": false,
        "deleted_at": null,
        "id_origem_contato": null,
        "avaliacao": null,
        "comentario_avaliacao": null,
        "push_notification_enviado": false,
        "ordem_servico_count": 1,
        "anexos_count": 1,
        "ingressado": false,
        "data_cadastro_br": "15\/04\/2021 13:24",
        "data_cadastro_timestamp": 1618503854000,
        "data_fechamento_br": null,
        "data_fechamento_timestamp": null,
        "minutos_em_aberto": 5945,
        "tempo_restante": "-98h 5min",
        "percentual_tempo_restante": 0,
        "percentual_color_class": "white-fg md-red-bg",
        "status": {
          "id_atendimento_status": 22,
          "prefixo": "pendente",
          "descricao": "Pendente",
          "cor": "md-purple-900-bg",
          "abrir_ordem_servico": true,
          "display": "Pendente (Abertura de OS)"
        },
        "tipo_atendimento": {
          "id_tipo_atendimento": 132,
          "descricao": "FINANCEIRO"
        },
        "cliente_servico": {
          "id_cliente_servico": 11883,
          "id_cliente": 11357,
          "id_servico": 1208,
          "endereco_numero_completo": "RUA PEDRO F DE OLIVEIRA, 55, CH BARRETOS - BARRETOS, NOVA SERRANA\/MG | CEP: 35519-000",
          "cliente": {
            "id_cliente": 11357,
            "ativo": true,
            "codigo_cliente": 577,
            "nome_razaosocial": "JULIO CESAR ANANIAS",
            "display": "(577) JULIO CESAR ANANIAS"
          }
        },
        "usuarios_responsaveis": []
      },
      {
        "id_atendimento": 2362,
        "protocolo": "202104150938230",
        "id_cliente_servico": 15871,
        "id_tipo_atendimento": 126,
        "id_usuario_abertura": 1131,
        "id_usuario_fechamento": null,
        "descricao_abertura": "INSTALAR PONTO NOVO",
        "descricao_fechamento": null,
        "data_cadastro": "2021-04-15 09:38:23",
        "data_fechamento": null,
        "ip_cadastro": null,
        "id_usuario_responsavel": null,
        "id_setor_responsavel": null,
        "destino": "usuario",
        "status_fechamento": null,
        "id_motivo_fechamento_atendimento": null,
        "id_atendimento_status": 22,
        "nome_contato": "GLEIDSON PEREIRA TORRES",
        "telefone_contato": "83996555702",
        "email_contato": "gleidson@alsol.com.br",
        "rascunho": false,
        "deleted_at": null,
        "id_origem_contato": 2,
        "avaliacao": null,
        "comentario_avaliacao": null,
        "push_notification_enviado": false,
        "ordem_servico_count": 0,
        "anexos_count": 0,
        "ingressado": false,
        "data_cadastro_br": "15\/04\/2021 09:38",
        "data_cadastro_timestamp": 1618490303000,
        "data_fechamento_br": null,
        "data_fechamento_timestamp": null,
        "minutos_em_aberto": 6171,
        "tempo_restante": "-101h 51min",
        "percentual_tempo_restante": 0,
        "percentual_color_class": "white-fg md-red-bg",
        "status": {
          "id_atendimento_status": 22,
          "prefixo": "pendente",
          "descricao": "Pendente",
          "cor": "md-purple-900-bg",
          "abrir_ordem_servico": true,
          "display": "Pendente (Abertura de OS)"
        },
        "tipo_atendimento": {
          "id_tipo_atendimento": 126,
          "descricao": "ATIVAÇÃO FIBRA ÓPTICA"
        },
        "cliente_servico": {
          "id_cliente_servico": 15871,
          "id_cliente": 24532,
          "id_servico": 2610,
          "endereco_numero_completo": "RUA ALZIRA PEREIRA DE MELO, 181, CASA VERMELHA(VIZINHO A MERCEARIA DA SAMARA) - JARDIM PLANALTO, CATOLÉ DO ROCHA\/PB | CEP: 58884-000",
          "cliente": {
            "id_cliente": 24532,
            "ativo": true,
            "codigo_cliente": 1679,
            "nome_razaosocial": "GLEIDSON PEREIRA TORRES",
            "display": "(1679) GLEIDSON PEREIRA TORRES"
          }
        },
        "usuarios_responsaveis": [
          {
            "id": 1131,
            "name": "Gleidson Torres",
            "id_imagem_upload": null,
            "pivot": {
              "id_atendimento": 2362,
              "id_usuario": 1131
            },
            "imagem": null
          }
        ]
      }
    ],
    "first_page_url": "http:\/\/localhost:8000\/api\/v1\/integracao\/atendimento\/paginado\/2?page=1",
    "from": 3,
    "last_page": 5,
    "last_page_url": "http:\/\/localhost:8000\/api\/v1\/integracao\/atendimento\/paginado\/2?page=5",
    "next_page_url": "http:\/\/localhost:8000\/api\/v1\/integracao\/atendimento\/paginado\/2?page=3",
    "path": "http:\/\/localhost:8000\/api\/v1\/integracao\/atendimento\/paginado\/2",
    "per_page": 2,
    "prev_page_url": "http:\/\/localhost:8000\/api\/v1\/integracao\/atendimento\/paginado\/2?page=1",
    "to": 4,
    "total": 10
  },
  "cliente": null
}

Novo Atendimento

Necessário

Para fazer requisições nos dados de atendimento, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de atendimento, devem ser feitos na rota:

/api/v1/integracao/atendimento

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/atendimento

POST

No método POST, será possível consultar os atendimentos em aberto/fechados dos clientes e obter o retorno no formato JSON como resposta. Os segintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
id_cliente_servico Identificador do serviço do cliente Sim
id_tipo_atendimento Identificador do tipo de atendimento Não
descricao Descrição detalhada do atendimento Sim
nome Nome do solicitante Sim
telefone Telefone do solicitante Sim
email Email do solicitante Não
abrir_os Indica se deve abrir Ordem de Serviço ou não Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_cliente_servico Número Inteiro Nenhum
id_tipo_atendimento Número Inteiro Nenhum
descricao Campo Livre (Qualquer valor é aceito) Nenhum
nome Campo Livre (Qualquer valor é aceito) Nenhum
telefone Telefone no formato (DDNNNNNNNNN). Nenhum
email Caso enviado deve ser no formato e-mail (EX: user@dominio.com) Nenhum
abrir_os Caso enviado, deve conter um valor boolean (true | false) false

Observação: Se o paramêtro id_tipo_atendimento não for enviado, o atendimento será aberto com o tipo padrão SAC.

Exemplo de requisição POST na rota de crição de novo atendimento:

curl -X POST
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
https://endereco_servidor/api/v1/integracao/atendimento -d '{"id_cliente_servico":"11000", "descricao":"Abertura de atendimento de teste", "nome":"Nome do Usuário Solicitante", "telefone":"37999112233", "email":"teste@teste.com.br"}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
        "id_cliente_servico":"11000",
        "descricao":"Abertura de atendimento de teste",
        "nome":"Nome do Usuário Solicitante",
        "telefone":"37999112233",
        "email":"teste@teste.com.br",
        "abrir_os":true
}

Retorno da requisição GET:

{
    "status": "success",
    "msg": "Atendimento aberto com sucesso. Anote o protocolo: 201811161058216. Foi aberto também uma ordem de serviço e encaminhada ao sertor responsável",
    "atendimento": {
        "id_atendimento": 300,
        "protocolo": "201811161058216",
        "descricao_abertura": "Estou sem acesso a internet desde segunda-feira. | ATENDIMENTO ABERTO VIA API",
        "descricao_fechamento": null,
        "tipo_atendimento": "SAC",
        "usuario_abertura": "IP Telecom",
        "usuario_responsavel": "IP Telecom",
        "usuario_fechamento": null,
        "data_cadastro": "16/11/2018",
        "data_fechamento": null,
        "setor_responsavel": null,
        "status_fechamento": null,
        "motivo_fechamento": null,
        "status": "Aguardando Análise",
        "cliente": {
            "codigo_cliente": 1204,
            "nome_razaosocial": "BIANCA COUTO",
            "cpf_cnpj": "86214941081"
        },
        "ordens_servico": [
            {
                "id_ordem_servico": 340,
                "numero_ordem_servico": "320",
                "data_cadastro": "16/11/2018 10:58:21",
                "tipo": "ABERTURA VIA API",
                "data_inicio_programado": "16/11/2018 11:58:21",
                "data_termino_programado": "16/11/2018 12:58:21",
                "data_inicio_executado": null,
                "data_termino_executado": null,
                "descricao_abertura": "Estou sem acesso a internet desde segunda-feira. | ATENDIMENTO ABERTO VIA API",
                "descricao_servico": "Estou sem acesso a internet desde segunda-feira. | ATENDIMENTO ABERTO VIA API",
                "descricao_fechamento": null,
                "usuario_abertura": "IP Telecom",
                "usuario_fechamento": null,
                "status": "aguardando_agendamento",
                "status_fechamento": null,
                "cliente": {
                    "codigo_cliente": 1204,
                    "nome_razaosocial": "BIANCA COUTO",
                    "cpf_cnpj": "86214941081"
                },
                "servico": {
                    "numero_plano": 9,
                    "nome": "NEXT-NV_1MBPS",
                    "valor": 69.9,
                    "status": "Serviço Habilitado",
                    "status_prefixo": "servico_habilitado"
                }
            }
        ]
    }
}

Nota

OBSERVAÇÃO: O JSON de resposta da requisição acima, contém dados de ordem de serviço, pois na requisição o atributo (abrir_os) foi enviado como true. Sendo assim, o setor técnico do provedor de internet, vai receber essa ordem de serviço para ser executada em campo pelo técnico responsável.

Editar Atendimento

Necessário

Para fazer requisições nos dados de atendimento, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de atendimento, devem ser feitos na rota:

/api/v1/integracao/atendimento

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/atendimento/{id_atendimento}

PUT

No método PUT, será possível editar e fechar os atendimentos em abertos dos clientes e obter o retorno no formato JSON como resposta. Lembre de enviar o ID do atendimento como um parametro na URL, conforme o exemplo acima. Os segintes parâmetros podem/devem estar presentes no corpo do requisição:

Atributo Descrição Obrigatório
descricao Descrição de abertura do atendimento (Opcional) Não
fechar_atendimento Indica se deve ser fechado os atendimento e suas ordens de serviço Sim
parametros Objeto JSON que poderá conter qualquer informação da integração Sim

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
descricao Texto Nenhum
fechar_atendimento Boolean ( Verdadeiro ou Falso ) false
parametros Array Associativo, JSON Nenhum

Exemplo de requisição PUT na rota de edição do atendimento:

      curl -X PUT
      --header "Accept:application/json"
      --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
      https://endereco_servidor/api/v1/integracao/atendimento/1 -d '{"parametros": { "url_ligacao": "https://www.meusite.com.br/ligacao/3", "empresa": "NeWave", "xpto": 123456 }, "fechar_atendimento": true }' -k

Veja que os paramêtros enviados na requisição PUT devem obedecer a estrutura no formato JSON:

{
    "parametros": {
            "url_ligacao": "https://www.meusite.com.br/ligacao/3",
            "empresa": "NeWave",
            "xpto": 123456
    },
    "fechar_atendimento": true
}

Retorno da requisição PUT:

{
  "status": "success",
  "msg": "Atendimento atualizado com sucesso",
  "atendimento": {
    "id_atendimento": 1114,
    "protocolo": "202003051452007",
    "id_cliente_servico": 13677,
    "id_tipo_atendimento": 44,
    "id_usuario_abertura": 56,
    "id_usuario_fechamento": 1,
    "descricao_abertura": "INSTALAÇÃO NOVA",
    "descricao_fechamento": "Fechamento automático.",
    "data_cadastro": "2020-03-05 14:52:00",
    "data_fechamento": "2020-03-11 09:56:10",
    "ip_cadastro": null,
    "id_usuario_responsavel": 22,
    "id_setor_responsavel": null,
    "destino": "usuario",
    "status_fechamento": "concluido",
    "id_motivo_fechamento_atendimento": 5,
    "id_atendimento_status": 24,
    "resultado_diagnostico": null,
    "nome_contato": "TESTE APRESENT",
    "telefone_contato": "3734151100",
    "email_contato": null,
    "rascunho": false,
    "deleted_at": null,
    "id_origem_contato": null,
    "avaliacao": null,
    "comentario_avaliacao": null,
    "push_notification_enviado": false,
    "data_cadastro_br": "05\/03\/2020 14:52",
    "data_cadastro_timestamp": 1583430720000,
    "data_fechamento_br": "11\/03\/2020 09:56",
    "data_fechamento_timestamp": 1583931370000,
    "minutos_em_aberto": 8344,
    "tempo_restante": "-138h 4min",
    "percentual_tempo_restante": 0,
    "percentual_color_class": "white-fg md-red-bg"
  }
}

Cidade

Necessário

Para fazer requisições nos dados de endereços, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de endereçø, devem ser feitos na rota:

/api/v1/integracao/cidade

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cidade

Abaixo estão todas as funções disponíveis das rotas de endereço

All (Todas as Cidades)

Necessário

Para fazer requisições nos dados da API, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de REDE, devem ser feitos na rota:

/api/v1/integracao/configuracao/cidade

O endereço completo da requisição, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/configuracao/cidade

GET

No método GET, será possível consultar as cidades e seus bairros que estão cadastrados no sistema:

Exemplo de requisição GET na rota de Cidades:

    curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/endereco/cidade -k

Retorno da requisição GET:

    {
    "status": "success",
    "msg": "Dados consultados com sucesso.",
    "cidades": [
        {
            "id_cidade": 1393,
            "nome": "Araújos",
            "uf": "MG",
            "ibge": "3103900",
            "bairros": [
                {
                    "nome": "ANTONIA DE LURDES"
                },
                {
                    "nome": "BEIRA RIO"
                },
                {
                    "nome": "BELA VISTA"
                },
                {
                    "nome": "CENTRO"
                },
                {
                    "nome": "CHIQUINHO PERCILIA"
                },
                {
                    "nome": "CIDADE NOVA"
                },
                {
                    "nome": "CIDADE NOVO"
                },
                {
                    "nome": "DOM CABRAL"
                },
                {
                    "nome": "ESTEVES"
                },
                {
                    "nome": "ESTIVA"
                },
                {
                    "nome": "FREDERICO OZANAN"
                },
                {
                    "nome": "GERALDO FIRMINO"
                },
                {
                    "nome": "JOAO ALONSO"
                },
                {
                    "nome": "JUCA FIRMINO"
                },
                {
                    "nome": "OLAVO DA AZ"
                },
                {
                    "nome": "OLAVO DA PAZ"
                },
                {
                    "nome": "RESIDENCIAL OLAVO ALVES DA PAZ"
                },
                {
                    "nome": "SANTO AGOSTINHO"
                },
                {
                    "nome": "SANTO ANTÔNIO"
                },
                {
                    "nome": "SOLAR"
                }
            ]
        },
        {
            "id_cidade": 1406,
            "nome": "Bambuí",
            "uf": "MG",
            "ibge": "3105103",
            "bairros": [
                {
                    "nome": "CENTRO"
                },
                {
                    "nome": "JARDIM AMERICA"
                }
            ]
        },
        {
            "id_cidade": 1416,
            "nome": "Belo Horizonte",
            "uf": "MG",
            "ibge": "3106200",
            "bairros": [
                {
                    "nome": "LOURDES"
                },
                {
                    "nome": "OURO PRETO"
                },
                {
                    "nome": "PALMEIRAS"
                }
            ]
        }
    ]
}

Nota

OBSERVAÇÃO: Apenas as cidades e bairros que possuem clientes ativos, serão retornadas na requisição da API, uma vez que o sistema conta com o cadastro atualizado de todas as cidades do Brasil.

Clientes

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente

Abaixo estão todas as funções disponíveis do cliente

All (Todos os Clientes)

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação). OBS: Essa rota irá retornar todos os dados de clientes, caso nenhum parâmetro seja enviado. Utilize com cautela.

Aviso

IMPORTANTE: Por se tratar de uma requisição que poderá trazer uma quantidade muito grande dados, o sistema irá armazenar o resultado da requisição em um Cache. Portanto, em chamadas consecutivas em curtos intervalos de tempo dessa rota, o sistema irá retornar o mesmo resultado. Recomendamos o uso dessa API poucas vezes ao dia (EX: 1 vez de madrugada e outra na parte da tarde por exemplo). Chamadas consecutivas nessa API pode parar seu sistema.

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente/all

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/all

GET

No método GET, irá consultar os dados dos clientes e retornar um JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
data_inicio Data de Cadastro Inicial Não
data_fim Data de Cadastro Final Não
cancelado Retornar serviços cancelados Não
ultima_conexao Informa se deseja trazer os dados da última conexão Não
codigo_pacote Retorna apenas os clientes que contém pacotes com o código especificado Não
relacoes Carrega apenas os relacionamentos especificados Não
limit Limite de resultados Não
offset Deslocamento em relação ao limite de dados Não
order_by Campo que será utilizado para ordenação Não
order_type Tipo de Ordenação Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
data_inicio Valor no formato DateTime (YYYY-MM-DD) Nenhum
data_fim Valor no formato DateTime (YYYY-MM-DD) Obs: Maior ou igual data_inicio Nenhum
cancelado sim,nao nao
ultima_conexao sim,nao nao
codigo_pacote Valor no formato string Nenhum
relacoes endereco_instalacao,endereco_cadastral,endereco_cobranca,endereco_fiscal,pacotes,interface,interface_roteamento,equipamento_conexao,equipamento_roteamento,grupos,porta_atendimento,senhas,status_conexao Nenhum
limit Número Inteiro maior que 0 Nenhum
offset Número Inteiro maior que 0 Nenhum
order_by data_cadastro,data_fechamento data_cadastro
order_type asc,desc asc

Exemplo de requisição GET na rota de cliente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/all -k

Retorno da requisição GET:

{
    "status":"success",
    "msg":"Dados consultados com sucesso",
    "clientes":[
        {
            "id_cliente":11201,
            "codigo_cliente":421,
            "nome_razaosocial":"GUILHERME SILVA",
            "nome_fantasia":null,
            "tipo_pessoa":"pf",
            "cpf_cnpj":"10682083681",
            "telefone_primario":"37988242968",
            "telefone_secundario":"37988242968",
            "telefone_terciario":"",
            "email_principal":"guilherme@silva.com.br",
            "email_secundario":null,
            "rg":"MG16999888",
            "rg_emissao":null,
            "inscricao_municipal":null,
            "inscricao_estadual":null,
            "data_cadastro":"2017-08-05 00:00:00",
            "data_nascmento":"1969-12-31 04:00:00",
            "servicos":[
                {
                    "id_cliente_servico":11201,
                    "id_servico":100,
                    "numero_plano":1,
                    "nome":"4M",
                    "valor":119.9,
                    "status":"Serviço Habilitado",
                    "status_prefixo":"servico_habilitado",
                    "tecnologia":"WIRELESS",
                    "login":"guilhermesilva1068",
                    "senha":"123",
                    "ipv4":"10.99.2.203",
                    "ipv6":null,
                    "interface":{
                        "nome":"PON5",
                        "tipo":"gpon",
                        "called_sid":null
                    },
                    "interface_roteamento":{
                        "nome":"ether8",
                        "tipo":"ethernet",
                        "called_sid":null
                    },
                    "equipamento_conexao":{
                        "nome":"OLT XPTO",
                        "ipv4":"192.168.2.100",
                        "ipv6":null
                    },
                    "equipamento_roteamento":{
                        "nome":"CONCENTRADOR XPTO",
                        "ipv4":"172.17.24.98",
                        "ipv6":null
                    },
                    "pacotes":[
                           {
                            "id_pacote": 1,
                            "codigo":"meu_codigo_personalizado_1",
                            "descricao": "IP FIXO",
                            "valor": "20",
                            "observacoes": "IP FIXO 189.79.21.21",
                            "data_cadastro": "2019-11-21 16:43:56"
                        },
                        {
                            "id_pacote": 2,
                            "codigo":"meu_codigo_personalizado_2",
                            "descricao": "TV",
                            "valor": "20",
                            "observacoes": "ASSINATURA DE TV",
                            "data_cadastro": "2019-11-20 16:43:56"
                        }
                    ],
                    "senhas": [
                        {
                                "id_cliente_servico_senha": 6,
                                "descricao": "Teste",
                                "usuario": "xpto123",
                                "senha": "abc123"
                        }
                    ],
                    "endereco_cadastral":{
                        "completo":"RUA DONA MARIA DAS DORES, 541 - NOSSA SENHORA DAS GRACAS, DIVINóPOLIS/MG - IGREJA",
                        "logradouro":"RUA",
                        "endereco":"DONA MARIA DAS DORES",
                        "numero":"541",
                        "complemento":"IGREJA",
                        "bairro":"NOSSA SENHORA DAS GRACAS",
                        "cep":"35501-048",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Divinópolis",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    },
                    "endereco_instalacao":{
                        "completo":"RUA MINAS GERAIS, 1793 - IPIRANGA, DIVINÓPOLIS/MG",
                        "logradouro":"RUA",
                        "endereco":"MINAS GERAIS",
                        "numero":"1793",
                        "complemento":"",
                        "bairro":"IPIRANGA",
                        "cep":"35502-026",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Divinópolis",
                        "coordenadas": {
                            "latitude": -20.086592,
                            "longitude": -45.290962
                        }
                    },
                    "endereco_fiscal":{
                        "completo":"RUA GOIAS, 86 - PORTO VELHO, DIVINÓPOLIS/MG - APTO 101",
                        "logradouro":"RUA",
                        "endereco":"GOIAS",
                        "numero":"86",
                        "complemento":"APTO 101",
                        "bairro":"PORTO VELHO",
                        "cep":"35500-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Divinópolis",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    },
                    "endereco_cobranca":{
                        "completo":"RUA SEBASTIAO PARDINI, 58 - CENTRO, DIVINÓPOLIS/MG - 202",
                        "logradouro":"RUA",
                        "endereco":"SEBASTIAO PARDINI",
                        "numero":"58",
                        "complemento":"202",
                        "bairro":"CENTRO",
                        "cep":"35500-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Divinópolis",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    }
                }
            ]
        },
        {
            "id_cliente":11202,
            "codigo_cliente":422,
            "nome_razaosocial":"GUILHERME COSTA",
            "nome_fantasia":null,
            "tipo_pessoa":"pf",
            "cpf_cnpj":"05333614622",
            "telefone_primario":"37999450812",
            "telefone_secundario":"37999452812",
            "telefone_terciario":"",
            "email_principal":null,
            "email_secundario":null,
            "rg":"MG11298180",
            "rg_emissao":null,
            "inscricao_municipal":null,
            "inscricao_estadual":null,
            "data_cadastro":"2017-04-26 00:00:00",
            "data_nascmento":"1969-12-31 00:00:00",
            "servicos":[
                {
                    "id_cliente_servico":11302,
                    "id_servico":1023,
                    "numero_plano":2,
                    "nome":"24M",
                    "valor":119.9,
                    "status":"Serviço Habilitado",
                    "status_prefixo":"servico_habilitado",
                    "tecnologia":"FIBRA",
                    "login":"guilhermesouza0533",
                    "senha":"123",
                    "ipv4":"10.99.1.118",
                    "ipv6":null,
                    "interface":{
                        "nome":"PON5",
                        "tipo":"gpon",
                        "called_sid":null
                    },
                    "interface_roteamento":{
                        "nome":"ether8",
                        "tipo":"ethernet",
                        "called_sid":null
                    },
                    "equipamento_conexao":{
                        "nome":"OLT XPTO",
                        "ipv4":"192.168.2.100",
                        "ipv6":null
                    },
                    "equipamento_roteamento":{
                        "nome":"CONCENTRADOR XPTO",
                        "ipv4":"172.17.24.98",
                        "ipv6":null
                    },
                    "pacotes":[],
                    "senhas": [],
                    "endereco_cadastral":{
                        "completo":"RUA GERALDO RODRIGUES DA COSTA, 5 - CENTRO, SANTO ANTôNIO DO MONTE/MG",
                        "logradouro":"RUA",
                        "endereco":"GERALDO RODRIGUES DA COSTA",
                        "numero":"5",
                        "complemento":"",
                        "bairro":"CENTRO",
                        "cep":"35560000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Santo Antônio do Monte",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    },
                    "endereco_instalacao":{
                        "completo":"RUA JOÃO J FERNANDES, 900 - BARRETOS, NOVA SERRANA/MG - AREA RURAL",
                        "logradouro":"RUA",
                        "endereco":"JOÃO J FERNANDES",
                        "numero":"900",
                        "complemento":"AREA RURAL",
                        "bairro":"BARRETOS",
                        "cep":"35519-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Nova Serrana",
                        "coordenadas": {
                            "latitude": -19.8562717,
                            "longitude": -45.0105913
                        }
                    },
                    "endereco_fiscal":{
                        "completo":"RUA RITA DOS SANTOS MESQUITA, 233 - SANTO AGOSTINHO, PERDIGãO/MG",
                        "logradouro":"RUA",
                        "endereco":"RITA DOS SANTOS MESQUITA",
                        "numero":"233",
                        "complemento":"",
                        "bairro":"SANTO AGOSTINHO",
                        "cep":"35545-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Perdigão",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    },
                    "endereco_cobranca":{
                        "completo":"RUA DOIS, 221 - BARRETINHOS, NOVA SERRANA/MG - AREA RURAL",
                        "logradouro":"RUA",
                        "endereco":"DOIS",
                        "numero":"221",
                        "complemento":"AREA RURAL",
                        "bairro":"BARRETINHOS",
                        "cep":"35519-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Nova Serrana",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    }
                }
            ]
        }
    ]
}

Exemplo de requisição GET na rota de cliente, carregando apenas algumas relações:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/all?relacoes=pacotes,senhas -k

Retorno da requisição GET:

{
    "status":"success",
    "msg":"Dados consultados com sucesso",
    "clientes":[
        {
            "id_cliente":11201,
            "codigo_cliente":421,
            "nome_razaosocial":"GUILHERME SILVA",
            "nome_fantasia":null,
            "tipo_pessoa":"pf",
            "cpf_cnpj":"10682083681",
            "telefone_primario":"37988242968",
            "telefone_secundario":"37988242968",
            "telefone_terciario":"",
            "email_principal":"guilherme@silva.com.br",
            "email_secundario":null,
            "rg":"MG16999888",
            "rg_emissao":null,
            "inscricao_municipal":null,
            "inscricao_estadual":null,
            "data_cadastro":"2017-08-05 00:00:00",
            "data_nascmento":"1969-12-31 04:00:00",
            "servicos":[
                {
                    "id_cliente_servico":11201,
                    "id_servico":100,
                    "numero_plano":1,
                    "nome":"4M",
                    "valor":119.9,
                    "status":"Serviço Habilitado",
                    "status_prefixo":"servico_habilitado",
                    "tecnologia":"WIRELESS",
                    "login":"guilhermesilva1068",
                    "senha":"123",
                    "ipv4":"10.99.2.203",
                    "ipv6":null,
                    "pacotes":[
                           {
                            "id_pacote": 1,
                            "codigo":"meu_codigo_personalizado_1",
                            "descricao": "IP FIXO",
                            "valor": "20",
                            "observacoes": "IP FIXO 189.79.21.21",
                            "data_cadastro": "2019-11-21 16:43:56"
                        },
                        {
                            "id_pacote": 2,
                            "codigo":"meu_codigo_personalizado_2",
                            "descricao": "TV",
                            "valor": "20",
                            "observacoes": "ASSINATURA DE TV",
                            "data_cadastro": "2019-11-20 16:43:56"
                        }
                    ],
                    "senhas": [
                        {
                                "id_cliente_servico_senha": 6,
                                "descricao": "Teste",
                                "usuario": "xpto123",
                                "senha": "abc123"
                        }
                    ]
                }
            ]
        }
    ]
}

Atendimento

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/atendimento

GET

No método GET, será possível consultar os atendimentos em aberto/fechados dos clientes e obter o retorno no formato JSON como resposta. Os segintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
busca Tipo de busca que deseja fazer no cliente Sim
termo_busca Termo utilizado para fazer a busca Sim
limit Limite de resultados Não
apenas_pendente Informa de deseja trazer apenas os atendimentos pendentes (abertos) Não
order_by Campo que será utilizado para ordenação Não
order_type Tipo de Ordenação Não
data_inicio Data de Início (Utiliza a data de cadastro como base) Não
data_fim Data de Fim (Utiliza a data de cadastro como base) Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
busca codigo_cliente, cpf_cnpj, id_cliente_servico, protocolo Nenhum
termo_busca Campo livre (Qualquer valor será aceito) Nenhum
limit Valor mínimo 1, Valor máximo 50. 20
apenas_pendente sim,nao sim
order_by data_cadastro,data_fechamento data_cadastro
order_type asc,desc asc
data_inicio Campo no formato DateTime (YYYY-MM-DD) Nenhum
data_fim Campo no formato DateTime (YYYY-MM-DD) Nenhum

Exemplo de requisição GET na rota do cliente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/atendimento?busca=codigo_cliente&termo_busca=1099&limit=2 -k

Retorno da requisição GET:

        {
    "status": "suscess",
    "msg": "Dados consultados com sucesso",
    "atendimentos": [
        {
            "id_atendimento": 110,
            "protocolo": "201806191505251",
            "descricao_abertura": "VERIFICAR CONEXÃO",
            "descricao_fechamento": null,
            "tipo_atendimento": "TÉCNICO - QUEDAS DE CONEXÃO",
            "usuario_abertura": "Bianca Couto",
            "usuario_responsavel": "Bianca Couto",
            "usuario_fechamento": null,
            "data_cadastro": "19/06/2018",
            "data_fechamento": null,
            "setor_responsavel": null,
            "status_fechamento": null,
            "motivo_fechamento": null,
            "status": "Pendente",
            "cliente": {
                "codigo_cliente": 1204,
                "nome_razaosocial": "BIANCA COUTO",
                "cpf_cnpj": "86214941081"
            },
            "servico": {
                "id_cliente_servico":"123",
            "numero_plano": 0,
            "nome": "5MB-WIRELLES-TESTE",
            "valor": 199.9,
            "status": "Cancelado",
            "status_prefixo": "cancelado"
        },
            "ordens_servico": [
                {
                    "id_ordem_servico": 131,
                    "numero_ordem_servico": "125",
                    "data_cadastro": "19/06/2018 15:05:25",
                    "tipo": "SUPORTE",
                    "data_inicio_programado": "19/06/2018 14:02:00",
                    "data_termino_programado": "19/06/2018 15:02:00",
                    "data_inicio_executado": "19/06/2018 14:02:00",
                    "data_termino_executado": "19/06/2018 15:02:00",
                    "descricao_abertura": "VERIFICAR CONEXÃO",
                    "descricao_servico": "VERIFICAR CONEXÃO",
                    "descricao_fechamento": "asdfasdfadsf",
                    "usuario_abertura": "Bianca Couto",
                    "usuario_fechamento": "Bianca Couto",
                    "status": "finalizado",
                    "status_fechamento": "concluido",
                    "cliente": {
                        "codigo_cliente": 1204,
                        "nome_razaosocial": "BIANCA COUTO",
                        "cpf_cnpj": "86214941081"
                    },
                    "servico": {
                        "id_cliente_servico":"123",
                        "numero_plano": 0,
                        "nome": "5MB-WIRELLES-TESTE",
                        "valor": 199.9,
                        "status": "Cancelado",
                        "status_prefixo": "cancelado"
                    }
                }
            ]
        },
        {
            "id_atendimento": 285,
            "protocolo": "201811061724214",
            "descricao_abertura": "Abertura de atendimento através da API | ATENDIMENTO ABERTO VIA CENTRAL DO ASSINANTE",
            "descricao_fechamento": null,
            "tipo_atendimento": "SAC",
            "usuario_abertura": "Master",
            "usuario_responsavel": "Master",
            "usuario_fechamento": null,
            "data_cadastro": "06/11/2018",
            "data_fechamento": null,
            "setor_responsavel": null,
            "status_fechamento": null,
            "motivo_fechamento": null,
            "status": "Aguardando Análise",
            "cliente": {
                "codigo_cliente": 1204,
                "nome_razaosocial": "BIANCA COUTO",
                "cpf_cnpj": "86214941081"
            },
            "ordens_servico": []
        },
        {
            "id_atendimento": 300,
            "protocolo": "201811161058216",
            "descricao_abertura": "Estou sem acesso a internet desde segunda-feira. | ATENDIMENTO ABERTO VIA API",
            "descricao_fechamento": null,
            "tipo_atendimento": "SAC",
            "usuario_abertura": "IP Telecom",
            "usuario_responsavel": "IP Telecom",
            "usuario_fechamento": null,
            "data_cadastro": "16/11/2018",
            "data_fechamento": null,
            "setor_responsavel": null,
            "status_fechamento": null,
            "motivo_fechamento": null,
            "status": "Aguardando Análise",
            "cliente": {
                "codigo_cliente": 1204,
                "nome_razaosocial": "BIANCA COUTO",
                "cpf_cnpj": "86214941081"
            },
            "servico": {
                "id_cliente_servico":"12345",
                "numero_plano": 9,
                "nome": "NEXT-NV_1MBPS",
                "valor": 69.9,
                "status": "Serviço Habilitado",
                "status_prefixo": "servico_habilitado"
        },
            "ordens_servico": [
                {
                    "id_ordem_servico": 340,
                    "numero_ordem_servico": "320",
                    "data_cadastro": "16/11/2018 10:58:21",
                    "tipo": "ABERTURA VIA API",
                    "data_inicio_programado": "16/11/2018 11:58:21",
                    "data_termino_programado": "16/11/2018 12:58:21",
                    "data_inicio_executado": null,
                    "data_termino_executado": null,
                    "descricao_abertura": "Estou sem acesso a internet desde segunda-feira. | ATENDIMENTO ABERTO VIA API",
                    "descricao_servico": "Estou sem acesso a internet desde segunda-feira. | ATENDIMENTO ABERTO VIA API",
                    "descricao_fechamento": null,
                    "usuario_abertura": "IP Telecom",
                    "usuario_fechamento": null,
                    "status": "aguardando_agendamento",
                    "status_fechamento": null,
                    "cliente": {
                        "codigo_cliente": 1204,
                        "nome_razaosocial": "BIANCA COUTO",
                        "cpf_cnpj": "86214941081"
                    },
                    "servico": {
                        "id_cliente_servico":"12345",
                        "numero_plano": 9,
                        "nome": "NEXT-NV_1MBPS",
                        "valor": 69.9,
                        "status": "Serviço Habilitado",
                        "status_prefixo": "servico_habilitado"
                    }
                }
            ]
        }
    ]
}

Autenticação

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/autenticacao

POST

No método POST, será possível realizar a autenticação do cliente, com seu usuário e senha. Essa autenticação respeita os mesmos dados que o cliente utiliza para conectar na Central do Assinante WEB ou APP. Os segintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
usuario Usuário de Autenticação da Central Sim
senha Senha de Autenticação da Central Sim

Exemplo de requisição POST na rota do cliente:

curl -X POST
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/autenticacao -d '{"usuario":"12312312344", "senha":"!M1nhAS3nhA&"}' -k

Exemlo do JSON da requisição POST:

{
        "usuario":"12312312344",
        "senha":"!M1nhAS3nhA&"
}

Retorno da requisição POST:

{
    "status": "success",
    "msg": "Usuário autenticado com sucesso",
    "cliente": {
        "id_cliente": 23285,
        "codigo_cliente": 1382,
        "nome_razaosocial": "GUILHERME DA COSTA COUTO",
        "nome_fantasia": null,
        "cpf_cnpj": "09141806654",
        "data_nascimento": "1994-03-11",
        "telefone_primario": "37911112222",
        "telefone_secundario": "3734151100",
        "telefone_terciario": "11988887777",
        "email_principal": "naotem@naotem.com.br",
        "email_secundario": "naotem@naotem.com.br"
    }
}

Consulta

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente

GET

No método GET, irá consultar os dados dos clientes e retornar um JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
busca Tipo de busca que deseja fazer no cliente Sim
termo_busca Termo utilizado para fazer a busca Sim
limit Limite de resultados Não
cancelado Informa se deseja trazer os serviços cancelados ou não Não
ultima_conexao Informa se deseja trazer os dados da última conexão Não
incluir_contrato Informa se deseja incluir os contratos do serviço Não
order_by Campo que será utilizado para ordenação Não
order_type Tipo de Ordenação Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
busca nome_razaosocial, nome_fantasia, cpf_cnpj, codigo_cliente, telefone, login_radius, ipv4, mac Nenhum
termo_busca Campo livre (Qualquer valor será aceito) Nenhum
limit Valor mínimo 1, Valor Máximo 100. 5
cancelado sim,nao nao
ultima_conexao sim,nao nao
incluir_contrato sim,nao nao
order_by data_cadastro,data_fechamento data_cadastro
order_type asc,desc asc

Exemplo de requisição GET na rota de cliente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente?busca=nome_razaosocial&termo_busca=guilherme&limit=2&cancelado=nao&order_by=codigo_cliente&order_type=asc -k

Retorno da requisição GET:

{
    "status":"success",
    "msg":"Dados consultados com sucesso",
    "clientes":[
        {
            "id_cliente":11201,
            "codigo_cliente":421,
            "nome_razaosocial":"GUILHERME SILVA",
            "nome_fantasia":null,
            "tipo_pessoa":"pf",
            "cpf_cnpj":"10682083681",
            "telefone_primario":"37988242968",
            "telefone_secundario":"37988242968",
            "telefone_terciario":"",
            "email_principal":"guilherme@silva.com.br",
            "email_secundario":null,
            "rg":"MG16999888",
            "rg_emissao":null,
            "inscricao_municipal":null,
            "inscricao_estadual":null,
            "data_cadastro":"2017-08-05 00:00:00",
            "data_nascmento":"1969-12-31 04:00:00",
            "alerta":true,
            "alerta_mensagens":[
                "Existe um rompimento de fibra no bairro Centro, na cidade Divinópolis que está afetando esse cliente",
                "A equipe técnica já está a caminho para resolver o rompimento de fibra"
            ],
            "servicos":[
                {
                    "id_cliente_servico":11201,
                    "numero_plano":1,
                    "nome":"4M",
                    "valor":119.9,
                    "status":"Serviço Habilitado",
                    "status_prefixo":"servico_habilitado",
                    "tecnologia":"WIRELESS",
                    "login":"guilhermesilva1068",
                    "senha":"123",
                    "ipv4":"10.99.2.203",
                    "ipv6":null,
                    "ultima_conexao": {
                        "conectado": true,
                        "ultima_conexao_datetime": "2019-12-15 18:22:24-03",
                        "ultima_desconexao_datetime": null,
                        "ultima_conexao": "15/12/2019 18:22:24",
                        "ultima_desconexao": null,
                        "ultimo_ipv4": "189.90.210.100",
                        "ultimo_nas_ip": "10.28.33.20",
                        "status_txt": "CONECTADO HÁ 0 MES(ES), 0 DIA(S), 22 HORA(S) e 53 MINUTO(S) - 189.90.210.100(10.28.50.20)",
                        "status_txt_resumido": "CONECTADO HÁ 0 MES(ES), 0 DIA(S), 22 HORA(S) e 53 MINUTO(S)"
                    }
                    "interface":{
                        "nome":"PON5",
                        "tipo":"gpon",
                        "called_sid":null
                    },
                    "interface_roteamento":{
                        "nome":"ether8",
                        "tipo":"ethernet",
                        "called_sid":null
                    },
                    "equipamento_conexao":{
                        "nome":"OLT XPTO",
                        "ipv4":"192.168.2.100",
                        "ipv6":null
                    },
                    "equipamento_roteamento":{
                        "nome":"CONCENTRADOR XPTO",
                        "ipv4":"172.17.24.98",
                        "ipv6":null
                    },
                    "pacotes":[
                        {
                            "id_pacote": 1,
                            "descricao": "IP FIXO",
                            "valor": "20",
                            "observacoes": "IP FIXO 189.79.21.21",
                            "data_cadastro": "2019-11-21 16:43:56"
                        },
                        {
                                "id_pacote": 2,
                            "descricao": "TV",
                            "valor": "20",
                            "observacoes": "ASSINATURA DE TV",
                            "data_cadastro": "2019-11-20 16:43:56"
                        }
                    ],
                    "senhas": [
                                                                {
                                                                        "id_cliente_servico_senha": 6,
                                                                        "descricao": "Teste",
                                                                        "usuario": "xpto123",
                                                                        "senha": "abc123"
                                                                }
                                                        ],
                    "endereco_cadastral":{
                        "completo":"RUA DONA MARIA DAS DORES, 541 - NOSSA SENHORA DAS GRACAS, DIVINóPOLIS/MG - IGREJA",
                        "logradouro":"RUA",
                        "endereco":"DONA MARIA DAS DORES",
                        "numero":"541",
                        "complemento":"IGREJA",
                        "bairro":"NOSSA SENHORA DAS GRACAS",
                        "cep":"35501-048",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Divinópolis",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    },
                    "endereco_instalacao":{
                        "completo":"RUA MINAS GERAIS, 1793 - IPIRANGA, DIVINóPOLIS/MG",
                        "logradouro":"RUA",
                        "endereco":"MINAS GERAIS",
                        "numero":"1793",
                        "complemento":"",
                        "bairro":"IPIRANGA",
                        "cep":"35502-026",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Divinópolis",
                        "coordenadas": {
                            "latitude": -19.8562717,
                            "longitude": -45.0105913
                        }
                    },
                    "endereco_fiscal":{
                        "completo":"RUA GOIAS, 86 - PORTO VELHO, DIVINóPOLIS/MG - APTO 101",
                        "logradouro":"RUA",
                        "endereco":"GOIAS",
                        "numero":"86",
                        "complemento":"APTO 101",
                        "bairro":"PORTO VELHO",
                        "cep":"35500-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Divinópolis",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    },
                    "endereco_cobranca":{
                        "completo":"RUA SEBASTIAO PARDINI, 58 - CENTRO, DIVINóPOLIS/MG - 202",
                        "logradouro":"RUA",
                        "endereco":"SEBASTIAO PARDINI",
                        "numero":"58",
                        "complemento":"202",
                        "bairro":"CENTRO",
                        "cep":"35500-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Divinópolis",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    }
                }
            ]
        },
        {
            "id_cliente":11202,
            "codigo_cliente":422,
            "nome_razaosocial":"GUILHERME COSTA",
            "nome_fantasia":null,
            "tipo_pessoa":"pf",
            "cpf_cnpj":"05333614622",
            "telefone_primario":"37999450812",
            "telefone_secundario":"37999452812",
            "telefone_terciario":"",
            "email_principal":null,
            "email_secundario":null,
            "rg":"MG11298180",
            "rg_emissao":null,
            "inscricao_municipal":null,
            "inscricao_estadual":null,
            "data_cadastro":"2017-04-26 00:00:00",
            "data_nascmento":"1969-12-31 00:00:00",
            "alerta":false,
            "alerta_mensagens":[],
            "servicos":[
                {
                    "id_cliente_servico":11302,
                    "numero_plano":2,
                    "nome":"24M",
                    "valor":119.9,
                    "status":"Serviço Habilitado",
                    "status_prefixo":"servico_habilitado",
                    "tecnologia":"FIBRA",
                    "login":"guilhermesouza0533",
                    "senha":"123",
                    "ipv4":"10.99.1.118",
                    "ipv6":null,
                    "ultima_conexao": [],
                    "porta_atendimento": {
                        "numero": 7,
                        "equipamento": "A2R3C2"
                    },
                    "interface":{
                        "nome":"PON5",
                        "tipo":"gpon",
                        "called_sid":null
                    },
                    "interface_roteamento":{
                        "nome":"ether8",
                        "tipo":"ethernet",
                        "called_sid":null
                    },
                    "equipamento_conexao":{
                        "nome":"OLT XPTO",
                        "ipv4":"192.168.2.100",
                        "ipv6":null
                    },
                    "equipamento_roteamento":{
                        "nome":"CONCENTRADOR XPTO",
                        "ipv4":"172.17.24.98",
                        "ipv6":null
                    },
                    "pacotes":[],
                    "senhas":[],
                    "endereco_cadastral":{
                        "completo":"RUA GERALDO RODRIGUES DA COSTA, 5 - CENTRO, SANTO ANTôNIO DO MONTE/MG",
                        "logradouro":"RUA",
                        "endereco":"GERALDO RODRIGUES DA COSTA",
                        "numero":"5",
                        "complemento":"",
                        "bairro":"CENTRO",
                        "cep":"35560000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Santo Antônio do Monte",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    },
                    "endereco_instalacao":{
                        "completo":"RUA JOÃO J FERNANDES, 900 - BARRETOS, NOVA SERRANA/MG - AREA RURAL",
                        "logradouro":"RUA",
                        "endereco":"JOÃO J FERNANDES",
                        "numero":"900",
                        "complemento":"AREA RURAL",
                        "bairro":"BARRETOS",
                        "cep":"35519-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Nova Serrana",
                        "coordenadas": {
                            "latitude": -19.8562717,
                            "longitude": -45.0105913
                        }
                    },
                    "endereco_fiscal":{
                        "completo":"RUA RITA DOS SANTOS MESQUITA, 233 - SANTO AGOSTINHO, PERDIGãO/MG",
                        "logradouro":"RUA",
                        "endereco":"RITA DOS SANTOS MESQUITA",
                        "numero":"233",
                        "complemento":"",
                        "bairro":"SANTO AGOSTINHO",
                        "cep":"35545-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Perdigão",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    },
                    "endereco_cobranca":{
                        "completo":"RUA DOIS, 221 - BARRETINHOS, NOVA SERRANA/MG - AREA RURAL",
                        "logradouro":"RUA",
                        "endereco":"DOIS",
                        "numero":"221",
                        "complemento":"AREA RURAL",
                        "bairro":"BARRETINHOS",
                        "cep":"35519-000",
                        "estado":"MG",
                        "uf":"MINAS GERAIS",
                        "cidade":"Nova Serrana",
                        "coordenadas": {
                            "latitude": null,
                            "longitude": null
                        }
                    }
                }
            ]
        }
    ]
}

No exemplo acima, foi feito uma requisição utilizando os seguintes parâmetros:

  • busca: nome_razaosocial
  • limit: 2 (Preciso de apenas 2 resultados)
  • cancelado: nao (Quero apenas planos ativos)
  • order_by: codigo_cliente
  • order_type: asc (Do maior para o menor)

Aviso

IMPORTANTE: Para trazer os dados da última autenticação, é necessário enviar o parâmetro ultima_conexao=sim. A última conexão utiliza como base o extrato de conexão do RADIUS, por isso, caso existam problemas na rede do provedor, essa informação poderá não ser 100% confiável, uma vez, que ela depende que o concentrador do provedor, informe ao servidor RADIUS o estado atual da conexão do cliente.

Aviso

IMPORTANTE 2: Para que o HubSoft consiga retornar os dados de coordenadas do endereço, é importante que o provedor tenha configurado em seus sistema, as credenciais de integração com o Google Maps API. O HubSoft irá verificar apenas os endereços de instalação, para fazer a atualização de coordenadas.

Aviso

IMPORTANTE 3: O provedor poderá cadastrar os alertas, que serão retornados aqui na API, pelos atributos alerta e alerta_mensagens. Esses alertas, podem ser utilizados pelo software que está consumindo a API, para enviar uma mensagem automática em um BOT para o cliente, ou soltar um áudio customizado no PBX, quando o cliente ligar, ou ainda exibir o cliente de uma cor diferente no mapa. As possibilidades são muitas e vão depender exclusivamente da criatividade do integrador. A equipe do HubSoft estará sempre a disposição para ajudar os desenvolvedores em suas integrações conosco :)

Configuração de dados de Autenticação

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/configurar_autenticacao

POST

No método POST, será possível efetuar a configuração de alguns parametros de autenticação do serviço.

Atributos da Requisição

No método GET, irá consultar os dados dos clientes e retornar um JSON como resposta. Na consulta de Equipamentos é possível obter a lista de Interfaces e os respectivos IDs.

Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
id_cliente_servico Identificador único do serviço do cliente Sim
id_interface_conexao Interface de conexão com a qual o plano deverá ser vinculado Não
phy_addr MAC/Serial da ONU ou equipamento equivalente do cliente, que forneça acesso em camada 2 Não
password Senha de autenticação do cliente Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_cliente_servico Deve conter um número inteiro maior que 0 Nenhum
id_interface_conexao Deve conter um número inteiro maior que 0 Nenhum
phy_addr Deve conter uma sequencia de letras e caracteres, sem espaço Nenhum
password Deve conter no minimo tres caracteres Nenhum

Exemplo de requisição POST na rota do desbloqueio em confiança:

     curl -X POST
     --header "Accept:application/json"
     --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
     https://endereco_servidor/api/v1/integracao/cliente/configurar_autenticacao -d '{"id_cliente_servico":"11000", "password":"NewPasswd123"}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
        "id_cliente_servico":"11000",
        "password":"NewPasswd123",
        "id_interface_conexao":"931"
}

Retorno da requisição POST:

{
    "status": "success",
    "msg": "Parametros de autenticacao modificados com sucesso!"
}

Desbloqueio em Confiança

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/desbloqueio_confianca

POST

No método POST, será possível efetuar o desbloqueio em confiança, pela quantidade de dias desejados.

Aviso

IMPORTANTE: O sistema vai fazer a validação da regra configurada pelo painel do administrador. Por exemplo, se a regra configurada pelo painel, estiver definido que o máximo de dias para desbloqueio for menor ou igual a 3 dias e a requisição da API, possuir um valor maior que 3 (no atributo dias_desbloqueio), o desbloqueio não será efetuado, e uma mensagem de erro será retornada, avisando que o valor informado para os dias de desbloqueio não é permitido, pois ultrapassa a configuração pré-estabelecida.

Atributos da Requisição

No método GET, irá consultar os dados dos clientes e retornar um JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
id_cliente_servico Identificador único do serviço do cliente Sim
dias_desbloqueio Quantidade de dias, a partir da data atual que o cliente ficará desbloqueado em confiança Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_cliente_servico Deve conter um número inteiro maior que 0 Nenhum
dias_desbloqueio Deve conter um número inteiro maior que 0. Se não for preenchido o valor 1 será atributo, ou seja, será desbloqueado até o próximo dia Nenhum

Exemplo de requisição POST na rota do desbloqueio em confiança:

     curl -X POST
     --header "Accept:application/json"
     --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
     https://endereco_servidor/api/v1/integracao/cliente/desbloqueio_confianca -d '{"id_cliente_servico":"11000", "dias_desbloqueio":"1"}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
        "id_cliente_servico":"11000",
        "dias_desbloqueio":"1"
}

Retorno da requisição POST:

{
        "status": "success",
        "msg": "Desbloqueio em confiança realizado com sucesso até a data 26/11/2018"
}

Desconexão do Cliente

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/solicitar_desconexao/<id_cliente_servico>

GET

No método GET, será possível efetuar a desconexão da conexão do cliente.

Aviso

IMPORTANTE: A desconexão apenas será realizada se a porta INCOMING estiver habilitada no equipamento de conexão (Concentrador). É necessário estar configurado no HubSoft em Rede > Equipamentos de Conexão e também é importante que o servidor RADIUS possua comunicação com o equipamento de conexão (Concentrador) no momento da solicitação. Todos esses fatores devem trabalhar em conjunto, para que o sistema consiga executar a operação com sucesso.

Atributos da Requisição

Atributo Descrição Obrigatório
id_cliente_servico Identificador único do serviço do cliente Sim

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_cliente_servico Deve conter um número inteiro maior que 0 Nenhum

Exemplo de requisição GET na rota do desbloqueio em confiança:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/solicitar_desconexao/11000

Retorno da requisição GET em caso de sucesso:

{
"status": "success",
"msg": "A desconexão foi bem sucedida para o login hubsoft!",
"login": "hubsoft"
}

Retorno da requisição GET em caso de erro:

{
        "status": "error",
"msg": "A desconexão não foi bem sucedida para o login hubsoft!",
"errors": []
}

Extrato Conexão

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/extrato_conexao

GET

No método GET, será possível consultar os extratos de conexão de um determinaod login e obter o retorno no formato JSON como resposta. Os segintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
busca Tipo de busca que deseja fazer no cliente Sim
termo_busca Termo utilizado para fazer a busca Sim
limit Limite de resultados Não
data_inicio Data de Início (Utiliza a data de vencimento como base) Não
data_fim Data de Fim (Utiliza a data de vencimento como base) Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
busca login,ipv4,ipv6_wan,ipv6_lan Nenhum
termo_busca Campo livre Nehum
limit Valor mínimo 1, Valor máximo 50 20
data_inicio Campo no formato DateTime (YYYY-MM-DD). Data atual menos 30 dias
data_fim Campo no formato DateTime (YYYY-MM-DD). Data atual

Exemplo de requisição GET na rota do cliente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/extrato_conexao?busca=login&termo_busca=antoniomas&limit=2 -k

Retorno da requisição GET:

{
    "status": "success",
    "msg": "Dados consultados com sucesso",
    "registros": [
        {
            "acctstarttime": "2017-09-27 18:14:08-03",
            "acctstarttimebr": "27/09/2017 18:14:08",
            "acctstoptime": null,
            "acctstoptimebr": null,
            "calledstationid": "service2",
            "callingstationid": "58:10:8C:4B:FF:AA",
            "download_megabytes": 4594.95,
            "upload_megabytes": 156.12,
            "framedipaddress": "10.99.1.152",
            "nasipaddress": "172.17.22.132",
            "nasportid": "ether3",
            "nasporttype": "Ethernet",
            "username": "antoniomas",
            "servico": {
                "numero_plano": 49,
                "nome": "100GB-DE-TESTE-",
                "valor": 100,
                "status": "Serviço Habilitado",
                "status_prefixo": "servico_habilitado"
            },
            "cliente": {
                "codigo_cliente": 1161,
                "nome_razaosocial": "ANTONIO MODESTO",
                "cpf_cnpj": "09350012345"
            }
        }
    ],
    "estatisticas": {
        "total_conexoes": 1,
        "download_total": 4594.95,
        "upload_total": 156.12,
        "trafego_total": 4751.07,
        "media_download": 0.23,
        "media_upload": 0.01
    }
}

Financeiro

Necessário

Para fazer requisições nos dados de financeiro dos clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/financeiro

GET

No método GET, será possível consultar as faturas em aberto/liquidadas dos clientes e obter o retorno no formato JSON como resposta. Os segintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
busca Tipo de busca que deseja fazer no cliente Sim
termo_busca Termo utilizado para fazer a busca Sim
limit Limite de resultados Não
apenas_pendente Informa de deseja trazer apenas as faturas pendentes Não
order_by Campo que será utilizado para ordenação Não
order_type Tipo da Ordenação Não
data_inicio Data de Início (Utiliza a data de vencimento como base) Não
data_fim Data de Fim (Utiliza a data de vencimento como base) Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
busca cpf_cnpj, codigo_cliente, id_cliente_servico Nenhum
termo_busca Campo livre Sim
limit Valor mínimo 1, Valor máximo 50. 20
apenas_pendente sim,nao. sim
order_by data_vencimento,data_pagamento,data_cadastro,valor. data_vencimento
order_type asc,desc. asc
data_inicio Campo no formato DateTime (YYYY-MM-DD) Nenhum
data_fim Campo no formato DateTime (YYYY-MM-DD) Nenhum
tipo_data data_vencimento, data_pagamento, data_cadastro data_vencimento

Nota

INFORMAÇÃO: O atributo «tipo_data» somente será validado, caso seja informado o atributo data_inicio e/ou data_fim, pois o filtro o tipo de data selecionado, será aplicado em cima da data inicial e/ou data final.

Exemplo de requisição GET na rota do cliente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/financeiro?busca=codigo_cliente&termo_busca=1099&limit=2 -k

Retorno da requisição GET:

{
    "status": "suscess",
    "msg": "Dados consultados com sucesso",
    "faturas": [
        {
            "id_fatura": 36397,
            "nosso_numero": "272064",
            "nosso_numero_dv": null,
            "linha_digitavel": null,
            "codigo_barras": null,
            "link": null,
            "agencia_codigo_beneficiario": null,
            "beneficiario": null,
            "numero_documento": null,
            "especie": null,
            "especie_dinheiro": "R$",
            "aceite": null,
            "local_pagamento": null,
            "carteira": null,
            "tipo_cobranca": "debito_conta_corrente",
            "valor": 54.95,
            "data_vencimento": "10/10/2017",
            "data_cadastro": "10/10/2017",
            "data_pagamento": "31/07/2017",
            "data_documento": null,
            "data_processamento": null,
            "pix_copia_cola":"00020101026216880014BR.GOV.BCB.PIX2566qrcodes-pix.gerencianet.com.br/v2/9a5944a87b1a47da12345581735e74165204000053039865802BR5914GERENCIANET SA6010OURO PRETO62070503***6301122B",
            "detalhamento": [
                {
                    "descricao": "(+) Serviço de Comunicação e Multimídia (26/09/2017) até (09/10/2017) - 13 dias (proporcional) | R$ 21.62",
                    "valor": 21.62
                },
                {
                    "descricao": "(+) Taxa de Instalação (1/3) | R$ 33.33",
                    "valor": 33.33
                }
            ],
            "cliente": {
                "codigo_cliente": 1162,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO",
                "cpf_cnpj": "41107296617",
                "servico": {
                    "id_cliente_servico": 22703,
                    "numero_plano": 26,
                    "nome": "500MB",
                    "valor": 54.95,
                    "status": "Serviço Habilitado",
                    "status_prefixo": "servico_habilitado",
                    "endereco_cadastral": {
                        "completo": "PRAÇA GETULIO VARGAS, 100, SALA 411 - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000",
                        "endereco": "PRAÇA GETULIO VARGAS",
                        "numero": "100",
                        "complemento": "SALA 411",
                        "referencia": null,
                        "bairro": "CENTRO",
                        "cep": "35560000",
                        "estado": "MG",
                        "uf": "MINAS GERAIS",
                        "cidade": "SANTO ANTÔNIO DO MONTE",
                        "coordenadas": {
                            "latitude": -20.086726,
                            "longitude": -45.290536
                        }
                    },
                    "endereco_instalacao": {
                        "completo": "PRAÇA GETULIO VARGAS, 100, SALA 411 - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000",
                        "endereco": "PRAÇA GETULIO VARGAS",
                        "numero": "100",
                        "complemento": "SALA 411",
                        "referencia": null,
                        "bairro": "CENTRO",
                        "cep": "35560000",
                        "estado": "MG",
                        "uf": "MINAS GERAIS",
                        "cidade": "SANTO ANTÔNIO DO MONTE",
                        "coordenadas": {
                            "latitude": -20.086726,
                            "longitude": -45.290536
                        }
                    },
                    "endereco_fiscal": {
                        "completo": "PRAÇA GETULIO VARGAS, 100, SALA 411 - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000",
                        "endereco": "PRAÇA GETULIO VARGAS",
                        "numero": "100",
                        "complemento": "SALA 411",
                        "referencia": null,
                        "bairro": "CENTRO",
                        "cep": "35560000",
                        "estado": "MG",
                        "uf": "MINAS GERAIS",
                        "cidade": "SANTO ANTÔNIO DO MONTE",
                        "coordenadas": {
                            "latitude": -20.086726,
                            "longitude": -45.290536
                        }
                    },
                    "endereco_cobranca": {
                        "completo": "PRAÇA GETULIO VARGAS, 100, SALA 411 - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000",
                        "endereco": "PRAÇA GETULIO VARGAS",
                        "numero": "100",
                        "complemento": "SALA 411",
                        "referencia": null,
                        "bairro": "CENTRO",
                        "cep": "35560000",
                        "estado": "MG",
                        "uf": "MINAS GERAIS",
                        "cidade": "SANTO ANTÔNIO DO MONTE",
                        "coordenadas": {
                            "latitude": -20.086726,
                            "longitude": -45.290536
                        }
                    }
                }
            }
        },
        {
            "id_fatura": 36403,
            "nosso_numero": "272100",
            "nosso_numero_dv": "0272100-0",
            "linha_digitavel": "75691.31662 01006.726101 27210.000017 7 73380000001000",
            "codigo_barras": "75697733800000010001316601006726102721000001",
            "link": "https://endereco_do_servidor/pdf/fatura/TXpZME1ETT0=",
            "agencia_codigo_beneficiario": "3166 / 67261",
            "beneficiario": "PROVEDOR DE INTERNET LTDA / CNPJ: 22.385.367/0001-03",
            "numero_documento": 36403,
            "especie": "DS",
            "especie_dinheiro": "R$",
            "aceite": "N",
            "local_pagamento": "PAGÁVEL EM QUALQUER BANCO ATÉ O VENCIMENTO",
            "carteira": "1",
            "tipo_cobranca": "boleto_bancario",
            "valor": 10,
            "data_vencimento": "09/11/2017",
            "data_cadastro": "10/10/2017",
            "data_pagamento": "25/06/2018",
            "data_documento": "06/04/2020",
            "data_processamento": "06/04/2020",
            "pix_copia_cola":null,
            "detalhamento": [
                {
                    "descricao": "Cobrança adicional",
                    "valor": 10
                }
            ],
            "cliente": {
                "codigo_cliente": 1162,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO",
                "cpf_cnpj": "41107296617",
                "servico": {
                    "id_cliente_servico": 22703,
                    "numero_plano": 26,
                    "nome": "500MB",
                    "valor": 54.95,
                    "status": "Serviço Habilitado",
                    "status_prefixo": "servico_habilitado",
                    "endereco_cadastral": {
                        "completo": "PRAÇA GETULIO VARGAS, 100, SALA 411 - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000",
                        "endereco": "PRAÇA GETULIO VARGAS",
                        "numero": "100",
                        "complemento": "SALA 411",
                        "referencia": null,
                        "bairro": "CENTRO",
                        "cep": "35560000",
                        "estado": "MG",
                        "uf": "MINAS GERAIS",
                        "cidade": "SANTO ANTÔNIO DO MONTE",
                        "coordenadas": {
                            "latitude": -20.086726,
                            "longitude": -45.290536
                        }
                    },
                    "endereco_instalacao": {
                        "completo": "PRAÇA GETULIO VARGAS, 100, SALA 411 - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000",
                        "endereco": "PRAÇA GETULIO VARGAS",
                        "numero": "100",
                        "complemento": "SALA 411",
                        "referencia": null,
                        "bairro": "CENTRO",
                        "cep": "35560000",
                        "estado": "MG",
                        "uf": "MINAS GERAIS",
                        "cidade": "SANTO ANTÔNIO DO MONTE",
                        "coordenadas": {
                            "latitude": -20.086726,
                            "longitude": -45.290536
                        }
                    },
                    "endereco_fiscal": {
                        "completo": "PRAÇA GETULIO VARGAS, 100, SALA 411 - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000",
                        "endereco": "PRAÇA GETULIO VARGAS",
                        "numero": "100",
                        "complemento": "SALA 411",
                        "referencia": null,
                        "bairro": "CENTRO",
                        "cep": "35560000",
                        "estado": "MG",
                        "uf": "MINAS GERAIS",
                        "cidade": "SANTO ANTÔNIO DO MONTE",
                        "coordenadas": {
                            "latitude": -20.086726,
                            "longitude": -45.290536
                        }
                    },
                    "endereco_cobranca": {
                        "completo": "PRAÇA GETULIO VARGAS, 100, SALA 411 - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000",
                        "endereco": "PRAÇA GETULIO VARGAS",
                        "numero": "100",
                        "complemento": "SALA 411",
                        "referencia": null,
                        "bairro": "CENTRO",
                        "cep": "35560000",
                        "estado": "MG",
                        "uf": "MINAS GERAIS",
                        "cidade": "SANTO ANTÔNIO DO MONTE",
                        "coordenadas": {
                            "latitude": -20.086726,
                            "longitude": -45.290536
                        }
                    }
                }
            }
        },
        {
            "id_fatura": 43653,
            "nosso_numero": "274554",
            "nosso_numero_dv": "0274554-2",
            "linha_digitavel": "75691.31662 01006.726101 27455.420011 8 82170000001232",
            "codigo_barras": "75698821700000012321316601006726102745542001",
            "link": "http://endereco_do_servidor/pdf/fatura/TkRNMk5UTT0=",
            "agencia_codigo_beneficiario": "3166 / 67261",
            "beneficiario": "PROVEDOR DE INTERNET LTDA / CNPJ: 22.385.367/0001-03",
            "numero_documento": 43653,
            "especie": "DS",
            "especie_dinheiro": "R$",
            "aceite": "N",
            "local_pagamento": "PAGÁVEL EM QUALQUER BANCO ATÉ O VENCIMENTO",
            "carteira": "1",
            "tipo_cobranca": "boleto_bancario",
            "valor": 10,
            "data_vencimento": "10/07/2018",
            "data_cadastro": "10/10/2017",
            "data_pagamento": null,
            "data_documento": "06/04/2020",
            "data_processamento": "06/04/2020",
            "pix_copia_cola":"00020101026216880014BR.GOV.BCB.PIX2566qrcodes-pix.gerencianet.com.br/v2/9a5944a87b1a47da12345581735e74165204000053039865802BR5914GERENCIANET SA6010OURO PRETO62070503***6301122B",
            "detalhamento": [
                {
                    "descricao": "COBRANÇA DE TESTE VENCIDA",
                    "valor": 10
                }
            ],
            "cliente": {
                "codigo_cliente": 1162,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO",
                "cpf_cnpj": "41107296617"
            }
        }
    ]
}

Financeiro > Envio por Email

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/financeiro/enviar_email

POST

No método POST, será possível fazer o disparo da fatura do cliente por e-mail. Podem ser passados emails adicionais, além dos que já estão cadastrados no sistema.

Aviso

IMPORTANTE: O sistema vai fazer a validação dos dados de e-mail e verificar se a API possui um servidor de e-mail válido configurado. Caso todas as regras sejam atendidas, o disparo do e-mail será efetuado instantaneamente, ou seja, é enviado em tempo real. Por esse motivo, o tempo de resposta da API, irá variar de acordo com a quantidade de e-mails que está na requisição para ser disparado.

Aviso

IMPORTANTE 2: O(s) servidor(es) de e-mails configurados no HubSoft possuem configuração de timeout entre um disparo e outro, dessa forma evita-se que o servidor seja adicionado em BlackLists de SPAM. Por esse motivo, a chamada da API, poderá ter um tempo de resposta diferente do comum.

Atributos da Requisição

Atributo Descrição Obrigatório
id_fatura Identificador único da fatura do cliente Sim
email_adicional Outros e-mails adicionais, podem ser enviados na requisição. Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_fatura Deve conter um número inteiro maior que 0 Nenhum
email_adicional Deve conter um array de strings (emails) Nenhum

Exemplo de requisição POST na rota do envio de e-mail:

      curl -X POST
      --header "Accept:application/json"
      --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
      https://endereco_servidor/api/v1/integracao/cliente/financeiro/enviar_email -d '{"id_fatura":"11000", "email_adicional":["email1@email.com","email2@email.com"]}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
        "id_fatura":"11000",
        "email_adicional":[
                "email1@email.com",
                "email2@email.com"
        ]
}

Retorno da requisição POST:

{
    "status": "success",
    "msg": "As faturas foram adicionadas para serem disparadas por e-mail. Por se tratar de um processo de envio massivo, o sistema fará o agendamento do disparo. Dentro de alguns minutos o cliente irá receber os e-mails com as faturas. OBS: Para cada fatura selecionada será enviado um e-mail",
    "job": {
        "tries": 1,
        "timeout": 172800,
        "memory": 2048,
        "faturas": [
            {
                "id_fatura": 50949
            }
        ],
        "emails": [
            {
                "id_contato": null,
                "id_cliente": 12025,
                "email": "macielrsf@gmail.com",
                "nome": "MACIEL RODRIGUES",
                "name": "MACIEL RODRIGUES",
                "permite_enviar_email": true,
                "origem": "cadastro_cliente"
            },
            {
                "id_contato": null,
                "id_cliente": 12025,
                "email": "macielrsf@gmail.com",
                "nome": "MACIEL RODRIGUES",
                "name": "MACIEL RODRIGUES",
                "permite_enviar_email": true,
                "origem": "cadastro_cliente"
            },
            {
                "id_contato": 12035,
                "id_cliente": 12025,
                "email": "macielrsf@gmail.com",
                "nome": "MACIEL RODRIGUES",
                "name": "MACIEL RODRIGUES",
                "permite_enviar_email": "sim",
                "origem": "contato"
            }
        ],
        "connection": null,
        "queue": "hubsoft-prioritario",
        "delay": {
            "date": "2019-10-07 13:39:48.000000",
            "timezone_type": 3,
            "timezone": "America/Sao_Paulo"
        }
    }
}

Nota

OBSERVAÇÃO: Perceba que foram enviados 2 e-mails adicionais, porém o sistema fez um disparo de 3 emails. Isso aconteceu, pois o cliente já possuia 1 endereço de e-mail em seu cadastro. No momento do disparo, o sistema enviou para os e-mails já cadastrados no sistema e também para os telefones adicionais passados na requisição POST

Financeiro > Envio por SMS

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/financeiro/enviar_sms

POST

No método POST, será possível fazer o disparo da fatura do cliente por SMS. Podem ser passados números de telefones adicionais, além dos que já estão cadastrados no sistema.

Aviso

IMPORTANTE: O disparo do SMS é efetuado para a Plataforma de SMS. Caso o HubSoft consiga entregar o SMS para plataforma, o resultado da requisição será uma resposta de SUCESSO, mesmo que a plataforma não efetue o disparo, para o HubSoft a tarefa foi efetuada com sucesso.

Atributos da Requisição

Atributo Descrição Obrigatório
id_fatura Identificador único da fatura do cliente Sim
telefone_adicional Outros telefones adicionais, podem ser enviados na requisição. Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_fatura Deve conter um número inteiro maior que 0 Nenhum
telefone_adicional Deve conter um array de strings com os telefones no formato DDNNNNNNNN ou DDNNNNNNNNN Nenhum

Exemplo de requisição POST na rota do envio de e-mail:

      curl -X POST
      --header "Accept:application/json"
      --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
      https://endereco_servidor/api/v1/integracao/cliente/financeiro/enviar_sms -d '{"id_fatura":"11000", "telefone_adicional":["11988887777","1188887776"]}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
        "id_fatura":"11000",
        "email_adicional":[
                "11988887777",
                "1188887776"
        ]
}

Retorno da requisição POST:

    {
    "status": "success",
    "msg": "As faturas foram adicionadas para serem disparadas por SMS. Por se tratar de um processo de envio massivo, o sistema fará o agendamento do disparo. Dentro de alguns minutos o cliente irá receber as mensgens SMS com os dados das faturas. OBS: Para cada fatura selecionada será enviado um SMS",
    "job": {
        "tries": 1,
        "timeout": 172800,
        "memory": 2048,
        "faturas": [
            {
                "id_fatura": 50949
            }
        ],
        "telefones": [
            {
                "id_contato": null,
                "id_cliente": 12025,
                "telefone": "37999931412",
                "nome": "MACIEL RODRIGUES",
                "permite_enviar_sms": true,
                "origem": "cadastro_cliente"
            }
        ],
        "connection": null,
        "queue": "teste",
        "delay": {
            "date": "2019-10-07 13:20:51.000000",
            "timezone_type": 3,
            "timezone": "America/Sao_Paulo"
        }
    }
}

Nota

OBSERVAÇÃO: Perceba que foram enviados 2 telefones adicionais, porém o sistema fez um disparo de 3 SMS. Isso aconteceu, pois o cliente já possuia 1 número de telefone celular válido em seu cadastro. No momento do disparo, o sistema enviou para os telefones já cadastrados no sistema e também para os telefones adicionais passados na requisição POST

Financeiro > Envio por Push Notification

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/financeiro/enviar_push

POST

No método POST, será possível fazer o disparo da fatura do cliente por push notification. .. warning:

IMPORTANTE: O cliente  receberá o push notification, caso ele possua o aplicativo do cliente instalado e esteja autenticado com o CPF/CNPJ.

Atributos da Requisição

Atributo Descrição Obrigatório
id_fatura Identificador único da fatura do cliente Sim

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_fatura Deve conter um número inteiro maior que 0 Nenhum

Exemplo de requisição POST na rota do envio de push notification:

     curl -X POST
     --header "Accept:application/json"
     --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
     https://endereco_servidor/api/v1/integracao/cliente/financeiro/enviar_push -d '{"id_fatura":"11000"}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
        "id_fatura":"11000"
}

Retorno da requisição POST:

{
    "status": "success",
    "msg": "Fatura enviada com sucesso via push notification"
}

Fiscal > Nota Fiscal

Necessário

Para fazer requisições nos dados de nota fiscal dos clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/nota_fiscal

GET

No método GET, será possível consultar as notas fiscais e obter o retorno no formato JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
busca Tipo de busca que deseja fazer no cliente Sim
termo_busca Termo utilizado para fazer a busca Sim
data_inicio Data de Início (Utiliza a data de emissão da nota como base) Não
data_fim Data de Fim (Utiliza a data de emissão da nota como base) Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
busca id_cliente Nenhum
termo_busca Campo livre Sim
data_inicio Campo no formato DateTime (YYYY-MM-DD) Nenhum
data_fim Campo no formato DateTime (YYYY-MM-DD) Nenhum

Aviso

A API vai retornar somente notas que já foram processadas e enviadas aos respectivos orgãos responsavéis, sendo assim será retornado somente as notas com os seguintes status: NFe: efetivada / NFSe: autorizado / Nota Fiscal Telecom 21/22: normal

Nota

Para os parâmetros data_inicio e data_fim não pode ser informado um intervalo de datas maior que 60 dias.

Exemplo de requisição GET na rota do cliente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/nota_fiscal?busca=id_cliente&termo_busca=999&data_inicio=2021-01-01&data_fim=2022-02-23 -k

Retorno da requisição GET:

{
"status": "success",
"msg": "Dados carregados com sucesso",
"cliente": {
  "id_cliente": 23285,
  "codigo_cliente": 1382,
  "nome_razaosocial": "HUBSOFT BRASIL"
},
"notas_fiscais": [
  {
    "id_nota_fiscal": 3064,
    "id_tipo_documento_fiscal": 1,
    "numero_nota": 427,
    "serie_nota": "U",
    "cfop": "5307",
    "identificacao": "XYWNrpBhW5D8p2yuvAoL",
    "valor": "5",
    "data_cadastro_br": "25/02/2022 09:07",
    "data_emissao_br": "25/02/2022",
    "data_cancelamento_br": null,
    "cancelado": false,
    "tipo_documento_fiscal": {
      "id_tipo_documento_fiscal": 1,
      "descricao": "Nota Fiscal de Serviço de Comunicação",
      "codigo": "21",
      "ativo": true,
      "display": "21 - Nota Fiscal de Serviço de Comunicação"
    }
  }
],
"nfes": [
  {
    "id_nfe": 351,
    "modelo": "55",
    "serie": "1",
    "numero_nf": 60,
    "chave": "NFe16922351872769307419",
    "recibo": "16922351872769307419",
    "autorizacao": null,
    "status": "efetivada",
    "status_mensagem": "Autorizado o uso da NF-e",
    "data_cadastro": "2021-12-09 17:31:39",
    "protocolo_autorizacao": "16922351872769307419",
    "cancelado": false,
    "data_cadastro_br": "09/12/2021 17:31:39",
    "data_cadastro_timestamp": 1639081899000,
    "data_emissao_br": "25/02/2022 09:07:06",
    "data_emissao_timestamp": 1645790826000,
    "data_contigencia_br": null,
    "data_contigencia_timestamp": null,
    "data_saida_br": null,
    "data_saida_timestamp": null,
    "nfe_emitente": {
      "id_nfe_emitente": 343,
      "id_nfe": 351,
      "nome_razaosocial": "TELECOM E HARDWARE LTDA",
      "nome_fantasia": "TESTE NFE",
      "inscricao_estadual": "0010735429999",
      "inscricao_municipal": null,
      "cpf_cnpj": "09613622999999",
      "tipo_pessoa": "pj",
      "end_logradouro": "PRAÇA GETULIO VARGAS",
      "end_numero": "77",
      "end_complemento": null,
      "end_bairro": "CENTRO",
      "end_cep": "35560000"
    }
  }
],
"nfses": [
  {
    "id_nfse": 106,
    "id_externo": "61279626fbce65722f734bf899999",
    "hash": "ae71a618-f673-4359-ac4d-6LuLjmXmLuu9G4KGOdXd",
    "numero": "14890",
    "serie": "LAL",
    "lote_rps": "290008",
    "valor": "25",
    "data_cadastro": "2021-08-26 10:22:51",
    "tipo_emissao": "manual",
    "link_pdf": "",
    "link_xml": "",
    "status": "autorizado",
    "status_mensagem": "RPS Autorizada com sucesso",
    "informacao_complementar": "INFORMAÇÃO COMPLEMENTAR DA NFSE",
    "data_cadastro_br": "26/08/2021 10:22",
    "data_cadastro_timestamp": 1629984171000,
    "data_cancelamento_br": null,
    "data_cancelamento_timestamp": null
  }
]
}

Fiscal > Nota Fiscal > Envio por Email

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/nota_fiscal/enviar_email

POST

No método POST, será possível fazer o disparo da nota fiscal do cliente por e-mail. Podem ser passados emails adicionais, além dos que já estão cadastrados no sistema.

Aviso

IMPORTANTE: O sistema vai fazer a validação dos dados de e-mail e verificar se a API possui um servidor de e-mail válido configurado. Caso todas as regras sejam atendidas, o disparo do e-mail será efetuado instantaneamente, ou seja, é enviado em tempo real. Por esse motivo, o tempo de resposta da API, irá variar de acordo com a quantidade de e-mails que está na requisição para ser disparado.

Aviso

IMPORTANTE 2: O(s) servidor(es) de e-mails configurados no HubSoft possuem configuração de timeout entre um disparo e outro, dessa forma evita-se que o servidor seja adicionado em BlackLists de SPAM. Por esse motivo, a chamada da API, poderá ter um tempo de resposta diferente do comum.

Atributos da Requisição

Os atributos podem conter os seguintes valores:

Exemplo de requisição POST na rota do envio de e-mail:

      curl -X POST
      --header "Accept:application/json"
      --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
      https://endereco_servidor/api/v1/integracao/cliente/nota_fiscal/enviar_email -d '{"id_nota_fiscal":"123","tipo_documento":"nfe", "email_adicional":["email1@email.com"]}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

    {
            "id_nota_fiscal":"123",
"tipo_documento":"nfe",
            "email_adicional":[
                    "email1@email.com"
            ]
    }

Retorno da requisição POST:

{
  "status": "success",
  "msg": "Um total de 2/3 email(s) foram enviados com sucesso",
  "emails_enviados": [
      {
          "id_cliente": 23285,
          "id_usuario": 1,
          "id_usuario_envio": 915,
          "host": "smtp.mailtrap.io",
          "email_origem": "b860cbd1ea1dca",
          "email_destino": "naotem@naotem.com.br",
          "tipo_envio": "manual",
          "tipo_documento": "nota_fiscal_produto",
          "data_envio": "2022-02-25 09:59:46",
          "enviado": true,
          "mensagem_erro": null,
          "id_email_enviado": 1416,
          "data_envio_br": "25/02/2022 09:59",
          "data_envio_timestamp": 1645793986000
      },
      {
          "id_cliente": 23285,
          "id_usuario": 1,
          "id_usuario_envio": 915,
          "host": "smtp.mailtrap.io",
          "email_origem": "b860cbd1ea1dca",
          "email_destino": "guilherme@hubsoft.com.br",
          "tipo_envio": "manual",
          "tipo_documento": "nota_fiscal_produto",
          "data_envio": "2022-02-25 10:00:30",
          "enviado": true,
          "mensagem_erro": null,
          "id_email_enviado": 1417,
          "data_envio_br": "25/02/2022 10:00",
          "data_envio_timestamp": 1645794030000
      }
  ]
}

Ordem de Serviço

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente/ordem_servico

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/ordem_servico

GET

No método GET, será possível consultar as ordens de serviço de um determinado cliente e obter o retorno no formato JSON como resposta. Os segintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
busca Tipo de busca que deseja fazer no cliente Sim
termo_busca Termo utilizado para fazer a busca (Campo Livre) Não
limit Limite de resultados Não
status Informa o status que deseja trazer como retorno Não
order_by Campo que será utilizado para ordenação Não
order_type Tipo da Ordenação Não
data_inicio Data de Início dos resultados Não
data_fim Data de Fim dos resultados Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
busca codigo_cliente, cpf_cnpj, id_cliente_servico, numero_ordem_servico Nenhum
termo_busca Campo livre Nenhum
limit Valor mínimo 1, Valor máximo 50. 20
status pendente,aguardando_agendamento,finalizado Todos
order_by data_cadastro,data_inicio_programado data_cadastro
order_type asc,desc desc
data_inicio Campo no formato DateTime (YYYY-MM-DD). Será aplicado o filtro em cima da data de cadastro Não
data_fim Campo no formato DateTime (YYYY-MM-DD). Será aplicado o filtro em cima da data de cadastro Não

Exemplo de requisição GET na rota do cliente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/cliente/ordem_servico?busca=codigo_cliente&termo_busca=1188&limit=2 -k

Retorno da requisição GET:

{
    "status": "suscess",
    "msg": "Dados consultados com sucesso",
    "ordens_servico": [
        {
            "id_ordem_servico": 78,
            "numero_ordem_servico": "74",
            "data_cadastro": "12/04/2018 15:26:28",
            "tipo": "SUPORTE",
            "data_inicio_programado": "02/05/2018 10:00:00",
            "data_termino_programado": "16/04/2018 12:00:00",
            "data_inicio_executado": null,
            "data_termino_executado": null,
            "descricao_abertura": "cliente reclama de conexão lenta",
            "descricao_servico": "CLIENTE TESTE TESTE",
            "descricao_fechamento": null,
            "usuario_abertura": "Master",
            "usuario_fechamento": null,
            "status": "aguardando_agendamento",
            "status_fechamento": null,
            "atendimento": {
                "protocolo": "201804121526287",
                "id_atendimento": 60,
                "tipo_atendimento": "TÉCNICO - CONEXÃO LENTA",
                "usuario_abertura": "Master",
                "usuario_responsavel": "Guilherme Couto",
                "usuario_fechamento": null,
                "data_cadastro": "12/04/2018",
                "data_fechamento": null,
                "setor_responsavel": null,
                "status_fechamento": null,
                "motivo_fechamento": null
            },
            "cliente": {
                "codigo_cliente": 1188,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO - TESTE",
                "cpf_cnpj": "26788493090"
            },
            "servico": {
                "numero_plano": 0,
                "nome": "100GB-DE-TESTE-",
                "valor": 100,
                "status": "Serviço Habilitado",
                "status_prefixo": "servico_habilitado"
            }
        },
        {
            "id_ordem_servico": 102,
            "numero_ordem_servico": "96",
            "data_cadastro": "19/05/2018 10:17:03",
            "tipo": "INSTALAÇÃO",
            "data_inicio_programado": "19/05/2018 08:00:00",
            "data_termino_programado": "19/05/2018 09:00:00",
            "data_inicio_executado": "19/05/2018 11:54:59",
            "data_termino_executado": "19/05/2018 11:56:50",
            "descricao_abertura": "TESTE TESTE TESTE",
            "descricao_servico": "teste teste teste",
            "descricao_fechamento": "RT Este de fechamento",
            "usuario_abertura": "Master",
            "usuario_fechamento": "Master",
            "status": "finalizado",
            "status_fechamento": "concluido",
            "atendimento": {
                "protocolo": "201805191017039",
                "id_atendimento": 79,
                "tipo_atendimento": "TÉCNICO - CONEXÃO LENTA",
                "usuario_abertura": "Master",
                "usuario_responsavel": "Guilherme Couto",
                "usuario_fechamento": null,
                "data_cadastro": "19/05/2018",
                "data_fechamento": null,
                "setor_responsavel": null,
                "status_fechamento": null,
                "motivo_fechamento": null
            },
            "cliente": {
                "codigo_cliente": 1188,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO - TESTE",
                "cpf_cnpj": "26788493090"
            },
            "servico": {
                "numero_plano": 6,
                "nome": "100GB-DE-TESTE-",
                "valor": 100,
                "status": "Serviço Habilitado",
                "status_prefixo": "servico_habilitado"
            }
        },
        {
            "id_ordem_servico": 208,
            "numero_ordem_servico": "191",
            "data_cadastro": "14/08/2018 16:22:25",
            "tipo": "INSTALAÇÃO",
            "data_inicio_programado": "14/08/2018 15:00:00",
            "data_termino_programado": "14/08/2018 16:00:00",
            "data_inicio_executado": null,
            "data_termino_executado": null,
            "descricao_abertura": "inatalacção",
            "descricao_servico": "inatalacção",
            "descricao_fechamento": null,
            "usuario_abertura": "Suporte",
            "usuario_fechamento": null,
            "status": "aguardando_agendamento",
            "status_fechamento": null,
            "atendimento": null,
            "cliente": {
                "codigo_cliente": 1188,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO - TESTE",
                "cpf_cnpj": "26788493090"
            },
            "servico": {
                "numero_plano": 7,
                "nome": "5MB-WIRELESS",
                "valor": 300,
                "status": "Aguardando Migração",
                "status_prefixo": "aguardando_migracao"
            }
        },
        {
            "id_ordem_servico": 209,
            "numero_ordem_servico": "192",
            "data_cadastro": "14/08/2018 16:24:12",
            "tipo": "INSTALAÇÃO",
            "data_inicio_programado": "14/08/2018 15:00:00",
            "data_termino_programado": "14/08/2018 16:00:00",
            "data_inicio_executado": null,
            "data_termino_executado": null,
            "descricao_abertura": "dsgsdgsdgsd",
            "descricao_servico": "dsgsdgsdgsd",
            "descricao_fechamento": null,
            "usuario_abertura": "Suporte",
            "usuario_fechamento": null,
            "status": "aguardando_agendamento",
            "status_fechamento": null,
            "atendimento": null,
            "cliente": {
                "codigo_cliente": 1188,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO - TESTE",
                "cpf_cnpj": "26788493090"
            },
            "servico": {
                "numero_plano": 8,
                "nome": "5MB-WIRELESS",
                "valor": 300,
                "status": "Aguardando Migração",
                "status_prefixo": "aguardando_migracao"
            }
        }
    ]
}

Resetar MAC do Cliente

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/cliente

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/cliente/reset_mac_addr

POST

No método POST, será possível efetuar o desbloqueio em confiança, pela quantidade de dias desejados.

Aviso

IMPORTANTE: O sistema irá validar se o serviço informado possui dados de autenticação. Caso o serviço selecionado não possua, uma mensagem de erro será retornada, impedindo que a solicitação seja executada.

Atributos da Requisição

Atributo Descrição Obrigatório
id_cliente_servico Identificador único do serviço do cliente Sim

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_cliente_servico Deve conter um número inteiro maior que 0 Nenhum

Exemplo de requisição POST na rota do desbloqueio em confiança:

curl -X POST
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
https://endereco_servidor/api/v1/integracao/cliente/reset_mac_addr -d '{"id_cliente_servico":"11000"}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
        "id_cliente_servico":"11000"
}

Retorno da requisição POST:

{
        "status": "success",
        "msg": ""Endereço MAC resetado com sucesso!"
}

Financeiro

Necessário

Para fazer requisições nos dados de clientes, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/financeiro

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/financeiro

Abaixo estão todas as funções disponíveis do financeiro

Consulta

Necessário

Para fazer requisições nos dados de financeiro, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de financeiro, devem ser feitos na rota:

/api/v1/integracao/financeiro

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/financeiro

GET

No método GET, irá consultar os dados financeiros (contas a receber) e retornar um JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
busca Tipo de busca que deseja fazer no cliente Não
termo_busca Termo utilizado para fazer a busca Não
tipo_data Tipo de data que será utilizada Não
tipo_resultado Tipo de resultado que será devolvido na resposta Não
data_inicio Data de início da filtragem de dados Não
data_fim Data final da filtragem de dados Não
order_by Campo que será utilizado para ordenação Não
order_type Tipo de Ordenação Não
limit Limite de resultados Não
apenas_quitado Indica o status desejado das faturas Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
busca id_cliente, codigo_cliente, cpf_cnpj, id_cliente_servico Nenhum
termo_busca Campo livre (Qualquer valor será aceito) Nenhum
tipo_data data_vencimento, data_pagamento, data_cadastro data_vencimento
tipo_resultado simplificado, detalhado simplificado
data_inicio Campo no formato DateTime (YYYY-MM-DD) Não
data_fim Campo no formato DateTime (YYYY-MM-DD) Não
order_by data_vencimento, data_pagamento, data_cadastro, valor Não
order_type asc, desc Não
limit Valor número maior que 0 (zero) Não
apenas_quitado Indica o status desejado das faturas Não

Exemplo de requisição GET na rota de cliente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/financeiro -k

Retorno da requisição GET:

{
    "status": "success",
    "msg": "Dados consultados com sucesso.",
    "faturas": [
        {
            "id_fatura": 62636,
            "nosso_numero": "1900247",
            "data_vencimento": "2020-04-05",
            "data_vencimento_br": "05/04/2020",
            "data_pagamento": null,
            "data_pagamento_br": null,
            "data_cadastro": "2020-01-01 12:52:12",
            "data_cadastro_br": "01/01/2020",
            "valor": "119.9",
            "valor_pago": null,
            "cliente": {
                "id_cliente": 11943,
                "codigo_cliente": 1162,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO",
                "nome_fantasia": null,
                "tipo_pessoa": "pf",
                "cpf_cnpj": "41107296617",
                "data_nascimento": "1994-03-10",
                "data_nascimento_br": "10/03/1994",
                "telefone_primario": "37999091234",
                "telefone_secundario": "373415100",
                "telefone_terciario": null,
                "email_principal": "email@cliente.com.b4",
                "email_secundario": null,
                "data_cadastro": "2017-09-26 13:20:33",
                "data_cadastro_br": "26/09/2017 13:20",
                "ativo": true
            }
        },
        {
            "id_fatura": 62634,
            "nosso_numero": "1900245",
            "data_vencimento": "2020-04-05",
            "data_vencimento_br": "05/04/2020",
            "data_pagamento": null,
            "data_pagamento_br": null,
            "data_cadastro": "2020-01-01 12:52:12",
            "data_cadastro_br": "01/01/2020",
            "valor": "115.9",
            "valor_pago": null,
            "cliente": {
                "id_cliente": 11943,
                "codigo_cliente": 1162,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO",
                "nome_fantasia": null,
                "tipo_pessoa": "pf",
                "cpf_cnpj": "41107296617",
                "data_nascimento": "1994-03-10",
                "data_nascimento_br": "10/03/1994",
                "telefone_primario": "37999091234",
                "telefone_secundario": "373415100",
                "telefone_terciario": null,
                "email_principal": "email@cliente.com.b4",
                "email_secundario": null,
                "data_cadastro": "2017-09-26 13:20:33",
                "data_cadastro_br": "26/09/2017 13:20",
                "ativo": true
            }
        },
        {
            "id_fatura": 62625,
            "nosso_numero": "1900242",
            "data_vencimento": "2020-04-05",
            "data_vencimento_br": "05/04/2020",
            "data_pagamento": null,
            "data_pagamento_br": null,
            "data_cadastro": "2020-01-01 12:52:12",
            "data_cadastro_br": "01/01/2020",
            "valor": "169.9",
            "valor_pago": null,
            "cliente": {
                "id_cliente": 11943,
                "codigo_cliente": 1162,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO",
                "nome_fantasia": null,
                "tipo_pessoa": "pf",
                "cpf_cnpj": "41107296617",
                "data_nascimento": "1994-03-10",
                "data_nascimento_br": "10/03/1994",
                "telefone_primario": "37999091234",
                "telefone_secundario": "373415100",
                "telefone_terciario": null,
                "email_principal": "email@cliente.com.b4",
                "email_secundario": null,
                "data_cadastro": "2017-09-26 13:20:33",
                "data_cadastro_br": "26/09/2017 13:20",
                "ativo": true
            }
        },
        {
            "id_fatura": 62628,
            "nosso_numero": "212",
            "data_vencimento": "2020-04-05",
            "data_vencimento_br": "05/04/2020",
            "data_pagamento": null,
            "data_pagamento_br": null,
            "data_cadastro": "2020-01-01 12:52:12",
            "data_cadastro_br": "01/01/2020",
            "valor": "40.3",
            "valor_pago": null,
            "cliente": {
                "id_cliente": 11943,
                "codigo_cliente": 1162,
                "nome_razaosocial": "GUILHERME DA COSTA COUTO",
                "nome_fantasia": null,
                "tipo_pessoa": "pf",
                "cpf_cnpj": "41107296617",
                "data_nascimento": "1994-03-10",
                "data_nascimento_br": "10/03/1994",
                "telefone_primario": "37999091234",
                "telefone_secundario": "373415100",
                "telefone_terciario": null,
                "email_principal": "email@cliente.com.b4",
                "email_secundario": null,
                "data_cadastro": "2017-09-26 13:20:33",
                "data_cadastro_br": "26/09/2017 13:20",
                "ativo": true
            }
        }
    ]
}

No exemplo acima, nenhum parâmetro foi preenchido, sendo assim, o sistema assumiu a data de início como 10 dias anteriores da data atual e a data final como o dia em questão que a requisição está sendo executada. Por exemplo, se essa requisição fosse executada no dia 20/12/2020, então a data de início seria em 10/12/2020 e a data final em 20/12/2020. O sistema só iria traze as faturas que vencem nesse intervalo.

A URL abaixo, está simulando uma consulta, onde o integrador deseja trazer apenas as faturas quitadadas do dia 05/03/2020 ate 10/03/2020, ordenando por data de pagamento de forma decrescente:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/financeiro?data_inicio=2020-03-05&data_fim=2020-03-10&apenas_quitado=sim&tipo_data=data_pagamento&order_by=data_pagamento&order_type=desc

Veja que os atributos foram preenchidos da seguinte forma:

  • data_inicio = 2020-03-05 (05/03/2020)
  • data_fim = 2020-03-10 (10/03/2020)
  • apenas_quitado = sim (Apenas quitado)
  • tipo_data = data_pagamento
  • order_by = data_pagamento
  • order_type = desc (Do maior para o menor)

Aviso

IMPORTANTE: Caso o atributo busca e termo_busca não sejam utilizados, a API irá limitar o intervalo entre a data_inicio e data_fim para no máximo 30 dias. Por exemplo, se o integrador requisitar a data de início 2020-01-01, data fim 2020-12-31 e não utilizar um termo de busca, a quantidade de dados retornado pode ter um volume muito grande, portanto, para esse cenário, será limitado em 30 dias de intervalo entre as datas

Evento de Faturamento

Necessário

Para fazer requisições nos dados de financeiro, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de financeiro, devem ser feitos na rota:

/api/v1/integracao/financeiro

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/financeiro/evento_faturamento

POST

No método POST, será possível fazer o cadastro de evento de faturamento. Pode ser cadastrado um evento de Acréscimo ou Desconto, permitindo também parcelamento.

Aviso

IMPORTANTE: É necessário informar o id_cliente_servico e o id_tipo_servico, ambos retornados nas rotas Clientes > Consulta e Tipo de Serviço > All respectivamente

Aviso

IMPORTANTE 2: Ao enviar a o parâmetro parcelado como true, os parâmetros numero_total_parcelas, mes_primeira_parcela e ano_primeira_parcela tornam-se obrigatórios

Aviso

IMPORTANTE 3: Ao enviar a o parâmetro parcelado como false, o parâmetro proximo_faturamento torna-se obrigatório. Caso ele seja enviado como false, os parâmetros mes_processar e ano_processar também deverão ser enviados

Atributos da Requisição

Atributo Descrição Obrigatório
id_cliente_servico Identificador único do serviço do cliente Sim
id_tipo_servico Identificador único do tipo de serviço Sim
tipo Textual (aceita os valores acrescimo e desconto). Sim
descricao Descrição textual para o evento. Sim
valor Campo númerico (aceita valor decimal separado por ponto. Ex.: 10.2). Sim
parcelado Boolean para identificar se o evento é parcelado ou não Sim
numero_total_parcelas Valor maior que 0 para identificar o total de parcelas Sim (Se parcelado = true)
mes_primeira_parcela Valor inteiro que representa o mês do ano (Dezembro = 12). Utilizado para verificar o mês da primeira parcela Sim (Se parcelado = true)
ano_primeira_parcela Valor inteiro que representa o ano. Utilizado para verificar o ano da primeira parcela Sim (Se parcelado = true)
proximo_faturamento Boolean para identificar se o evento será lançado no próximo faturamento Sim (Se parcelado = false)
mes_processar Valor inteiro que representa o mês do ano (Dezembro = 12). Utilizado para verificar o mês de processamento do faturamento Sim (Se proximo_faturamento = false)
ano_processar Valor inteiro que representa o ano. Utilizado para verificar o ano de processamento do faturamento Sim (Se proximo_faturamento = false)

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_cliente_servico Deve conter um número inteiro maior que 0 Nenhum
id_tipo_servico Deve conter um número inteiro maior que 0 Nenhum
tipo Textual Nenhum
descricao Textual Nenhum
valor Número Inteiro/Decimal Nenhum
parcelado Boolean Nenhum
numero_total_parcelas Número Inteiro Nenhum
mes_primeira_parcela Número Inteiro (maior que 0 e menor que 13) Nenhum
ano_primeira_parcela Número Inteiro Nenhum
proximo_faturamento Boolean Nenhum
mes_processar Número Inteiro (maior que 0 e menor que 13) Nenhum
ano_processar Número Inteiro Nenhum

Exemplo de requisição POST na rota do envio de e-mail:

      curl -X POST
      --header "Accept:application/json"
      --header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
--header "Content-Type: application/json"
      https://endereco_servidor/api/v1/integracao/financeiro/evento_faturamento -d '{"id_cliente_servico":"13579", "id_tipo_servico":"2", "descricao": "ADICIONAL", "parcelado": false, "proximo_faturamento": true, "tipo": "acrescimo", "valor": 10.3}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

     {
    "id_cliente_servico": 13579,
    "id_tipo_servico": 2,
    "descricao": "ADICIONAL",
    "parcelado": false,
    "proximo_faturamento": true,
    "tipo": "acrescimo",
    "valor": 10.3
}

Retorno da requisição POST:

{
    "status": "success",
    "msg": "1 Evento(s) de Farturamento de acréscimo cadastrados com sucesso. VALOR TOTAL: R$ 10.30",
    "eventos_faturamento": [
        {
            "id_evento_faturamento": 1575
        }
    ]
}

Nota

OBSERVAÇÃO: Perceba que foi retornado um array contendo o ID do Evento de Faturamento. Esse retorno é caracterizado pelo fato do evento poder ser parcelado, caso ele tenha 3 parcelas, por exemplo, será retornado um array com 3 itens. Como no exemplo demonstrado acima foi cadastrado um evento sem parcelamento, o array com uma posição foi retornado

Ordem de Serviço

Necessário

Para fazer requisições nos dados de ordem de serviço, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de ordem de serviço, devem ser feitos na rota:

/api/v1/integracao/ordem_servico

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/ordem_servico

Abaixo estão todas as funções disponíveis da ordem de serviço

Agendar

Necessário

Para fazer requisições nos dados de ordem de serviço, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

A requisição de agendamento da ordem de serviço, deve ser feita na rota:

/api/v1/integracao/ordem_servico/agendar

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/ordem_servico/agendar

Endpoint (Rota)

Neste endpoint, será possível agendar uma O.S. que esteja aguardando agendamento, obtendo o retorno no formato JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
id_ordem_servico Identificador da ordem de serviço Sim

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_ordem_servico Número Inteiro Nenhum

Exemplo de requisição POST na rota de agendamento da ordem de serviço:

curl -X POST
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/ordem_servico/agendar -d '{"id_ordem_servico":"11000"}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
        "id_ordem_servico":"11000"
}

Retorno da requisição POST:

{
  "status": "success",
  "msg": "Agendamento salvo com sucesso",
  "ordem_servico": {
    "id_ordem_servico": 1493,
    "numero": "1262",
    "tipo": "INSTALAÇÃO FIBRA - VALORES OBRIGATÓRIOS: R$ 280.00",
    "data_inicio_programado": "2020-11-23 08:00:00",
    "data_termino_programado": "2020-11-23 09:30:00",
    "data_inicio_executado": null,
    "data_termino_executado": null,
    "data_cadastro": "2020-11-18 13:35:31",
    "descricao_abertura": "TESTE",
    "descricao_servico": "TESTE",
    "descricao_fechamento": null,
    "status": "Pendente",
    "tecnicos": [
      {
        "id": 1,
        "name": "Master",
        "pivot": {
          "id_ordem_servico": 1493,
          "id_usuario": 1
        }
      }
    ],
    "disponibilidade": "Manhã, Tarde",
    "cliente": "(1395) GUILHERME COUTO",
    "servico": "(1) PLANO 5 MBPS RAP10 E FIXO EM DOBRO",
    "endereco_instalacao": "PRAÇA GETÚLIO VARGAS, 77, SALA 411(SHOPPING WORK) - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000"
  }
}

Consultar

Necessário

Para fazer requisições nos dados de ordem de serviço, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

A requisição de consulta da ordem de serviço, deve ser feita na rota:

/api/v1/integracao/ordem_servico/consultar

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/ordem_servico/agendar

Endpoint (Rota)

Neste endpoint, será possível consultar ordens de serviço, obtendo o retorno no formato JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
consulta Parametro que será utilizado para encontrar uma O.S. pelo seu número ou nome do cliente Sim
data_inicio Data inicial de referência para consulta de ordens de serviço em um intervalo Sim
data_fim Data final de referência para consulta de ordens de serviço em um intervalo Sim
tipo_data O tipo de data poderá ser: data_cadastro, data_inicio_programado, data_inicio_executado, data_termino_programado, data_termino_executado Não
order_by A ordenação poderá ser: data_cadastro, data_inicio_programado, data_inicio_executado, data_termino_programado, data_termino_executado Não
order_by_key A ordenação poderá ser: crescente (ASC) ou decrescenter (DESC) Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_ordem_servico Número Inteiro Nenhum
consulta Texto ou número inteiro Nenhum
data_inicio Formato timestamp (2020-01-01 00:00:00) Nenhum
data_fim Formato timestamp (2020-01-01 00:00:00) Nenhum
tipo_data Texto data_inicio_programado
order_by Texto data_inicio_programado
order_by_key Texto desc

Exemplo de requisição POST na rota de consulta da ordem de serviço:

curl -X POST
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/ordem_servico/consultar -d
'{
    "consulta": "Guilherme",
    "data_inicio": "2020-11-01 00:00:00",
    "data_fim": "2020-11-20 23:59:59",
    "tipo_data": "data_inicio_programado",
    "order_by_key": "asc",
    "order_by": "data_inicio_programado"
}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
    "consulta": "Guilherme",
    "data_inicio": "2020-11-01 00:00:00",
    "data_fim": "2020-11-20 23:59:59",
    "tipo_data": "data_inicio_programado",
    "order_by_key": "asc",
    "order_by": "data_inicio_programado"
}

Retorno da requisição POST:

{
  "status": "success",
  "msg": "Dados consultados com sucesso",
  "ordens_servico": [
    {
      "id_ordem_servico": 1493,
      "numero": "1262",
      "tipo": "INSTALAÇÃO FIBRA - VALORES OBRIGATÓRIOS: R$ 280.00",
      "data_inicio_programado": "2020-11-18 08:00:00",
      "data_termino_programado": "2020-11-18 09:00:00",
      "data_inicio_executado": null,
      "data_termino_executado": null,
      "data_cadastro": "2020-11-18 13:35:31",
      "descricao_abertura": "TESTE",
      "descricao_servico": "TESTE",
      "descricao_fechamento": null,
      "status": "Aguardando Agendamento",
      "tecnicos": [
        {
          "id": 4,
          "name": "Guilherme Couto",
          "pivot": {
            "id_ordem_servico": 1493,
            "id_usuario": 4
          }
        }
      ],
      "disponibilidade": "Manhã, Tarde",
      "cliente": "(1395) GUILHERME COUTO",
      "servico": "(1) PLANO 5 MBPS RAP10 E FIXO EM DOBRO",
      "endereco_instalacao": "PRAÇA GETÚLIO VARGAS, 77, SALA 411(SHOPPING WORK) - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000"
    }
  ]
}

Reagendar

Necessário

Para fazer requisições nos dados de ordem de serviço, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

A requisição de reagendamento da ordem de serviço, deve ser feita na rota:

/api/v1/integracao/ordem_servico/reagendar

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/ordem_servico/reagendar

Endpoint (Rota)

Neste endpoint, será possível reagendar a ordem de serviço, obtendo o retorno no formato JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
id_ordem_servico Identificador da ordem de serviço Sim
data_inicio_programado Data inicial programada para iniciar a execução da ordem de serviço Sim
hora_inicio_programado Hora inicial programada para iniciar a execução da ordem de serviço Sim
data_termino_programado Data final programada para finalizar a execução da ordem de serviço Sim
hora_termino_programado Hora final programada para finalizar a execução da ordem de serviço Sim
id_usuario_antigo Identificador do usuário (técnico) responsável pela ordem de serviço Sim, se o id_usuario_novo for especificado
id_usuario_novo Identificador do usuário (técnico) responsável pela ordem de serviço Sim, se o id_usuario_antigo for especificado

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_ordem_servico Número Inteiro Nenhum
data_inicio_programado Timestamp (2020-01-01) Nenhum
hora_inicio_programado Texto (12:00:00) Nenhum
data_termino_programado Texto (2020-01-01) Nenhum
hora_termino_programado Texto (13:00:00) Nenhum
id_usuario_antigo Número Inteiro Nenhum
id_usuario_novo Número Inteiro Nenhum

Exemplo de requisição POST na rota de consulta da ordem de serviço:

curl -X POST
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/ordem_servico/reagendar -d
'{
    "id_ordem_servico": "1493",
    "data_inicio_programado": "2020-11-23",
    "hora_inicio_programado": "08:00:00",
    "data_termino_programado": "2020-11-23",
    "hora_termino_programado": "09:30:00",
    "id_usuario_antigo": 4,
    "id_usuario_novo": 1
}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
    "id_ordem_servico": "1493",
    "data_inicio_programado": "2020-11-23",
    "hora_inicio_programado": "08:00:00",
    "data_termino_programado": "2020-11-23",
    "hora_termino_programado": "09:30:00",
    "id_usuario_antigo": 4,
    "id_usuario_novo": 1
}

Retorno da requisição POST:

{
  "status": "success",
  "msg": "Reagendamento salvo com sucesso",
  "ordem_servico": {
    "id_ordem_servico": 1493,
    "numero": "1262",
    "tipo": "INSTALAÇÃO FIBRA - VALORES OBRIGATÓRIOS: R$ 280.00",
    "data_inicio_programado": "2020-11-23 08:00",
    "data_termino_programado": "2020-11-23 09:30",
    "data_inicio_executado": null,
    "data_termino_executado": null,
    "data_cadastro": "2020-11-18 13:35:31",
    "descricao_abertura": "TESTE",
    "descricao_servico": "TESTE",
    "descricao_fechamento": null,
    "status": "Pendente",
    "tecnicos": [
      {
        "id": 1,
        "name": "Master",
        "pivot": {
          "id_ordem_servico": 1493,
          "id_usuario": 1
        }
      }
    ],
    "disponibilidade": "Manhã, Tarde",
    "cliente": "(1395) GUILHERME COUTO",
    "servico": "(1) PLANO 5 MBPS RAP10 E FIXO EM DOBRO",
    "endereco_instalacao": "PRAÇA GETÚLIO VARGAS, 77, SALA 411(SHOPPING WORK) - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000"
  }
}

Remover Agendamento

Necessário

Para fazer requisições nos dados de ordem de serviço, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

A requisição de remoção de agendamento da ordem de serviço, deve ser feita na rota:

/api/v1/integracao/ordem_servico/remove_agendamento

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/ordem_servico/remove_agendamento

Endpoint (Rota)

Neste endpoint, será possível remover o agendamento da ordem de serviço, obtendo o retorno no formato JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
id_ordem_servico Identificador da ordem de serviço Sim
id_motivo_remocao_agendamento Identificador do motivo de remoção de agendamento Sim
observacao Textual (Mínimo de 10 caracteres) Sim

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
id_ordem_servico Número Inteiro Nenhum
id_motivo_remocao_agendamento Número Inteiro Nenhum
observacao Texto Nenhum

Exemplo de requisição POST na rota de consulta da ordem de serviço:

curl -X POST
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/ordem_servico/reagendar -d
'{
    "id_ordem_servico": "1493",
    "id_motivo_remocao_agendamento": "8",
    "observacao": "Cliente pediu para ir no dia seguinte."
}' -k

Veja que os paramêtros enviados na requisição POST devem obedecer a estrutura no formato JSON:

{
    "id_ordem_servico": "1493",
    "id_motivo_remocao_agendamento": "8",
    "observacao": "Cliente pediu para ir no dia seguinte."
}

Retorno da requisição POST:

{
  "status": "success",
  "msg": "Remoção do agendamento feito com sucesso",
  "ordem_servico": {
    "id_ordem_servico": 1493,
    "numero": "1262",
    "tipo": "INSTALAÇÃO FIBRA - VALORES OBRIGATÓRIOS: R$ 280.00",
    "data_inicio_programado": "2020-11-23 08:00:00",
    "data_termino_programado": "2020-11-23 09:30:00",
    "data_inicio_executado": null,
    "data_termino_executado": null,
    "data_cadastro": "2020-11-18 13:35:31",
    "descricao_abertura": "TESTE",
    "descricao_servico": "TESTE",
    "descricao_fechamento": null,
    "status": "Aguardando Agendamento",
    "tecnicos": [
      {
        "id": 1,
        "name": "Master",
        "pivot": {
          "id_ordem_servico": 1493,
          "id_usuario": 1
        }
      }
    ],
    "disponibilidade": "Manhã, Tarde",
    "cliente": "(1395) GUILHERME COUTO",
    "servico": "(1) PLANO 5 MBPS RAP10 E FIXO EM DOBRO",
    "endereco_instalacao": "PRAÇA GETÚLIO VARGAS, 77, SALA 411(SHOPPING WORK) - CENTRO, SANTO ANTÔNIO DO MONTE\/MG | CEP: 35560-000"
  }
}

PBX

Necessário

Para fazer requisições nas rotas de notificação de ligação do PBX, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de notificação de ligação, devem ser feitos na rota:

/api/v1/integracao/pbx/ligacao/notificar

As requisições de cancelamento de ligação (notificar ligação perdida), devem ser feitos na rota:

/api/v1/integracao/pbx/ligacao/cancelar

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/pbx/ligacao/notificar

https://endereco_do_servidor/api/v1/integracao/pbx/ligacao/cancelar

POST

No método POST, de ambas as rotas poderão ser realizadas as notificações e cancelamento de ligações.

Aviso

IMPORTANTE: Ao realizar a requisição na rota de «notificação», o sistema irá automaticamente abrir uma janela pro usuário de destino, com os dados da chamada: ramal, identificador interno, telefone de origem da ligação. Caso algum cliente tenha sido identificado, será possível abrir o atendimento e já fornecer o protocolo ao cliente, caso contrário terá a opção de consultar um cliente na base. Ao relizar a requisição na rota de «cancelamento» da ligação, a janela de ligação será fechada automaticamente caso ela ainda esteja aberta.

Atributos da Requisição de ambas as rotas

Atributo Descrição Obrigatório
ramal Número de ramal correspondente ao usuário (Obrigatório caso o identificador_interno não seja informado)
identificador_interno ID Interno correspondente ao usuário (Obrigatório caso o ramal não seja informado)
codigo_cliente Código único do cliente Não
id_cliente Identificador (chave primária) do cliente Não
telefone Telefone da ligação externa do PBX Não
ligacao_params Objeto JSON para serem informados parametros da ligação Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
ramal Deve ser um valor numérico Nenhum
identificador_interno Deve ser um valor alfanumérico Nenhum
codigo_cliente Deve ser um valor númerico e existir na base de dados Nenhum
id_cliente Deve ser um valor númerico e existir na base de dados Nenhum
telefone Deve ser um valor númerico Nenhum
ligacao_params Deve ser um objeto no formato JSON Nenhum

Exemplo de requisição POST na rota de notificação de ligação:

curl -X POST https://endereco_servidor/api/v1/integracao/pbx/ligacao/notificar
-H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjNjN2VjYTY1"
-H "content-type: application/json"
-d '{"ramal": 111, "telefone": 37999912222, "ligacao_params": {"origem": "PBX", "atendente": "João"}}'

Exemplo de requisição POST na rota de cancelamento da ligação:

curl -X POST https://endereco_servidor/api/v1/integracao/pbx/ligacao/cancelar
-H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjNjN2VjYTY1"
-H "content-type: application/json"
-d '{"ramal": 111, "telefone": 37999912222}'

Retorno da requisição POST notificação de ligação:

{
    "status": "success",
    "msg": "Ligação notificada com sucesso"
}

Retorno da requisição POST cancelamento de ligação:

{
    "status": "success",
    "msg": "Ligação cancelada com sucesso"
}

CRM

Necessário

Para fazer requisições nos dados de CRM, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação). OBS: Essa rota irá retornar todos os dados de CRM.

As requisições de clientes, devem ser feitos na rota:

/api/v1/integracao/crm/all

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/crm/all

GET

No método GET, irá consultar os dados dos CRM e retornar um JSON como resposta. Retorno da requisição GET:

{
   "status": "success",
   "msg": "Dados consultados com sucesso",
   "crms": [
       {
           "id_crm": 1,
           "nome": "CRM - VENDAS"
       },
       {
           "id_crm": 201,
           "nome": "TESTE INTEGRACAO API"
       }
   ]
}

Prospectos

Necessário

Para fazer requisições nos dados de prospectos, é necessário que você já possua o TOKEN, adquirido na etapa (Autenticação)

Abaixo estão todas as funções disponíveis para o prospecto

All (Todos os Prospectos)

Necessário

Para fazer requisições nos dados de prospectos, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação). OBS: Essa rota irá retornar todos os dados de prospectos, caso nenhum parâmetro seja enviado. Utilize com cautela.

As requisições de prospectos, devem ser feitos na rota:

/api/v1/integracao/prospecto/all

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/prospecto/all

GET

No método GET, irá consultar os dados de prospectos e retornar um JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Atributo Descrição Obrigatório
convertido Retornar prospectos convertidos Não

Os atributos podem conter os seguintes valores:

Atributo Descrição Valor Default
convertido sim,nao nao

Exemplo de requisição GET na rota de prospectos:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/prospecto/all?convertido=sim -k

Retorno da requisição GET:

{
  "status": "success",
  "msg": "Dados consultados com sucesso",
  "prospectos": [
      {
          "id_prospecto": 3,
          "nome_razaosocial": "FULANO DE TAL",
          "cpf_cnpj": "54691185097",
          "email": null,
          "telefone": null,
          "observacao": null,
          "id_cliente": 23360,
          "id_endereco_numero": 34934,
          "created_at": "2020-02-20 08:52:44",
          "updated_at": "2020-02-20 17:53:45",
          "tipo_pessoa": "pf",
          "id_usuario": 1,
          "origem": "web",
          "rg": null,
          "telefone_secundario": null,
          "data_nascimento": null,
          "id_vendedor": null,
          "id_vencimento": null,
          "nome_pai": null,
          "nome_mae": null,
          "estado_civil": null,
          "genero": null,
          "nacionalidade": "brasileiro",
          "profissao": null,
          "created_at_br": "20/02/2020"
      }
  }

Serviços / Planos Disponíveis

Necessário

Para fazer requisições nos dados de serviços / planos disponíveis para prospecto, é necessário que você já possua o TOKEN, adquirido na etapa (Autenticação)

As requisições devem ser feitos na rota:

/api/v1/integracao/prospecto/create?cep=<numero_cep>

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/prospecto/create?cep=35560000

Nota

NOTA: As informações disponíveis na rota em questão são necessárias para a criação de um novo prospecto. Será preciso informar o objeto jSON do serviço / plano, selecionado na interface pelo usuário. Para mais informações, consulte o tópico abaixo.

Cadastrar Prospecto

Necessário

Para fazer requisições de cadastro de prospectos, é necessário que você já possua o TOKEN, adquirido na etapa (Autenticação)

As requisições devem ser feitos na rota:

/api/v1/integracao/prospecto

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/prospecto
Rota e corpo (payload) da requisição
  • A rota em questão é do tipo POST e o corpo da requisição deve ter o formato abaixo:

    {
        "cep": "35560000",
        "servico": {
            "id_servico": 1,
            "valor": 100
        },
        "cpf_cnpj": "68346567000158",
        "telefone": "3732818000",
        "nome_razaosocial": "Empresa XPTO LTDA",
        "tipo_pessoa": "pj",
        "bairro": "Centro",
        "endereco": "Praça Getúlio Vargas",
        "numero": 77
    }
    
  • Obrigatoriedade dos campos:

Campo Descrição Obrigatório
cep CEP referente ao endereço de instalação Sim
servico.id_servico Identificador único do serviço / plano de contratação Sim
servico.valor Valor em reais (R$) do serviço / plano ofertado Sim
nome_razaosocial Nome ou Razão Social do contratante Sim
cpf_cnpj CPF ou CNPJ do contratante Não
telefone Telefone principal do contratante Sim
email email principal do contratante Não
observacao Campo livre para observações do contratante Não
tipo_pessoa Informar «pj» para pessoa jurídica ou «pf» para pessoa física Sim
bairro Bairro referente ao endereço de instalação Sim
endereco Endereço referente ao local de instalação Sim
numero Número referente ao endereço de instalação Sim
id_crm ID referente ao CRM que será vinculado o prospecto Nao
  • Tipo de valores aceitos pelos campos:
Campo Tipo
cep Numérico
servico.id_servico Numérico
servico.valor Numérico
nome_razaosocial Texto
cpf_cnpj Numérico
telefone Numérico
email Texto
observacao Texto
tipo_pessoa Texto
bairro Texto
endereco Texto
numero Numérico
id_crm Numérico
Respostas da requisição

As seguintes respostas podem ser obtidas de acordo com o que for informado na rota em questão:

Casos de erro

  • Em casos de um CPF ou CNPJ já tiver sido cadastrado, a seguinte resposta será obtida:

    {
      "status": "error",
      "msg": "O CPF/CNPJ já foi cadastrado antes no prospecto EMPRESA XPTO LTDA"
    }
    

Observação ao vincular Prospecto a um CRM

  • Caso seja informado o atributo id_crm, o prospecto será vinculado a lista PROSPECTOS-API por padrão.

Casos de sucesso

  • Um prospecto que atende todos os requisitos, será cadastrado e a seguinte resposta será obtida:

    {
      "status": "success",
      "msg": "Prospecto adicionado com sucesso",
      "prospecto": {
        "nome_razaosocial": "EMPRESA XPTO LTDA",
        "telefone": "3732818000",
        "email": null,
        "observacao": null,
        "id_endereco_numero": 33320,
        "tipo_pessoa": "pj",
        "cpf_cnpj": "41483316000169",
        "id_usuario": 1,
        "origem": "API",
        "updated_at": "2020-07-28 10:27:56",
        "created_at": "2020-07-28 10:27:56",
        "id_prospecto": 100,
        "created_at_br": "28\/07\/2020",
        "prospecto_servico": {
          "id_prospecto_servico": 99,
          "id_prospecto": 100,
          "id_servico": 1,
          "valor": "100"
        }
      }
    }
    

Rota e parâmetros da requisição

A rota em questão é do tipo GET e possui 1 único parâmetro obrigatório que deve ser informado junto a URL, o «cep». O parâmetro deve ser informado no formato de query string, da seguinte forma: ?cep=<numero_cep>. O <numero_cep>, deve ser substituído pelo valor equivalente ao CEP a ser informado para busca de serviços / planos disponíveis.

Respostas da requisição

As seguintes respostas podem ser obtidas de acordo com o que for informado na rota em questão:

Casos de erro

  • Omissão do parâmetro ?cep=<numero_cep> na rota, resultará na resposta:

    {
        "status": "error",
        "msg": "CEP não informado."
    }
    
  • Informando um CEP inválido na rota, resultará na resposta:

    {
      "status": "error",
      "msg": "Nenhuma cidade foi encontrada com esse CEP."
    }
    

Casos de sucesso

  • Informando um CEP válido na rota, todos os planos / serviços que estiverem associados a uma unidade de negócio referente ao CEP e que estejam habilitados para prospecto, serão retornados com a seguinte resposta:

    {
      "status": "success",
      "msg": "Dados consultados com sucesso",
      "servicos": [
        {
          "id_servico": 1330,
          "descricao": "COMBO 10 MB EM DOBRO FIXO E 3 CAMERAS RAP10",
          "valor": 254.9,
          "nome_radius": "HUBSOFT-SERVICE-1330",
          "display": "COMBO 10 MB EM DOBRO FIXO E 3 CAMERAS RAP10 - (R$ 254.90) (INATIVO)",
          "velocidade_download": 20480,
          "velocidade_upload": 4096
        },
        {
          "id_servico": 1308,
          "descricao": "PLANO 10 MBPS + IP FIXO",
          "valor": 129.9,
          "nome_radius": "HUBSOFT-SERVICE-1308",
          "display": "PLANO 10 MBPS + IP FIXO - (R$ 129.90) (INATIVO)",
          "velocidade_download": 10240,
          "velocidade_upload": 2048
        },
        {
          "id_servico": 1318,
          "descricao": "PLANO 10 MBPS RAP10 E FIXO EM DOBRO",
          "valor": 129.9,
          "nome_radius": "HUBSOFT-SERVICE-1318",
          "display": "PLANO 10 MBPS RAP10 E FIXO EM DOBRO - (R$ 129.90) (INATIVO)",
          "velocidade_download": 20480,
          "velocidade_upload": 4096
        },
        {
          "id_servico": 1319,
          "descricao": "PLANO 25 MBPS RAP10 E FIXO EM DOBRO",
          "valor": 169.9,
          "nome_radius": "HUBSOFT-SERVICE-1319",
          "display": "PLANO 25 MBPS RAP10 E FIXO EM DOBRO - (R$ 169.90) (INATIVO)",
          "velocidade_download": 51200,
          "velocidade_upload": 10240
        }
      ]
    }
    
  • Informando um CEP válido e que não esteja associado a uma unidade de negócio, será retornado todos serviços / planos habilitados para prospecto:

    {
      "status": "success",
      "msg": "Dados consultados com sucesso",
      "servicos": [
        {
          "id_servico": 1303,
          "descricao": "100-FIBRA-CLONE-TEST",
          "valor": 100,
          "nome_radius": "HUBSOFT-SERVICE-1303",
          "display": "100-FIBRA-CLONE-TEST - (R$ 100.00) (INATIVO)",
          "velocidade_download": 150000,
          "velocidade_upload": 35000
        },
        {
          "id_servico": 1292,
          "descricao": "100GB-FIBRA-CLONADO",
          "valor": 100,
          "nome_radius": "HUBSOFT-SERVICE-1292",
          "display": "100GB-FIBRA-CLONADO - (R$ 100.00) (INATIVO)",
          "velocidade_download": 150000,
          "velocidade_upload": 35000
        },
        {
          "id_servico": 1417,
          "descricao": "100GB-FIBRA-CLONE-imprimir-carne",
          "valor": 80,
          "nome_radius": "HUBSOFT-SERVICE-1417",
          "display": "100GB-FIBRA-CLONE-imprimir-carne - (R$ 80.00) (INATIVO)",
          "velocidade_download": 150000,
          "velocidade_upload": 35000
        },
        {
          "id_servico": 1410,
          "descricao": "100GB-FIBRA-XPTO",
          "valor": 80,
          "nome_radius": "HUBSOFT-SERVICE-1410",
          "display": "100GB-FIBRA-XPTO - (R$ 80.00) (INATIVO)",
          "velocidade_download": 150000,
          "velocidade_upload": 35000
        },
        {
          "id_servico": 1394,
          "descricao": "100MB + HBO",
          "valor": 100,
          "nome_radius": "HUBSOFT-SERVICE-1394",
          "display": "100MB + HBO - (R$ 100.00) (INATIVO)",
          "velocidade_download": 150000,
          "velocidade_upload": 35000
        },
        {
          "id_servico": 1384,
          "descricao": "100MB-FIBRA + PACOTE",
          "valor": 100,
          "nome_radius": "HUBSOFT-SERVICE-1384",
          "display": "100MB-FIBRA + PACOTE - (R$ 100.00) (INATIVO)",
          "velocidade_download": 150000,
          "velocidade_upload": 35000
        },
        {
          "id_servico": 1402,
          "descricao": "200 GB",
          "valor": 80,
          "nome_radius": "HUBSOFT-SERVICE-1402",
          "display": "200 GB - (R$ 80.00) (INATIVO)",
          "velocidade_download": 150000,
          "velocidade_upload": 35000
        },
        {
          "id_servico": 1272,
          "descricao": "20MB-TESTE1",
          "valor": 100,
          "nome_radius": "HUBSOFT-SERVICE-1272",
          "display": "20MB-TESTE1 - (R$ 100.00) (INATIVO)",
          "velocidade_download": 20000,
          "velocidade_upload": 10000
        },
        {
          "id_servico": 1260,
          "descricao": "2MB_WIRELESS",
          "valor": 59.9,
          "nome_radius": "HUBSOFT-SERVICE-1260",
          "display": "2MB_WIRELESS - (R$ 59.90) (INATIVO)",
          "velocidade_download": 2000,
          "velocidade_upload": 800
        },
        {
          "id_servico": 1275,
          "descricao": "30 MB FIBRA PLUS",
          "valor": 49.9,
          "nome_radius": "HUBSOFT-SERVICE-1275",
          "display": "30 MB FIBRA PLUS - (R$ 49.90) (INATIVO)",
          "velocidade_download": 2000,
          "velocidade_upload": 640
        },
        {
          "id_servico": 1301,
          "descricao": "5MB CONECTA 2",
          "valor": 89.9,
          "nome_radius": "HUBSOFT-SERVICE-1301",
          "display": "5MB CONECTA 2 - (R$ 89.90) (INATIVO)",
          "velocidade_download": 5192,
          "velocidade_upload": 5192
        },
        {
          "id_servico": 1,
          "descricao": "5MB-WIRELESS",
          "valor": 300,
          "nome_radius": "HUBSOFT-SERVICE-1",
          "display": "5MB-WIRELESS - (R$ 300.00) (INATIVO)",
          "velocidade_download": 7000,
          "velocidade_upload": 2000
        },
        {
          "id_servico": 1251,
          "descricao": "AOM - CNPJ - 02MB",
          "valor": 69.9,
          "nome_radius": "HUBSOFT-SERVICE-1251",
          "display": "AOM - CNPJ - 02MB - (R$ 69.90) (INATIVO)",
          "velocidade_download": 2048,
          "velocidade_upload": 1024
        },
        {
          "id_servico": 1330,
          "descricao": "COMBO 10 MB EM DOBRO FIXO E 3 CAMERAS RAP10",
          "valor": 254.9,
          "nome_radius": "HUBSOFT-SERVICE-1330",
          "display": "COMBO 10 MB EM DOBRO FIXO E 3 CAMERAS RAP10 - (R$ 254.90) (INATIVO)",
          "velocidade_download": 20480,
          "velocidade_upload": 4096
        },
        {
          "id_servico": 1324,
          "descricao": "COMBO 50 MB FIXO E 1 CAMERA RAP10",
          "valor": 274.9,
          "nome_radius": "HUBSOFT-SERVICE-1324",
          "display": "COMBO 50 MB FIXO E 1 CAMERA RAP10 - (R$ 274.90) (INATIVO)",
          "velocidade_download": 51200,
          "velocidade_upload": 10240
        },
        {
          "id_servico": 1308,
          "descricao": "PLANO 10 MBPS + IP FIXO",
          "valor": 129.9,
          "nome_radius": "HUBSOFT-SERVICE-1308",
          "display": "PLANO 10 MBPS + IP FIXO - (R$ 129.90) (INATIVO)",
          "velocidade_download": 10240,
          "velocidade_upload": 2048
        },
        {
          "id_servico": 1318,
          "descricao": "PLANO 10 MBPS RAP10 E FIXO EM DOBRO",
          "valor": 129.9,
          "nome_radius": "HUBSOFT-SERVICE-1318",
          "display": "PLANO 10 MBPS RAP10 E FIXO EM DOBRO - (R$ 129.90) (INATIVO)",
          "velocidade_download": 20480,
          "velocidade_upload": 4096
        },
        {
          "id_servico": 1319,
          "descricao": "PLANO 25 MBPS RAP10 E FIXO EM DOBRO",
          "valor": 169.9,
          "nome_radius": "HUBSOFT-SERVICE-1319",
          "display": "PLANO 25 MBPS RAP10 E FIXO EM DOBRO - (R$ 169.90) (INATIVO)",
          "velocidade_download": 51200,
          "velocidade_upload": 10240
        }
      ]
    }
    

Buscar Prospectos

Necessário

Para fazer requisições de busca de prospectos, é necessário que você já possua o TOKEN, adquirido na etapa (Autenticação)

As requisições devem ser feitos na rota:

/api/v1/integracao/prospecto?busca=<valor_busca>

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/prospecto?busca=xpto

Rota e parâmetros da requisição

  • A rota em questão é do tipo GET e é necessário informar o parâmetro busca no formato query string.

    Nota

    A busca irá funcionar apenas para o campo Nome ou Razão Social no banco de dados do HubSoft.

Respostas da requisição

As seguintes respostas podem ser obtidas de acordo com o que for informado na rota em questão:

Casos de erro

  • Caso o parâmetro de busca seja omitido, a seguinte resposta será obtida:

    {
        "status": "error",
        "msg": "O campo busca é obrigatória"
    }
    

Casos de sucesso

  • Caso o a busca encontre algum registro, a seguinte resposta será obtida:

    {
       "status": "success",
       "msg": "Dados consultados com sucesso",
       "prospectos": [
         {
           "id_prospecto": 100,
           "nome_razaosocial": "EMPRESA XPTO LTDA",
           "cpf_cnpj": "41483316000169",
           "email": null,
           "telefone": "3732818000",
           "observacao": null,
           "id_cliente": null,
           "id_endereco_numero": 33320,
           "created_at": "2020-07-28 10:27:56",
           "updated_at": "2020-07-28 10:27:56",
           "tipo_pessoa": "pj",
           "id_usuario": 1,
           "origem": "API",
           "created_at_br": "28\/07\/2020"
         }
       ]
     }
    

Rede

Necessário

Para fazer requisições nos dados de REDE, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições das rotas de REDE, devem ser feitos na rota:

/api/v1/integracao/rede

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/rede

Abaixo estão todas as funções disponíveis das rotas de Rede

Equipamento

Necessário

Para fazer requisições nos dados da API, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de REDE, devem ser feitos na rota:

/api/v1/integracao/rede

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/rede/equipamento

GET

No método GET, será possível consultar os equipamentos que estão cadastrados no sistema:

Exemplo de requisição GET na rota de equipamentos:

curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/rede/equipamento -k

Retorno da requisição GET:

{
    "status": "success",
    "msg": "Dados consultados com sucesso.",
    "equipamentos": [
        {
            "id_equipamento": 1374,
            "nome": "ACCEL-SDT-01",
            "ipv4": "10.20.1.80",
            "ipv6": null,
            "autentica_radius": true,
            "modelo": "SERVERU L800",
            "tipo": "ROTEADOR",
            "fabricante": "SERVERU",
            "interfaces": [
                {
                    "id_interface_conexao": 419,
                    "nome": "VLAN100",
                    "descricao": "VLAN100",
                    "tipo": "vlan",
                    "interface_conexao_roteamento": {
                        "id_interface_conexao": 419,
                        "nome": "VLAN100",
                        "descricao": "VLAN100",
                        "tipo": "vlan",
                        "equipamento_conexao": {
                            "id_equipamento": 1374,
                            "nome": "ACCEL-SDT-01",
                            "ipv4": "10.20.1.80",
                            "ipv6": null
                        }
                    }
                },
                {
                    "id_interface_conexao": 420,
                    "nome": "bridge0",
                    "descricao": "bridge0",
                    "tipo": "bridge",
                    "interface_conexao_roteamento": {
                        "id_interface_conexao": 420,
                        "nome": "bridge0",
                        "descricao": "bridge0",
                        "tipo": "bridge",
                        "equipamento_conexao": {
                            "id_equipamento": 1374,
                            "nome": "ACCEL-SDT-01",
                            "ipv4": "10.20.1.80",
                            "ipv6": null
                        }
                    }
                },
                {
                    "id_interface_conexao": 66,
                    "nome": "ether1",
                    "descricao": "",
                    "tipo": "ethernet",
                    "interface_conexao_roteamento": {
                        "id_interface_conexao": 66,
                        "nome": "ether1",
                        "descricao": "",
                        "tipo": "ethernet",
                        "equipamento_conexao": {
                            "id_equipamento": 1374,
                            "nome": "ACCEL-SDT-01",
                            "ipv4": "10.20.1.80",
                            "ipv6": null
                        }
                    }
                },
                {
                    "id_interface_conexao": 386,
                    "nome": "ether2",
                    "descricao": null,
                    "tipo": "ethernet",
                    "interface_conexao_roteamento": {
                        "id_interface_conexao": 386,
                        "nome": "ether2",
                        "descricao": null,
                        "tipo": "ethernet",
                        "equipamento_conexao": {
                            "id_equipamento": 1374,
                            "nome": "ACCEL-SDT-01",
                            "ipv4": "10.20.1.80",
                            "ipv6": null
                        }
                    }
                }
            ]
        },
        {
            "id_equipamento": 1477,
            "nome": "AP MIKROTIK",
            "ipv4": "10.101.102.103",
            "ipv6": null,
            "autentica_radius": true,
            "modelo": "RB600",
            "tipo": "ACCESS POINT",
            "fabricante": "MIKROTIK",
            "interfaces": [
                {
                    "id_interface_conexao": 571,
                    "nome": "Wireless01",
                    "descricao": null,
                    "tipo": "wireless",
                    "interface_conexao_roteamento": {
                        "id_interface_conexao": 419,
                        "nome": "VLAN100",
                        "descricao": "VLAN100",
                        "tipo": "vlan",
                        "equipamento_conexao": {
                            "id_equipamento": 1374,
                            "nome": "ACCEL-SDT-01",
                            "ipv4": "10.20.1.80",
                            "ipv6": null
                        }
                    }
                },
                {
                    "id_interface_conexao": 862,
                    "nome": "vlan 10",
                    "descricao": null,
                    "tipo": "vlan",
                    "interface_conexao_roteamento": {
                        "id_interface_conexao": 862,
                        "nome": "vlan 10",
                        "descricao": null,
                        "tipo": "vlan",
                        "equipamento_conexao": {
                            "id_equipamento": 1477,
                            "nome": "AP MIKROTIK",
                            "ipv4": "10.101.102.103",
                            "ipv6": null
                        }
                    }
                }
            ]
        }
    ]
}

Pop

Necessário

Para fazer requisições nos dados da API, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de REDE, devem ser feitos na rota:

/api/v1/integracao/rede

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/rede/pop

GET

No método GET, será possível consultar os POPs e seus equipamentos de conexão que estão cadastrados no sistema:

Exemplo de requisição GET na rota de POP:

    curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/rede/pop -k

Retorno da requisição GET:

    {
    "status": "success",
    "msg": "Dados consultados com sucesso.",
    "pops": [
        {
            "id_pop": 51,
            "nome": "NOVO POP",
            "equipamentos": [
                {
                    "id_equipamento": 1402,
                    "nome": "NOVO EQUIP CADASTRADO",
                    "ipv4": "192.168.100.254",
                    "ipv6": null,
                    "modelo": "DELL 5524",
                    "fabricante": "DELL"
                }
            ]
        },
        {
            "id_pop": 53,
            "nome": "POP EXEMPLO WIKI",
            "equipamentos": [
                {
                    "id_equipamento": 1400,
                    "nome": "EXEMPLO WIKI",
                    "ipv4": "10.10.10.100",
                    "ipv6": null,
                    "modelo": "RB433AH",
                    "fabricante": "MIKROTIK"
                }
            ]
        },
        {
            "id_pop": 48,
            "nome": "POP TESTE",
            "equipamentos": [
                {
                    "id_equipamento": 1413,
                    "nome": "HUAWEI-NICNET",
                    "ipv4": "45.4.33.194",
                    "ipv6": null,
                    "modelo": "NE20E-S2F",
                    "fabricante": "HUAWEI"
                },
                {
                    "id_equipamento": 1410,
                    "nome": "OLT BDCOM",
                    "ipv4": "177.52.48.7",
                    "ipv6": null,
                    "modelo": "GP3600-08",
                    "fabricante": "BDCOM"
                },
                {
                    "id_equipamento": 1406,
                    "nome": "JUNIPER-MX104",
                    "ipv4": "10.20.1.114",
                    "ipv6": null,
                    "modelo": "MX104",
                    "fabricante": "JUNIPER"
                }
            ]
        },
        {
            "id_pop": 52,
            "nome": "POP EXEMPLO",
            "equipamentos": []
        }
    ]
}

Nota

OBSERVAÇÃO: Um POP pode conter 0 ou mais equipamentos de conexão associados, de acordo com as configurações estabelecidas no sistema.

Zona de Atendimento

Necessário

Para fazer requisições nos dados da API, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de REDE, devem ser feitos na rota:

/api/v1/integracao/rede

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/rede/zona_atendimento

GET

No método GET, será possível consultar as Zonas de Atendimento que estão cadastradas no sistema:

Exemplo de requisição GET na rota de Zonas de Atendimento:

    curl -X GET
--header "Accept:application/json"
--header "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O"
https://endereco_servidor/api/v1/integracao/rede/zona_atendimento -k

Retorno da requisição GET:

    {
    "status": "success",
    "msg": "Dados consultados com sucesso.",
    "zonas_atendimento": [
        {
            "id_zona_atendimento": 12,
            "nome": "FIBRA - PIUMHI - A1R3",
            "descricao": "ATENDIMENTO FIBRA AREA 1 ROTA 3 EM PIUMHI - TESTE",
            "interfaces": [
                {
                    "id_interface_conexao": 355,
                    "nome": "A1R3_INTELBRAS",
                    "descricao": null,
                    "tipo": "gpon",
                    "equipamento_conexao": {
                        "nome": "PIU_CHASSI_INTELBRAS_ESCRIT?RIO_02",
                        "ipv4": "10.37.1.249",
                        "ipv6": null,
                        "modelo": "8820G",
                        "fabricante": "INTELBRAS"
                    }
                }
            ]
        },
        {
            "id_zona_atendimento": 13,
            "nome": "WIRELESS RAUL",
            "descricao": "REDE WIRELESS PERTO DO AP RAUL",
            "interfaces": [
                {
                    "id_interface_conexao": 51,
                    "nome": "ath0",
                    "descricao": null,
                    "tipo": "wireless",
                    "equipamento_conexao": {
                        "nome": "AP_RAUL",
                        "ipv4": "10.20.72.12",
                        "ipv6": null,
                        "modelo": "BULLET2",
                        "fabricante": "UBIQUITI"
                    }
                }
            ]
        },
        {
            "id_zona_atendimento": 10,
            "nome": "SDT - FIBRA - AREA 9",
            "descricao": "AREA 9 DE FIBRA EM SAMONTE",
            "interfaces": [
                {
                    "id_interface_conexao": 327,
                    "nome": "SDT_A9R3_A9R4",
                    "descricao": null,
                    "tipo": "epon",
                    "equipamento_conexao": {
                        "nome": "FIBERHOME-SDT",
                        "ipv4": "10.20.14.34",
                        "ipv6": null,
                        "modelo": "AN5516-06",
                        "fabricante": "FIBERHOME"
                    }
                },
                {
                    "id_interface_conexao": 330,
                    "nome": "Teste Panhaque",
                    "descricao": null,
                    "tipo": "epon",
                    "equipamento_conexao": {
                        "nome": "FIBERHOME-SDT",
                        "ipv4": "10.20.14.34",
                        "ipv6": null,
                        "modelo": "AN5516-06",
                        "fabricante": "FIBERHOME"
                    }
                }
            ]
        },
        {
            "id_zona_atendimento": 14,
            "nome": "PIUMHI - FIBRA -A4",
            "descricao": "AREA 04 DE FIBRA EM PIUMHI",
            "interfaces": [
                {
                    "id_interface_conexao": 353,
                    "nome": "PIU_A4R1_A4R2",
                    "descricao": null,
                    "tipo": "gpon",
                    "equipamento_conexao": {
                        "nome": "PIU_CHASSI_INTELBRAS_ARMARIO_RENATO",
                        "ipv4": "10.37.8.3",
                        "ipv6": null,
                        "modelo": "8820G",
                        "fabricante": "INTELBRAS"
                    }
                }
            ]
        }
    ]
}

Nota

OBSERVAÇÃO: Uma zona de atendimento poderá conter 0 ou mais interfaces de conexão configuradas. O ideal de se utilizar essa rota da API, é que todas as Interfaces de Conexões, estejam associadas com as Zonas de Atendimento de forma correta. Verifique com o gestor da Rede do provedor, para verificar se todos os cadastros estão corretos.

Tipos de Atendimento

Necessário

Para fazer requisições nos dados de tipos de atendimento, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de tipos de atendimento, devem ser feitos na rota:

/api/v1/integracao/configuracao/tipo_atendimento

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/configuracao/tipo_atendimento

Abaixo estão todas as funções disponíveis do cliente

All (Todos os Tipos de Atendimento)

Necessário

Para fazer requisições nos dados de tipos de atendimento, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação). OBS: Essa rota irá retornar todos os dados de tipos de atendimento.

As requisições de tipos de atendimento, devem ser feitos na rota:

/api/v1/integracao/configuracao/tipo_atendimento

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/configuracao/tipo_atendimento

GET

No método GET, irá consultar os dados dos tipos de atendimento e retornar um JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Exemplo de requisição GET na rota de cliente:

curl --request GET \
  --url http://endereco_do_servidor:8000/api/v1/integracao/tipo_atendimento \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O' \
  --header 'Content-Type: application/json'

Retorno da requisição GET:

{
  "status": "success",
  "msg": "Dados consultados com sucesso",
  "tipos_atendimento": [
    {
      "id_tipo_atendimento": 109,
      "descricao": "SEM ACESSO A INTERNET"
    },
    {
      "id_tipo_atendimento": 111,
      "descricao": "OSCILAÇÃO\/QUEDAS DE CONEXÃO"
    }
  ],
  "encrypted": false
}

Tipos de Serviço

Necessário

Para fazer requisições nos dados de tipos de serviço, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação)

As requisições de tipos de serviço, devem ser feitos na rota:

/api/v1/integracao/configuracao/tipo_servico

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/configuracao/tipo_servico

Abaixo estão todas as funções disponíveis do cliente

All (Todos os Tipos de Serviço)

Necessário

Para fazer requisições nos dados de tipos de serviço, é necessário que você já possua o TOKEN, conseguido na etapa (Autenticação). OBS: Essa rota irá retornar todos os dados de tipos de serviço.

As requisições de tipos de serviço, devem ser feitos na rota:

/api/v1/integracao/configuracao/tipo_servico

O endereço completo, ficará da seguinte forma:

https://endereco_do_servidor/api/v1/integracao/configuracao/tipo_servico

GET

No método GET, irá consultar os dados dos tipos de serviço e retornar um JSON como resposta. Os seguintes parâmetros podem/devem ser utilizados:

Exemplo de requisição GET na rota de cliente:

curl --request GET \
  --url http://endereco_do_servidor:8000/api/v1/integracao/tipo_servico \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6Ijg0MTM2O' \
  --header 'Content-Type: application/json'

Retorno da requisição GET:

{
  "status": "success",
  "msg": "Dados consultados com sucesso",
  "tipos_servico": [
    {
      "id_tipo_servico": 3,
      "descricao": "Taxa de Instalação",
      "bloquear": true,
      "display": "Taxa de Instalação"
    },
    {
      "id_tipo_servico": 4,
      "descricao": "Ordem de Serviço",
      "bloquear": true,
      "display": "Ordem de Serviço"
    }
  ],
  "encrypted": false
}

Exemplos

Necessário

Alguns exemplos básicos foram desenvolvidos para facilitar a visualização de uso da API do HubSoft

Abaixo estão listados exemplos em algumas linguagens de programação

JavaScript

Nota

OBSERVAÇÃO: O código abaixo é apenas um exemplo para facilitar o desenvolvimento. Em ambiente de produção, o ideal é que faça a separação das funções e se possível faça o desenvolvimento com orientação a objetos (caso a sua linguagem de programação assim permita).

Exemplo de código em JavaScript:

var url = "https://api.dev.hubsoft.com.br/oauth/token";
var data = {
        "grant_type":"password",
        "client_id":"3",
        "client_secret":"ONe7Ns48Y30tBMzneW",
        "username":"api@hubsoft.com.br",
        "password":"api123api"
};

$.ajax({
  type: "POST",
  url: url,
  data: data,
  success: success,
  error: error
});

function success(response){
  var alerta = 'SUCESSO ---- TOKEN TYPE: ' + response.token_type + ' | ACCESS TOKEN: ' + response.access_token;
  alert(alerta);
}

function error(){
   alert('error');
}

PHP

Nota

OBSERVAÇÃO: O código abaixo é apenas um exemplo para facilitar o desenvolvimento. Em ambiente de produção, o ideal é que faça a separação das funções e se possível faça o desenvolvimento com orientação a objetos (caso a sua linguagem de programação assim permita).

Exemplo de Código em PHP:

/**
 * O código abaixo é apenas um exemplo para facilitar o desenvolvimento
 * Em ambiente de produção, o ideal é que faça a separação das funções
 * e se possível faça o desenvolvimento com orientação a objetos.
 */
function requisicao($url, $method, $body = [], $token = null){
    $req = curl_init($url);
    $header = array();
    $header[] = 'Accept: application/json';
    $header[] = 'Content-Type: application/json';
    if(!is_null($token)){
        $header[] = 'Authorization: ' . $token;
    }
    curl_setopt($req, CURLOPT_HTTPHEADER, $header);
    curl_setopt($req, CURLOPT_RETURNTRANSFER, true);
    if($method == "POST"){
        curl_setopt($req, CURLOPT_POST, true );
        curl_setopt($req, CURLOPT_POSTFIELDS, http_build_query($body));
    }
    $respCode = curl_getinfo($req, CURLINFO_HTTP_CODE);
    $resp = json_decode(curl_exec($req), true);
    curl_close($req);
    return $resp;
}

$clientId = "3";
$clientSecret = "ONe7Ns48Y30tBMzneWAwL6hWuh4ze09Jf7qcMsO9";
$username = "api@hubsoft.com.br";
$password = "api123api";
$url = "https://api.dev.hubsoft.com.br";
$urlOauth = $url . "/oauth/token";
$urlCliente = $url . "/api/v1/integracao/cliente?busca=cpf_cnpj&termo_busca=09141806654";

//Body da requisição do oauth
$requestBody = [
    "client_id"=>$clientId,
    "client_secret"=>$clientSecret,
    "username"=>$username,
    "password"=>$password,
    "grant_type"=>"password"
];

//Faz autorização do oauth
$reqOauth = requisicao($urlOauth, 'POST', $requestBody);

//Armazena os dados pra montar o token (Authorization)
$tokenType = $reqOauth['token_type'];
$accessToken = $reqOauth['access_token'];

//Monta o token Authorization
$authorizationToken = $tokenType . " " . $accessToken;

//Faz requisição do cliente
$reqCliente = requisicao($urlCliente, 'GET', [], $authorizationToken);

//Exibe o resultado da requisição
var_dump($reqCliente);

Dúvidas sobre API do HubSoft!

Caso existam dúvidas sobre a utilização da API do HubSoft, estamos à disposição através do e-mail suporte@hubsoft.com.br