Gerando um token de aplicação
Veja como gerar um token de aplicação para aplicações terceiras
O token de aplicação serve para acessos a API para integração com organizações, do qual é necessário para criar um fluxo utilizando no página para montar o documento usando templates. Para isso, as credenciais utilizadas para gerar este token devem ser uma conta do tipo PJ.
Verificando se a conta é PJ
Para saber se sua conta é PJ usando os endpoints da API, podemos fazer da seguinte maneira:
curl -X GET \
-H "Authorization: Bearer 41f7ff53c1dc5cf4f3db1f33e026b2908cdf88b4" \
"https://api-v1.assine.online/v1/user?filter[0][field]=id&filter[0][type]=eq&filter[0][value]=\$USER_ID"
GET https://api.assine.online/v1/user
Não altere o $USER_ID
da url, este converte internamente para o id do usuário correspondente ao token de acesso informado no header Authorization
.
Resposta:
{
"_links": {
"self": {
"href": "https://api-v1.assine.online/v1/user?filter%5B0%5D%5Bfield%5D=id&filter%5B0%5D%5Btype%5D=eq&filter%5B0%5D%5Bvalue%5D=$USER_ID&page=1"
},
"first": {
"href": "https://api-v1.assine.online/v1/user?filter%5B0%5D%5Bfield%5D=id&filter%5B0%5D%5Btype%5D=eq&filter%5B0%5D%5Bvalue%5D=$USER_ID"
},
"last": {
"href": "https://api-v1.assine.online/v1/user?filter%5B0%5D%5Bfield%5D=id&filter%5B0%5D%5Btype%5D=eq&filter%5B0%5D%5Bvalue%5D=$USER_ID&page=1"
}
},
"_embedded": {
"user": [
{
"id": 474,
"username": "[email protected]",
"status": "1",
"name": "Jhon Doe",
"email": "[email protected]",
"cellphone": "+5562991838359",
"document": "12312312312",
"country": "Brazil",
"state": "GO",
"city": "Goiânia",
"address": "Av 136, Ed. New York Square 19/20",
"zipCode": "74000000",
"dateCreated": {
"date": "2020-02-20 13:28:28.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"dateLastUpdated": {
"date": "2020-02-20 13:29:10.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"_embedded": {
"businessUnit": {
"id": 24,
"name": "Soluti Soluções em negocios inteligentes",
"document": "cnpj",
"status": null,
"country": "Brazil",
"state": "GO",
"city": "Goiânia",
"address": "Av 136, Ed. New York Square 19/20",
"zipCode": "74000000",
"_links": {
"self": {
"href": "https://api-v1.assine.online/v1/business-unit/24"
}
}
}
},
"_links": {
"self": {
"href": "https://api-v1.assine.online/v1/user/474"
}
}
}
]
},
"page_count": 1,
"page_size": 25,
"total_items": 1,
"page": 1
}
Caso exista configurações da sua organização na chave businessUnit
então esta conta está habilitada para gerar tokens de aplicação.
Gerando token de aplicação
Para gerar o token de aplicação, é necessário informar a senha da conta para validar a requisição, bem como uma data de validade para este token, lembrando que é de suma importância que manipule este token de forma segura para que não corra o risco de pessoas não autorizadas terem acesso a ele. Caso tenha suspeitas de que o token possa ter sido comprometido, revogue-o. Para gerar o token:
curl -X POST \
-H "Authorization: Bearer 41f7ff53c1dc5cf4f3db1f33e026b2908cdf88b4" \
-H "Content-Type: application/json" \
https://api-v1.assine.online/v1/access-token -d '
{
"password": "INFORME_SENHA",
"expires": "2021-01-01 23:59:00"
}
'
POST https://api-v1.assine.online/v1/access-token
Resposta:
{
"accessToken": "5499d5cac5d19926adcbcda7987c01854065554f",
"expires": {
"date": "2021-01-01 23:59:00.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"id": "5347?q=verify&sessionIndex=a18443cb74060f334d1530c01fa21f12c92b19e5",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html",
"title": "Token created",
"status": 201,
"detail": "Access Token data"
}
Guarde este token pois este é o único momento que ele será exibido, caso perca este token, é necessário que gere outro.
Listando token de aplicação
Para listar token de aplicação gerados:
curl -X GET \
-H "Authorization: Bearer 41f7ff53c1dc5cf4f3db1f33e026b2908cdf88b4" \
https://api-v1.assine.online/v1/access-token
GET https://api-v1.assine.online/v1/access-token
Resposta:
{
"_links": {
"self": {
"href": "https://api-v1.assine.online/access-token?page=1"
},
"first": {
"href": "https://api-v1.assine.online/access-token"
},
"last": {
"href": "https://api-v1.assine.online/access-token?page=1"
}
},
"_embedded": {
"access_token": [
{
"accessToken": "***** HIDDEN *****",
"expires": {
"date": "2020-02-21 13:29:31.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"id": "5320",
"scope": {},
"_embedded": {
"user": {
"id": 474,
"name": "Jhon Doe",
"username": "[email protected]",
"email": "[email protected]",
"_links": {
"self": {
"href": "https://api-v1.assine.online/user/474"
}
}
}
},
"_links": {
"self": {
"href": "https://api-v1.assine.online/access-token/5320"
}
}
},
{
"accessToken": "***** HIDDEN *****",
"expires": {
"date": "2021-01-01 23:59:00.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"id": "5347",
"scope": {},
"_embedded": {
"user": {
"id": 474,
"name": "Jhon Doe",
"username": "[email protected]",
"email": "[email protected]",
"_links": {
"self": {
"href": "https://api-v1.assine.online/user/474"
}
}
}
},
"_links": {
"self": {
"href": "https://api-v1.assine.online/access-token/5347"
}
}
}
]
},
"page_count": 1,
"page_size": 25,
"total_items": 3,
"page": 1
}
Veja que o primeiro token corresponde ao nosso próprio token de sessão do qual foi gerado quando fizemos login, e o segundo é o token de aplicação que pedimos para ser gerado.
Revogando tokens de aplicação
Para revogar um token de aplicação, pegue o id
do token do qual é exibido ao fazer a listagem dos tokens e execute:
curl -X DELETE \
-H "Authorization: Bearer 41f7ff53c1dc5cf4f3db1f33e026b2908cdf88b4" \
https://api-v1.assine.online/v1/access-token/5347
DELETE https://api-v1.assine.online/v1/access-token/:id
Deve ser retornado status 204
da requisição simbolizando que o token foi revogado.
Last updated
Was this helpful?