API para distribuidores e parceiros

Graças à API é possível oferecer aos seus clientes os serviços de telefonia sem necessidade de registrá-los na Zadarma. Além disso, os clientes podem usufruir dos serviços de telefonia sob sua própria marca (Whitelabel).

É mais, os serviços de telefonia podem ser oferecidos não como um serviço independente, mas como parte do seu sistema, com a telefonia integrada de forma muito estreita.

Em resumo, os seus clientes poderão emitir e receber chamadas a partir da sua interface web utilizando a central da Zadarma e mais.

Todas as possibilidades e métodos da API Zadarma

Para trabalhar com os métodos descritos é necessário obter acesso à área pessoal do parceiro da Zadarma. Se ainda não possui, abra um ticket para o Departamento Financeiro.

Possibilidades da integração:

  • Criação de novas contas de utilizadores Zadarma a partir da conta mãe do parceiro e gestão dessas contas
  • Transferência de saldo entre parceiro e contas associadas
  • Conexão de números virtuais
  • Ativação e configuração da central virtual
  • Obtenção de chaves API das contas de utilizadores
  • Configuração de webhook para gestão de chamadas entrantes na central
  • Criação de widgets WebRTC para contas de utilizadores, etc.

Sequência de passos para conectar a telefonia ao seu cliente:

1. O registro do utilizador (criação de nova conta Zadarma) é realizado pelo método POST /v1/reseller/users/registration/new/

    Para finalizar o registro do utilizador é necessária a confirmação do registro pelo método POST /v1/reseller/users/registration/confirm/

    Para obter o saldo de boas-vindas e a possibilidade de recarregar a conta é necessário adicionar e confirmar o número de telefone de contato do utilizador. Para adicionar o número de telefone de contato utiliza-se o método POST /v1/reseller/users/phones/add/ .

    Para confirmar o número de telefone, enviamos o SMS com o código /v1/reseller/users/phones/prove_by_sms, o utilizador insere o código no seu site e você o transfere pelo método /v1/reseller/users/phones/confirm .

    2. A transferência de saldo do balanço do parceiro para o balanço da conta do utilizador é realizada com o método GET /v1/reseller/users/topup/ .

    3. A conexão de números virtuais é descrita detalhadamente aqui, basta adicionar ao método o parâmetro user_id com o identificador do utilizador para o qual a ação é realizada (Conexão do número, upload de documentos, etc).

    4. Com o método POST /v1/pbx/create/ pode-se criar a central virtual Zadarma para o seu utilizador.

    5. Adicione uma extensão da central a cada utilizador através do método POST /v1/pbx/internal/create/ .

    Ative a gravação de chamadas na nuvem na extensão através do método PUT /v1/pbx/internal/recording/ .

    6. Para a distribuição das chamadas entrantes na central existem os menus IVR e cenários (grupos de extensões que receberão as chamadas). Método /v1/pbx/create/ cria a central com os ajustes mínimos: 1 extensão e 1 cenário "sem pressionar" (que receberá as chamadas por padrão). Mais adiante, pode-se criar a quantidade de menus desejada e cenários dentro de cada menu.

    Os cenários também são necessários na gestão dinâmica do menu de voz caso deseje enviar as chamadas de forma simultânea para mais de uma extensão. Para adicionar um novo cenário usa-se o método /v1/pbx/ivr/scenario/create/ , para ver a lista /v1/pbx/ivr/scenario/ e para eliminar /v1/pbx/ivr/scenario/delete/ . Ao criar o cenário estabelece-se a lista de extensões a serem chamadas e o botão ao pressionar o qual se aplicará o cenário. Se planeja não estabelecer o botão nos ajustes mas usar o menu dinâmico, estabeleça o parâmetro push_button superior a 11.


    7. O arquivo de áudio para o menu IVR pode ser carregado para a central com o método POST /v1/pbx/ivr/sounds/upload . O tamanho dos arquivos de áudio - até 5 MB, formatos suportados - MP3, WAV


    8. Acesso à API. O utilizador pode usar a API para trabalhar com sua conta ou para a integração com sistemas de CRM ou serviços externos. Para isso, deve gerar as chaves. O acesso à API, o utilizador pode gerar as chaves na sua área pessoal por conta própria ou o parceiro pode obter essas chaves utilizando o método POST /v1/reseller/users/api_key/ com os parâmetros user_id - id do utilizador. A resposta conterá "key" e "secret" do utilizador para o acesso à sua API.

    Também pode-se estabelecer a URL para onde serão enviadas as notificações das chamadas da central do utilizador através do método POST /v1/pbx/callinfo/url/ e outra URL para outras notificações (Atualização de contatos, Calltracking, SMS e Análise de voz) usando o método POST /v1/pbx/webhooks/url/, os parâmetros são iguais para ambas as solicitações: url - link e user_id- id do utilizador.


    9. Para a gestão dinâmica do menu de voz e chamadas recebidas do cliente, pode-se usar a biblioteca PHP disponível no nosso Github ou implementar uma solução própria utilizando nosso sistema de notificações de chamadas, mais informações aqui.


    10. Para a integração com a central virtual com um CRM externo, as instruções estão disponíveis aqui.


    11. Para realizar chamadas do cliente a partir da sua interface web, utilize o widget WebRTC segundo as instruções. Também pode-se oferecer a conexão de qualquer aplicação ou equipamento com base no protocolo SIP. Os parâmetros para seu registro (utilizador, palavra-passe) podem ser obtidos utilizando os métodos /v1/pbx/internal/