# Integração com a API do Websystems
# 1º passo: Adquirir um token de acesso
Para obter o token JWT é necessário realizar uma requisição no serviço de autenticação:
# Endpoint:
https://apievolution.escriba.com.br/oauth/
Operação: POST
Parametro | Valor |
---|---|
Username | publico |
Tenant | Código do Tenant |
Password | publico |
Adicionar ao Header o valor fixo:
Authorization: Basic RUlub3ZhLXB1YmxpYzoxNTY3NjI5YjY3Y2U0OTA4YTk1ODRmNTcxYjYzOWExZA==
# Exemplo:
Supondo que os dados de acesso sejam:
Tenant: 57
A requisição será feita dessa forma:
curl --request POST \
--url 'https://apievolution.escriba.com.br/oauth/token?username=publico&grant_type=password&tenant=57&password=publico&=' \
--header 'Authorization: Basic RUlub3ZhLXB1YmxpYzoxNTY3NjI5YjY3Y2U0OTA4YTk1ODRmNTcxYjYzOWExZA==' \
Retorno: Um JSON contendo o Access Token JWT que deverá ser utilizado nas requisições de consulta.
{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "bearer",
"refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"expires_in": 1799,
"scope": "trust read write",
"user_tenant": "57",
"user_id": 2,
"user_name": "publico",
"user_autorizacaoID": 2,
"user_fimLiberacao": null,
"user_ibge": 4106902,
"jti": "9965ascds-b76e-4991-8854-0149be2044bd"
}
Atenção
O token tem expiração de 30 minutos. Após a expiração é necessário solicitar um novo token através da URL anterior.
# 2º passo: Localize a URI de consulta e seus parâmetros na API do WebSystems
Navegue para a sessão Api de Integração. Lá você encontrará as URIs de consultas disponíveis para execução.
O endereço da API + seus parâmetros serão utilizados em conjunto nas pesquisas.
# Exemplo:
Caso você queira realizar uma chamada na api de Consulta de Protocolos de Registro pelo número do protocolo:
No swagger, localize e clique na opção Pesquisas relacionadas a protocolos de registro.
Você irá encontrar a API:
/v1/register/protocolos-registro/numero-protocolo-completo
. Anote o endereço dela e observe também que ela necessita do parâmetro "protocolo".
# 3º passo: Faça uma requisição de consulta na API
Agora vamos juntar tudo para que você realize a consulta dos dados da API selecionada.
Todas as consultas são feitas através de um único endereço por onde deve ser enviado como parâmetro a API que deseja consultar + os parâmetros de consulta que ela necessita.
# Endpoint
https://apievolution.escriba.com.br/e-websystems-router/v1/consultar/
Operação: GET
Parametro | Valor |
---|---|
URI | URL que você encontrou no passo 2 |
Nome do parâmetro 1 | Valor do parâmetro 1 |
Nome do parâmetro 2 | Valor do parâmetro 2 |
... | ... |
Deve conter no Header:
Authorization: Basic <TOKEN_JWT>
# Exemplo:
Utilizando os dados do nosso exemplo do passo 2:
URI: /v1/register/protocolos-registro/numero-protocolo-completo
Parâmetros: protocolo=12345
A requisição será feita dessa forma:
curl --request GET \
--url 'https://apievolution.escriba.com.br/e-websystems-router/v1/consultar?uri=%2Fv1%2Fregister%2Fprotocolos-registro%2Fnumero-protocolo-completo&protocolo=12345' \
--header 'authorization: Bearer <token_jwt>'
Retorno:
Um JSON conforme especificação na documentação do endpoint escolhido:
{
"aguardaReingresso": true,
"apresentante": "Nome Sobrenome",
"dataInicial": "2020-12-25",
"dataLimite": 15,
"diasDesdeDataLimite": "2020-12-25",
"disponibilidade": "Disponível",
"etapa": "Em Análise",
"etapaInternet": "Em Análise",
"etapaWeb": "Em Análise",
"exigencia": [
{
"dataEntregaEx": "2020-12-25",
"dataExigencia": "2020-12-25",
"numeroExigencia": 12345,
"textoExigencia": "string"
}
],
"natureza": "Compra e Venda",
"origem": "Nº Tabelionato de Notas de Porto Alegre",
"outorgado": "Nome Sobrenome",
"outorgante": "Nome Sobrenome",
"prevEntrega": "2020-12-25",
"protocolo": 12345,
"protocoloDeRecepcao": 12345,
"reingressar": true,
"servicosRelacionados": [
{
"chave": "1552 - Matrícula",
"descricao": "Averbação",
"livro": 2
}
],
"solicitante": "Nome Sobrenome",
"valorCustas": 36.33333
}