Sistemas Externos


Autenticação de Sistemas Externos 

Visão Geral

Este método de autenticação utiliza credenciais baseadas em chaves de API via headers HTTP personalizados para validar o acesso de sistemas externos integrados à plataforma.

Quando utilizar:

  • Integrações de sistemas terceiros (parceiros, clientes corporativos, serviços externos)
  • Serviços que precisam acessar a API de forma programática

Tipo de Autenticação: Autenticação baseada em headers HTTP personalizados utilizando um par de credenciais (Secret Key + Client ID) para identificação e validação do sistema externo.

Credenciais Necessárias

Headers Obrigatórios

HeaderTipoObrigatórioDescrição
X-Secret-KeystringSimChave secreta única do sistema externo utilizada para autenticação
X-Client-IdstringSimIdentificador único do cliente/sistema externo cadastrado na plataforma

Parâmetros Adicionais: Não há parâmetros adicionais necessários. A autenticação é realizada exclusivamente através dos headers HTTP.

Exemplo de Requisição

Request HTTP

text

 

cURL - GET

bash

 

cURL - POST (com body)

bash

Validações Realizadas

O sistema realiza as seguintes validações na ordem apresentada:

  1. Presença dos Headers Obrigatórios: Verifica se os headers X-Secret-Key e X-Client-Id foram informados na requisição. Ambos devem estar presentes e não podem estar vazios ou conter apenas espaços em branco.
  2. Validação das Credenciais: Confirma se o par de credenciais (Secret Key + Client ID) corresponde a um sistema externo previamente cadastrado na plataforma. As credenciais são verificadas no banco de dados através do serviço de autenticação.
  3. Status do Sistema Externo: Valida se o sistema externo identificado está ativo (Active = true) e não foi marcado como removido (Deleted = false). Sistemas inativos ou removidos não podem acessar a API mesmo com credenciais válidas.

Respostas

Sucesso (200 OK)

Quando a autenticação é bem-sucedida, a requisição prossegue normalmente para o endpoint solicitado. Não há uma resposta específica de autenticação, pois o filtro apenas valida e injeta o contexto do sistema externo.

A resposta dependerá do endpoint acessado.

Erros Possíveis

401 Unauthorized - Headers Ausentes ou Vazios

Quando ocorre: Quando um ou ambos os headers obrigatórios (X-Secret-Key ou X-Client-Id) não foram informados, estão vazios ou contêm apenas espaços em branco.

json

 

401 Unauthorized - Credenciais Inválidas

Quando ocorre: Quando o par de credenciais fornecido (Secret Key + Client ID) não corresponde a nenhum sistema externo cadastrado na plataforma.

json

 

401 Unauthorized - Sistema Inativo ou Removido

Quando ocorre: Quando as credenciais são válidas, mas o sistema externo está marcado como inativo (Active = false) ou foi removido (Deleted = true).

json

Nota: Este método de autenticação retorna apenas erros 401 Unauthorized. Não são gerados erros 403 Forbidden ou 400 Bad Request nesta camada de autenticação.