Autenticação

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 seguras

Nã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.