> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.6mm.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.6mm.com/_mcp/server.

# Agent Java SDK

<h2 id="official-repository">
  Repositório oficial
</h2>

O repositório Java SDK é a fonte de verdade para SDK código-fonte, notas de lançamento, exemplos de utilização e detalhes de implementação:

[6mm-com/agent-java-sdk](https://github.com/6mm-com/agent-java-sdk)

<h2 id="runtime">
  Duração
</h2>

| Item                                 | Valor                    |
| ------------------------------------ | ------------------------ |
| Versão mínima Java                   | Java 8+                  |
| Ferramenta de construção recomendada | Maven 3.9+               |
| Grupo Maven                          | `com.sixmm.exchange.sdk` |
| Artefacto Maven                      | `agent`                  |
| Etiqueta de fonte documentada        | `v0.1.1`                 |

O repositório público do GitHub é alojamento de código-fonte, não um repositório de dependências do Maven. Construa e instale o código-fonte marcado localmente ou publique o artefacto aprovado no repositório privado Maven da sua organização antes de o usar em compilações de equipa.

<h2 id="typical-backend-responsibilities">
  Responsabilidades típicas de backend
</h2>

* Validar a sessão do utilizador parceiro.
* Mapear o utilizador parceiro para agentUserId.
* Ligar chamadas antes da primeira negociação ou fluxos de transferência.
* Chamar createEntryUrl para um serviço único de SSOcompleta.
* Chamar createEmbedToken para Trading Widget modo partner-token.
* Verificar webhooks de transferência e processá-los idempotentemente.

<h2 id="security-and-operational-rules">
  Regras de segurança e operacionais
</h2>

* Armazenar `apiSecret` apenas num gestor de segredos backend ou numa variável de ambiente protegido.
* Manter o tempo do servidor sincronizado porque os pedidos assinados contêm carimbos temporais.
* Tratar `agentOrderNo` como uma chave de idempotência duradoura e mantê-la globalmente única.
* Armazenar `platformUserId` como uma cadeia e persistir a sua relação com `agentUserId`.
* Consultar a transferência original antes de tentar novamente após um timeout ou resultado de rede incerto.

<h2 id="next-steps">
  Próximos passos
</h2>

* [Java Quick Start](/pt-PT/sdk/agent-sdk/java/quick-start): instale a fonte marcada e inicialize `AgentClient`.
* [Create Embed Token](/pt-PT/sdk/agent-sdk/java/embed-token): emitir credenciais de curta duração para Trading Widget.
* [Segredos e Assinatura](/pt-PT/sdk/security/secrets-signing): compreenda HMAC automática de assinatura e gestão de segredos.
* [Webhooks & Idempotency](/pt-PT/sdk/security/webhooks-idempotency): verificar callbacks e evitar processamento duplicado.