Logo Watch Brasil
▷ Run in Postman

API Watch Brasil - Documentação

Sugestão de telas e integrações para sistemas de controles dedicado aos ISPs

  • ✓ Tela de exibição da url de redirect que o ISP precisa fornecer para a Watch criar as credenciais;
  • ✓ Importação do json com as credenciais do ISP de acesso a API da Watch;
  • ✓ Recuperar a lista de pacotes disponibilizado para o ISP;
  • ✓ Na tela do seu sistema, que possui a gestão da venda de plano, listar os pacotes disponíveis para permitir a venda;
  • ✓ Ao vender um plano para o usuário, é preciso inserir o pacote para o usuário pelo post da API /watch/v2/assinantes/insert;
  • ✓ Pode reenviar o e-mail de boas vindas com o login do usuário pelo POST da API /watch/v1/assinante/sendemailactivation;
  • ✓ Caso o usuário queira suspender o pagamento no mês de férias e pede para o ISP suspender a assinatura por um mês, é necessário inativar o plano pelo post /watch/v1/tickets/updatestatus;
  • ✓ Para reativar o plano do mês de férias é preciso ter um agendamento no seu sistema. Ative o plano pelo post /watch/v1/tickets/updatestatus depois do tempo pedido de suspensão;
  • ✓ Por fim, para cancelar o plano do usuário, o sistema deve enviar o cancelamento pelo post /watch/v1/tickets/delete;
  • ✓ Ainda existe uma função de consulta por usuário get /watch/v2/tickets/get;
  • ✓ Observando que o email é considerado a chave primária;

O sistema possui um campo para que possa armazenar um id de referência do usuário no seu sistema "pAssinanteIDIntegracao".

No retorno do insert do plano do usuário, se obtiver sucesso, ele retornará o campo "Ticket", que corresponde ao plano vendido;

Cada usuário pode comprar mais de um plano desde que o "Type" seja diferente;

Para o usuário comprar mais de um plano, é obrigatório: "Type":"basic"

Como autenticar para utilizar a API

O acesso a API é uma funcionalidade disponível apenas para clientes habilitados com a chave de acesso. Será entregue um arquivo JSON com o nome client_secret.json com o seguinte formato:

Plain Text

                                                        
{
    "pParams":
    {
        "client_id": "seuid",
        "project_id": "",
        "auth_uri": "https://apiweb.watch.tv.br/watch/v1/oauth/authenticate",
        "token_uri": "https://apiweb.watch.tv.br/oauth/token",
        "base_uri": "https://apiweb.watch.tv.br",
        "client_secret": "suasenha",
        "redirect_uri": "http://seudominio/metododeretorno",
    }
}

                            
                        
  • O client_id e client_secret são utilizados para autenticação e do usuário da API;
  • O redirect_url será chamado pela API Watch Brasil para confirmação e entrega de um code, que será posteriomente trocado por um access_token. Esta url deve permitir chamadas externas;
  • O auth_uri e token_uri serão os endereços da API para autenticação e requisição do token;
Fluxo API WEB
  • Para receber o access_token é necessário autenticar o client_id com a API. Você deve realizar uma request do tipo POST para o endereço auth_uri que está no seu client_secret.json.

Auth

POST

Auth_uri V1

https://apiweb.watch.tv.br/watch/v1/oauth/authenticate

Body

x-www-form-urlencoded

Parâmetros

client_id**

redirect_url**

approval_prompt**

uid**

Example Request

curl

                            
curl --location  --request POST 'https://apiweb.watch.tv.br/watch/v1/oauth/authenticate' \
--data--urlencode 'client_id=' \
--data-urlendcode 'redirect_url=' \
--data-urlencode 'approval_prompt='
--data-urlencode 'uid='
                            
                        

Token

POST

token_uri V1

https://apiweb.watch.tv.br/oauth/token

Body

x-www-form-urlencoded

Parâmetros

client_id**

client_secret**

code**

grant_type**

Example Request

curl

                            
curl --location  --request POST 'https://apiweb.watch.tv.br/oauth/token' \
--data--urlencode 'client_id=' \
--data-urlendcode 'client_secret=' \ 
--data-urlencode 'code='
--data-urlencode 'grant_type=password'
                            
                        

Buscar Pacote

GET

Get Pacote V1

https://apiweb.watch.tv.br/watch/v1/pacotes/get?pPacote=

HEADERS

Authorization

seutoken

Query Params

Parâmetros

pPacote**

Example Request

curl

                            
curl --location 'https://apiweb.watch.tv.br/watch/v1/pacotes/get?pPacote=' \
--header 'Authorization: seutoken' \
                            
                        

Buscar Ticket

GET

Get Ticket V2

https://apiweb.watch.tv.br/watch/v2/tickets/get?pPacote=&pAssinanteIDIntegracao=&pEmailUsuario=

HEADERS

Authorization

seutoken

Query Params

Parâmetros

pPacote**

pAssinanteIDIntegracao**

pEmailUsuario**

Example Request

curl

                            
curl --location 'https://apiweb.watch.tv.br/watch/v2/tickets/get?pPacote=&pAssinanteIDIntegracao=&pEmailUsuario=' \
--header 'Authorization: seutoken' \
                            
                        

Inserir Ticket

POST

Insert User V2

https://apiweb.watch.tv.br/watch/v2/assinantes/insert

HEADERS

Authorization

seutoken

Body

x-www-form-urlencoded

Parâmetros

pEmail**

pAssinanteIDIntegracao**

pPacote**

pPhone**

Example Request

curl

                            
curl --location  --request GET 'https://apiweb.watch.tv.br/watch/v2/assinantes/insert' \
--header 'Authorization: seutoken' \
--data-urlendcode 'pEmail=' \ 
--data-urlendcode 'pAssinanteIDIntegracao=' \ 
--data-urlendcode 'pPacote=' \
--data-urlendcode 'pPhone=' \
                            
                        

Deletar Ticket

POST

Delete User V2

https://apiweb.watch.tv.br/watch/v1/tickets/delete

HEADERS

Authorization

seutoken

Body

x-www-form-urlencoded

Parâmetros

pTicket**

Example Request

curl

                            
curl --location  --request GET 'https://apiweb.watch.tv.br/watch/v1/tickets/delete' \
--header 'Authorization: seutoken' \
--data-urlendcode 'pTicket=' \ 
                            
                        

Editar Telefone

POST

Editar telefone

https://apiweb.watch.tv.br/watch/v2/assinantes/editPhone

HEADERS

Authorization

seutoken

Body

x-www-form-urlencoded

Parâmetros

pPacote**

pEmail**

pPhone**

Example Request

curl

                            
curl --location  --request POST 'https://apiweb.watch.tv.br/watch/v2/assinantes/editPhone' \
--header 'Authorization: seutoken' \
--data-urlendcode 'pPacote=' \ 
--data-urlendcode 'pEmail=' \ 
--data-urlendcode 'pPhone=' \ 
                            
                        

Editar E-mail

POST

Editar E-mail

https://apiweb.watch.tv.br/watch/v2/assinantes/editEmail

HEADERS

Authorization

Bearer seutoken

Body

x-www-form-urlencoded

Parâmetros

pPacote**

pEmail**

pNewEmail**

Example Request

curl

                            
curl --location  --request POST 'https://apiweb.watch.tv.br/watch/v2/assinantes/editEmail' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Bearer seutoken' \
--data-urlendcode 'pPacote=ID Pacote' \
--data-urlendcode 'pEmail=emailAtual' \
--data-urlendcode 'pNewEmail=novoEmail' \
                            
                        

Reenviar E-mail

POST

Reenviar E-mail

https://apiweb.watch.tv.br/watch/v1/assinante/sendemailactivation

HEADERS

Authorization

seutoken

Body

x-www-form-urlencoded

Parâmetros

pTicket**

Example Request

curl

                            
curl --location  --request POST 'https://apiweb.watch.tv.br/watch/v1/assinante/sendemailactivation' \
--header 'Authorization: seutoken' \
--data-urlendcode 'pTicket=' \ 
                            
                        

Ativar/inativar Ticket

POST

Ativar/inativar Ticket

https://apiweb.watch.tv.br/watch/v1/tickets/updatestatus

HEADERS

Authorization

seutoken

Body

x-www-form-urlencoded

Parâmetros

pStatus**

true ou false

pTicket**

Example Request

curl

                            
curl --location  --request GET 'https://apiweb.watch.tv.br/watch/v1/tickets/updatestatus' \
--header 'Authorization: seutoken' \
--data-urlendcode 'pStatus=true ou false' \ 
--data-urlendcode 'pTicket=' \
                            
                        
/