Autenticação
Integrações servidor-a-servidor com a Admin API se autenticam com uma aplicação cadastrada na loja. A aplicação tem um client_id e um client_secret, que geram o token de acesso pelo fluxo OAuth 2.0 client credentials.
1. Cadastre uma aplicação
-
No painel administrativo da loja, acesse Configurações › Aplicações:
https://{sualoja}.fbits.app/configuracoes/aplicacoesA página lista as aplicações já cadastradas na loja.
-
Clique em Nova aplicação e preencha:
Campo Descrição Nome Identifica a aplicação na listagem. Obrigatório. Client ID Sugerido a partir do nome. O prefixo da loja é fixo (ex.: minhaloja-integrador-de-promocoes). Obrigatório.Ativa Status da aplicação. Descrição Para que serve a integração. Até 200 caracteres. Perfis de acesso Um ou mais perfis que definem o que a aplicação pode fazer. Veja Perfis de acesso. -
Clique em Salvar. A janela Aplicação criada mostra o
client_ide oclient_secret. Copie o secret com Copiar secret.
Guarde o client secretArmazene o
client_secretem um cofre de credenciais. Depois, ele só pode ser consultado na tela da aplicação por quem tem a permissão ApplicationsSecrets.
Perfis de acesso
Os perfis de acesso são os mesmos que podem ser associados aos usuários do painel administrativo. Eles controlam quais operações a aplicação pode executar e, portanto, quais endpoints ela pode chamar. A aplicação só acessa os endpoints permitidos pelos seus perfis.
Chamadas a um endpoint sem a permissão exigida retornam 401 com code UNAUTHORIZED. As permissões exigidas por cada endpoint estão na descrição dele em Referências de API.
2. Gere o token de acesso
Com o client_id e o client_secret, solicite o token ao Wake SSO:
curl -X POST "https://wake-sso.fbits.net/realms/master/protocol/openid-connect/token" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id={client_id}" \
-d "client_secret={client_secret}"A resposta traz o access_token e o tempo de validade em segundos (expires_in). Reaproveite o token até ele expirar e então gere outro.
3. Chame a Admin API
Envie o token no header Authorization de toda requisição, junto com o header x-api-version:
curl "https://{loja}.commerce-wake.tech/api/promotions" \
-H "Authorization: Bearer {access_token}" \
-H "x-api-version: 2.0"| Header | Valor | Observação |
|---|---|---|
Authorization | Bearer {access_token} | Token gerado no passo 2. |
x-api-version | 2.0 | Obrigatório. Sem ele, a resposta é 400 com code API_VERSION_REQUIRED. |
Identificação da lojaNenhum endpoint pede a loja: ela é sempre a loja à qual a aplicação pertence. O autor das alterações registrado nos históricos também vem do token: para aplicações, é o
client_id.
Erros de autenticação
| HTTP | code | Causa |
|---|---|---|
401 | SESSION_INVALID | Token ausente, inválido ou expirado; aplicação não encontrada ou sem acesso à loja. |
401 | UNAUTHORIZED | Os perfis de acesso da aplicação não permitem o endpoint chamado. |
400 | API_VERSION_REQUIRED | Header x-api-version ausente ou vazio. |
Acesso de aplicaçõesO acesso de aplicações à Admin API precisa estar habilitado para a loja. Se o token for válido mas as chamadas retornarem
401comcodeSESSION_INVALID, solicite a habilitação ao suporte Wake.
Updated about 2 hours ago

