Ir para o conteúdo

Scopes e Permissões

O acesso a cada domínio é controlado por App Roles atribuídas ao client_id do parceiro no App Registration da API (Azure Entra ID).

Roles disponíveis

Role Domínio Endpoint
productivity.write Produtividade POST /v1/integrations/{partnerId}/produtividade
planting.write Plantio POST /v1/integrations/{partnerId}/plantio
pests.write Pragas POST /v1/integrations/{partnerId}/pragas
order.write Ordem de Serviço POST /v1/integrations/{partnerId}/os
ctt.write CTT POST /v1/integrations/{partnerId}/ctt
climate.write Clima POST /v1/integrations/{partnerId}/clima
sat.write SAT POST /v1/integrations/{partnerId}/sat

Atribuição de roles

As roles são atribuídas pela equipe CTC no momento do cadastro do parceiro. Cada client_id recebe apenas as roles correspondentes aos domínios contratados.


Como verificar suas roles

Faça o decode do seu access_token (ex: jwt.ms) e verifique o claim roles:

{
  "aud": "api://{api_client_id}",
  "appid": "{seu_client_id}",
  "roles": [
    "productivity.write",
    "planting.write"
  ],
  ...
}

Erros de permissão

Se o token não contiver a role exigida pelo endpoint, o APIM retorna:

HTTP/1.1 401 Unauthorized

{
  "statusCode": 401,
  "message": "Token inválido ou expirado."
}

Warning

A mensagem é genérica por segurança — não expõe qual role está faltando. Verifique o claim roles do seu token para diagnosticar.