A API da Yuno emprega o esquema de segurança ApiKey para autenticar solicitações HTTP. Essas chaves são credenciais de acesso compostas de caracteres alfanuméricos que autorizam o uso de recursos específicos de nossa API.
As solicitações precisam incluir cabeçalhos de autorização, como public-api-key, private-secret-key e X-idempotency-key. Você pode encontrar suas credenciais, public-api-key e private-secret-key, no desenvolvedores na seção Painel de controle do comerciante Yuno. Por outro lado, o X-idempotency-key é composto de até 64 caracteres. Verifique o Idempotência para obter informações adicionais.
Verifique a descrição da solicitação para obter os detalhes necessários dos cabeçalhos de autorização específicos.
O trecho de código a seguir mostra um exemplo de uma solicitação, incluindo os cabeçalhos de autenticação.
curl --request <Method> \
--url <URL> \
--header 'X-Idempotency-Key: <Your X-Idempotency-Key>' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'private-secret-key: <Your private-secret-key>' \
--header 'public-api-key: <Your public-api-key>'
Mantenha suas chaves segurasNão compartilhe suas chaves secretas de API em locais públicos, como Github, Bitbucket etc., pois isso abre espaço para chamadas de API mal-intencionadas.
Idempotência
Do ponto de vista de um serviço RESTful, idempotência é a capacidade de fazer várias solicitações e sempre receber a mesma resposta. Essa funcionalidade pode ser útil quando uma solicitação falha devido a uma falha de comunicação e não há uma resposta conclusiva. Você pode simplesmente tentar novamente uma solicitação usando a mesma chave de idempotência se houver um problema de conexão em uma chamada específica. Nossa API garante que a segunda chamada não falhará.
É essencial para a idempotência passar um nonce para a solicitação de API necessária. Portanto, ao fazer uma solicitação, o comerciante deve gerar um identificador exclusivo a ser enviado com a solicitação como um cabeçalho. Esse nonce também pode ser usado para identificar uma transação específica.
O X-Idempotency-Key de uma transação e o status retornado para fazer esse pedido são armazenados pelo sistema de idempotência da Yuno. Para garantir que as solicitações feitas dentro de 24 horas após o estabelecimento do primeiro pedido não sejam criadas duas vezes, salvamos esses dados independentemente do resultado dessa transação (capturada, autorizada ou com falha). Como resultado, as respostas às solicitações recebidas com a mesma chave consistirão em uma única transação.
Solicitações com a mesma chaveÉ fundamental enfatizar que a API gerará apenas uma solicitação, mesmo que duas solicitações sejam enviadas com a mesma chave no cabeçalho e conteúdos diferentes no corpo.
Em algumas circunstâncias, é possível que algumas solicitações sejam enviadas ao mesmo tempo. Como resultado, é possível que o aplicativo receba uma segunda solicitação antes de responder à primeira. Quando isso acontecer, a segunda solicitação será atendida com o código 409 - Conflito, indicando que há um chamado aberto para a mesma solicitação X-Idempotency-Key.
O comportamento da API Yuno não registrará as chaves em casos de falha de solicitação por qualquer motivo, além disso, a API fornece um tipo de erro 400 informando que há um problema com a solicitação, permitindo que o comerciante corrija a solicitação e a envie novamente. O mesmo vale para situações em que qualquer código de erro 500 é retornado.