Skip to main content

URL Base

A API da Kiwify é construída com base nos princípios REST. Exigimos HTTPS em todas as requisições para melhorar a segurança, integridade e privacidade dos dados. A API não suporta requisições HTTP. Todas as requisições devem usar a seguinte URL base:

Autenticação

Implementamos autenticação OAuth em nossas rotas de API, o que significa que você precisará gerar um bearer token com a api_key usando a rota /oauth/token. Para gerar o token, será necessário o client_secret. Observação: Guarde o client_secret em um local seguro, pois ele pode ser usado para chamar todos os nossos outros endpoints da API. Ele expira em 96 horas. Não o gere toda vez antes de chamar um endpoint.

Onde obter o client_secret

  1. Crie uma nova API Key na dashboard.
Clique em Apps > API > Criar API Key api
  1. Copie o client_secret.
api

Endpoints

Para realizar a autenticação em todos os endpoints, você precisará adicionar um Authorization header e o conteúdo da header será Bearer XXXXXXX onde XXXXXXX é o OAuth token gerado. Você precisará também passar o account_id, que você pode copiar na dashboard, no mesmo local que gerou a API Key.

Códigos de Resposta HTTP

A API da Kiwify utiliza o padrão de códigos de resposta HTTP para indicar o sucesso ou falha de cada requisição. No geral, códigos no intervalo 2xx demonstram sucesso, códigos 4xx indicam que ocorreu um erro no lado do cliente e códigos 5xx sugerem um problema na infraestrutura da API da Kiwify.

Rate limit

O número máximo de requisições que um usuário pode realizar é de 100 chamadas por minuto. Ao ultrapassar esse limite, você receberá uma mensagem de erro com status code 429.

Idempotência

Operações financeiras exigem o cabeçalho Idempotency-Key: um UUID gerado por você que identifica a solicitação. Hoje ele é obrigatório em Realizar um saque.
Gere um UUID novo para cada saque que pretende criar e reenvie esse mesmo valor, inalterado, em qualquer nova tentativa da mesma solicitação. Se uma requisição falhar por timeout ou erro de rede, você não tem como saber se ela chegou até nós — repeti-la com a mesma chave é seguro, pois devolve o saque original em vez de criar um segundo. O UUID enviado é o id do saque. Requisições sem este cabeçalho, ou com um valor que não seja um UUID válido, são recusadas com 400 e error: validation_error.

FAQ

Todas as datas serão passadas no formato ISO 8601: 2020-07-10 15:00:00.000
As respostas da API seguem o formato JSON.
Sim, os usuários estão limitados a 100 chamadas por minuto. Se esse limite for ultrapassado, a API retornará uma mensagem de erro com status code 429.
Se o reenvio usar o mesmo Idempotency-Key, nenhum saque novo é criado: você recebe de volta o saque original. É por isso que a chave deve ser gerada uma vez por saque e reutilizada em todas as tentativas daquela mesma solicitação — gerar uma chave nova a cada tentativa cria saques duplicados.
Entre em contato através do e-mail infoprodutores@kiwify.com.br.