Somente no servidor
Uma chave de produção dentro de um aplicativo web ou móvel é uma chave pública: código distribuído é legível, e minificação não é criptografia. Chame a API a partir do seu servidor.
Developers
Como o endpoint de cotação é protegido hoje, como as chaves serão emitidas e as regras de manuseio que evitam o resultado clássico: uma chave de produção em um repositório público.
O endpoint de cotação está aberto e não requer chave. A escolha é defensável: uma cotação não lê nem escreve dados pessoais, e uma integração deve poder mostrar um preço antes de existir uma conta.
O que ainda não está implementado
Nenhum limite de taxa é aplicado neste endpoint hoje. Preferimos escrever isso a exibir uma tabela de cota que não é aplicada: no dia em que o limite existir, será publicado aqui com seus valores, seus cabeçalhos de resposta e o código retornado quando excedido.
Uma chave carrega seu ambiente em seu prefixo. Uma chave de teste que funcionasse em produção seria uma falha de design: torna possível a transferência real que você pensou estar simulando.
Authorization: Bearer sk_live_9f2c4b1e8a7d3f60c5b2a1e9d8c7b6a5| Prefixo | Ambiente | O que permite |
|---|---|---|
sk_test_ | Sandbox | Todas as operações, sobre dados simulados. Sem movimentação real de fundos, sem chamada a uma instituição de pagamento. As latências dos trilhos são simuladas para que seus testes enfrentem as mesmas esperas da produção. |
sk_live_ | Produção | Operações reais. Pedidos criados com esta chave movimentam dinheiro: ela nunca deve sair do seu servidor. |
whsec_ | Ambos | Segredo de assinatura de webhook. Ele nunca é usado para chamar a API: apenas verifica que o que você recebe realmente vem de nós. |
Nenhuma delas é original. Todas são quebradas regularmente, e é assim que chaves vazam.
Uma chave de produção dentro de um aplicativo web ou móvel é uma chave pública: código distribuído é legível, e minificação não é criptografia. Chame a API a partir do seu servidor.
Como parâmetro de consulta, uma chave acaba em logs de servidor, cabeçalhos de referência e histórico do navegador. O cabeçalho Authorization existe para isso.
Uma chave compartilhada por três serviços não pode ser revogada sem quebrar todos os três. Uma chave por uso torna a revogação indolor.
Uma chave enviada a um repositório por engano, mesmo privado, mesmo apagada depois, está comprometida: o histórico a mantém e rastreadores leem repositórios públicos em minutos.
Duas chaves válidas ao mesmo tempo permitem rotacionar sem janela de indisponibilidade.