# API Token

# Headers Obrigatórios

Header Tipo Obrigatório Descrição
authorization Authorization Bearer Token ✔️ A chave da sua API
accept application/json ✔️

# Buscar um token pelo o _id

Para buscar um token pelo o _id, será necessário fazer um requisição do tipo GET para a API da seguinte forma:

  GET https://auth.smarttalks.ai/v1/tokens/[ _id ]
Parâmetro Tipo Obrigatório Descrição
_id ObjectID Indentificador do token
curl -X GET https://auth.smarttalks.ai/v1/tokens/62b1e3233ea95a9f3e97f050  \
  -H 'Content-Type: application/json'
     'Authorization: "{{apiToken}}"'
Exemplo de retorno:

{
"_id": "63d29bcabe57d6b3d12e9f04",
"status": true,
"groupId": "624f20077714b7625f029fe3",
"accountId": "624f45692cd11e345180bfd1",
"userId": "63c5730cf6db65155be9d10c",
"label": "Finished create token service ",
"caption": "testing a creation token",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsYWJlbCI6IkZpbmlzaGVkIGNyZWF0ZSB0b2tlbiBzZXJ2aWNlIChXZWxsaW5ndG9uKSIsImNhcHRpb24iOiJGaW5pc2hlZCBjcmVhdGUgdG9rZW4gc2VydmljZSAoV2VsbGluZ3RvbikiLCJleHBpcmF0aW9uIjoiN2QiLCJ1c2VySWQiOiI2M2M1NzMwY2Y2ZGI2NTE1NWJlOWQxMGMiLCJpc1Rva2VuIjp0cnVlLCJpYXQiOjE2NzQ3NDY4MjYsImV4cCI6MTY3NTM1MTYyNn0.H3PNZYYa8pMm4LTnWLxzbtgMdgYNAGjCyIJzzf2Em30",
"expiration": "7d",
"permissionsGroups": [
"632b5d58517b87a35490b3ba"
],
"createdAt": "2023-01-26T15:27:06.853Z",
"updatedAt": "2023-01-26T15:27:06.853Z",
"id": 15,
"__v": 0
}


# Buscar tokens

Para buscar os seus tokens, será necessário fazer um requisição do tipo GET para a API da seguinte forma:

  GET https://auth.smarttalks.ai/v1/tokens
curl -X GET https://auth.smarttalks.ai/v1/tokens/\
  -H 'Content-Type: application/json'
     'Authorization: "{{apiToken}}"'
Exemplo de retorno:
[
{
"_id": "63d29bcabe57d6b3d12e9f04",
"status": true,
"groupId": "624f20077714b7625f029fe3",
"accountId": "624f45692cd11e345180bfd1",
"userId": "63c5730cf6db65155be9d10c",
"label": "Finished create token service ",
"caption": "testing a creation token",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsYWJlbCI6IkZpbmlzaGVkIGNyZWF0ZSB0b2tlbiBzZXJ2aWNlIChXZWxsaW5ndG9uKSIsImNhcHRpb24iOiJGaW5pc2hlZCBjcmVhdGUgdG9rZW4gc2VydmljZSAoV2VsbGluZ3RvbikiLCJleHBpcmF0aW9uIjoiN2QiLCJ1c2VySWQiOiI2M2M1NzMwY2Y2ZGI2NTE1NWJlOWQxMGMiLCJpc1Rva2VuIjp0cnVlLCJpYXQiOjE2NzQ3NDY4MjYsImV4cCI6MTY3NTM1MTYyNn0.H3PNZYYa8pMm4LTnWLxzbtgMdgYNAGjCyIJzzf2Em30",
"expiration": "7d",
"permissionsGroups": [
"632b5d58517b87a35490b3ba"
],
"createdAt": "2023-01-26T15:27:06.853Z",
"updatedAt": "2023-01-26T15:27:06.853Z",
"id": 15,
"__v": 0
}
]

# Criar um token

Para criar um token, será necessário fazer um requisição do tipo PUT da seguite forma:

  PUT https://auth.smarttalks.ai/v1/tokens/[userId]
  • userId: Na rota deve ser passado o id do usuário como parâmentro
Propriedades do corpo da requisição Tipo Obrigatório Padrão Descrição
label String ✔️ Rótulo do token
caption String ✔️ Descrição do token
expiration String '' Tempo de expiração do token ('2d', '7d', '2h' ),
curl -X PUT https://auth.smarttalks.ai/v1/tokens/63c5730cf6db65155be9d10c \
  -H 'Content-Type: application/json'
     'accept: application/json'\
     'Authorization: "{{apiToken}}"'
  -d '{ "label": "meu token", "caption": "a descrição do meu token", "expiration": "2d"}'
Exemplo de retorno:

{
"_id": "63d29bcabe57d6b3d12e9f04",
"status": true,
"groupId": "624f20077714b7625f029fe3",
"accountId": "624f45692cd11e345180bfd1",
"userId": "63c5730cf6db65155be9d10c",
"label": "meu token",
"caption": "a descrição do meu token",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsYWJlbCI6IkZpbmlzaGVkIGNyZWF0ZSB0b2tlbiBzZXJ2aWNlIChXZWxsaW5ndG9uKSIsImNhcHRpb24iOiJGaW5pc2hlZCBjcmVhdGUgdG9rZW4gc2VydmljZSAoV2VsbGluZ3RvbikiLCJleHBpcmF0aW9uIjoiN2QiLCJ1c2VySWQiOiI2M2M1NzMwY2Y2ZGI2NTE1NWJlOWQxMGMiLCJpc1Rva2VuIjp0cnVlLCJpYXQiOjE2NzQ3NDY4MjYsImV4cCI6MTY3NTM1MTYyNn0.H3PNZYYa8pMm4LTnWLxzbtgMdgYNAGjCyIJzzf2Em30",
"expiration": "2d",
"permissionsGroups": [
"632b5d58517b87a35490b3ba"
],
"createdAt": "2023-01-26T15:27:06.853Z",
"updatedAt": "2023-01-26T15:27:06.853Z",
"id": 15,
"__v": 0
}


# Editar token

Para editar um token, será necessário fazer um requisição do tipo PATCH da seguite forma:

  PATCH https://auth.smarttalks.ai/v1/tokens/[userId]
  • userId: Na rota deve ser passado o id do usuário como parâmentro
Propriedades do corpo da requisição Tipo Obrigatório Padrão Descrição
label String Rótulo do token
caption String Descrição do token
status Boolean Campo referente ao status do token (Ativado/Desativado),
curl -X PATCH https://auth.smarttalks.ai/v1/tokens/63c5730cf6db65155be9d10c \
  -H 'Content-Type: application/json'
     'accept: application/json'\
     'Authorization: "{{apiToken}}"'
  -d '{ "label": "meu token", "caption": "a descrição do meu token", "status": "true"}'
Exemplo de retorno:

{
"acknowledged": true,
"modifiedCount": 1,
"upsertedId": null,
"upsertedCount": 0,
"matchedCount": 1
}


# Excluir token

Para excluir um token, será necessário fazer um requisição do tipo DELETE da seguite forma:

  DELETE https://auth.smarttalks.ai/v1/tokens/[userId]
  • userId: Na rota deve ser passado o id do usuário como parâmentro
curl -X DELETE https://auth.smarttalks.ai/v1/tokens/63c5730cf6db65155be9d10c \
  -H 'Content-Type: application/json'
     'accept: application/json'\
     'Authorization: "{{apiToken}}"'
Exemplo de retorno:

{
"acknowledged": true,
"modifiedCount": 1,
"upsertedId": null,
"upsertedCount": 0,
"matchedCount": 1
}