cURL
curl --request GET \
--url https://api.cakto.com.br/public_api/withdrawals/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cakto.com.br/public_api/withdrawals/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.cakto.com.br/public_api/withdrawals/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cakto.com.br/public_api/withdrawals/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.cakto.com.br/public_api/withdrawals/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.get("https://api.cakto.com.br/public_api/withdrawals/")
.header("Authorization", "Bearer <token>")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.cakto.com.br/public_api/withdrawals/");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"id": "184620",
"amount": "150.00",
"fee": "3.67",
"amountReceived": "146.33",
"currency": "BRL",
"status": "pending",
"reason": null,
"createdAt": "2026-09-17T14:32:10.512340-03:00",
"paidAt": null
},
{
"id": "184455",
"amount": "150.00",
"fee": "3.67",
"amountReceived": "146.33",
"currency": "BRL",
"status": "rejected",
"reason": "Chave PIX não cadastrada",
"createdAt": "2026-09-17T14:32:10.512340-03:00",
"paidAt": null
}
]
}{
"detail": "Status inválido. Use um de: pending, approved, rejected, blocked."
}{
"detail": "As credenciais de autenticação não foram fornecidas."
}{
"detail": "Conta ainda não habilitada para recebimento. Conclua o cadastro no painel da Cakto para poder solicitar saques."
}Saques
Listar Saques
Histórico de saques da conta, do mais recente para o mais antigo.
GET
/
public_api
/
withdrawals
/
cURL
curl --request GET \
--url https://api.cakto.com.br/public_api/withdrawals/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cakto.com.br/public_api/withdrawals/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.cakto.com.br/public_api/withdrawals/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cakto.com.br/public_api/withdrawals/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://api.cakto.com.br/public_api/withdrawals/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyHttpResponse<String> response = Unirest.get("https://api.cakto.com.br/public_api/withdrawals/")
.header("Authorization", "Bearer <token>")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.cakto.com.br/public_api/withdrawals/");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"id": "184620",
"amount": "150.00",
"fee": "3.67",
"amountReceived": "146.33",
"currency": "BRL",
"status": "pending",
"reason": null,
"createdAt": "2026-09-17T14:32:10.512340-03:00",
"paidAt": null
},
{
"id": "184455",
"amount": "150.00",
"fee": "3.67",
"amountReceived": "146.33",
"currency": "BRL",
"status": "rejected",
"reason": "Chave PIX não cadastrada",
"createdAt": "2026-09-17T14:32:10.512340-03:00",
"paidAt": null
}
]
}{
"detail": "Status inválido. Use um de: pending, approved, rejected, blocked."
}{
"detail": "As credenciais de autenticação não foram fornecidas."
}{
"detail": "Conta ainda não habilitada para recebimento. Conclua o cadastro no painel da Cakto para poder solicitar saques."
}Escopo
read withdrawals_read
Filtros
| Parâmetro | |
|---|---|
status | pending, approved, rejected ou blocked |
createdAt__gte / createdAt__lte | janela pela data da solicitação (YYYY-MM-DD), inclusive nos dois lados |
page / limit | paginação, como em toda listagem do contrato. Default 10 por página, máximo 1000 |
count, next,
previous e results.
A listagem traz sempre a conta dona do token. Não existe parâmetro de produtor.
Exemplo
import requests
resposta = requests.get(
"https://api.cakto.com.br/public_api/withdrawals/",
params={"status": "pending", "limit": 50},
headers={"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsIn..."},
timeout=30,
)
resposta.raise_for_status()
pagina = resposta.json()
print(f"{pagina['count']} saques em análise")
for saque in pagina["results"]:
print(saque["createdAt"], saque["amount"])
const params = new URLSearchParams({ status: "pending", limit: "50" });
const resposta = await fetch(
`https://api.cakto.com.br/public_api/withdrawals/?${params}`,
{ headers: { Authorization: "Bearer eyJhbGciOiJIUzI1NiIsIn..." } },
);
if (!resposta.ok) throw new Error(`Cakto API error ${resposta.status}`);
const pagina = await resposta.json();
console.log(`${pagina.count} saques em análise`);
Boas práticas
- Concilie por
id, não por valor e data. Dois saques do mesmo valor no mesmo dia são indistinguíveis por qualquer outro critério. - Para saber o que ainda vai entrar, use a Agenda de Recebimentos; esta lista é sobre o que já saiu ou foi pedido.
Authorizations
Token de autenticação do tipo Bearer {access_token}, onde {access_token} é o token obtido no fluxo de autenticação.
Query Parameters
Solicitados a partir desta data (YYYY-MM-DD), inclusive.
Solicitados até esta data (YYYY-MM-DD), inclusive.
Itens por página. Default 10, máximo 1000.
Página a retornar. Default 1.
Filtra por estado do pedido.
Available options:
approved, blocked, pending, rejected Response
Saques da conta, do mais recente para o mais antigo.
Was this page helpful?