curl --request GET \
--url https://api.zouti.com.br/v1/orders \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.zouti.com.br/v1/orders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.zouti.com.br/v1/orders"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.zouti.com.br/v1/orders",
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;
}{
"object": "list",
"data": [
{
"object": "order",
"id": "ord_8k2m4q6s1v3x5z7b9d0f2h",
"role": "OWNER",
"status": "PAID",
"currency": "BRL",
"amount_total": 27730,
"amount_subtotal": 29700,
"amount_in_brl": 27730,
"created_at": "2026-10-14T13:05:22.418Z",
"paid_at": "2026-10-14T13:05:24.902Z",
"canceled_at": null,
"updated_at": "2026-10-14T13:05:25.117Z",
"customer": {
"name": "Maria Oliveira",
"email": "maria.oliveira@example.com",
"phone": "+5511999998888",
"document": "12345678909",
"document_type": "CPF"
},
"shipping_address": {
"line1": "Rua das Flores",
"line2": "123",
"line3": "Apto 45",
"neighborhood": "Centro",
"city": "São Paulo",
"state": "SP",
"country": "BR",
"postal_code": "01001000",
"full_name": "Maria Oliveira"
},
"payment": {
"method": "CREDIT_CARD",
"status": "PAID",
"installments": 1,
"amount": 27730,
"interest_amount": 0,
"discount_amount": 1970,
"fee": 1386,
"amount_refunded": 0,
"refunded_at": null,
"decline_code": null,
"decline_message": null,
"card": {
"brand": "MASTERCARD",
"last4": "4242"
}
},
"items": [
{
"product_id": "prod_3n7p1r5t9w2y4a6c8e0g1j",
"name": "Curso Completo de Fotografia",
"quantity": 1,
"unit_price": 19700,
"sub_total": 19700,
"currency": "BRL",
"offer_id": "prod_offer_5d1f3h7k9m2p4r6t8v0x2z",
"plan_id": null,
"order_bump_id": null
},
{
"product_id": "prod_6b8d0f2h4k6m8p0r2t4v6x",
"name": "Pacote de Presets",
"quantity": 1,
"unit_price": 10000,
"sub_total": 10000,
"currency": "BRL",
"offer_id": null,
"plan_id": null,
"order_bump_id": "ob_2c4e6g8j0l2n4q6s8u0w2y"
}
],
"offer": {
"id": "prod_offer_5d1f3h7k9m2p4r6t8v0x2z",
"name": "Oferta de lançamento"
},
"promocode": {
"code": "BEMVINDO10",
"description": "10% de desconto no curso",
"amount": -1970
},
"utm": {
"utm_source": "instagram",
"utm_medium": "social",
"utm_campaign": "lancamento-outubro",
"utm_term": null,
"utm_content": "stories"
},
"tracking": {
"sck": "parceiro-123",
"src": "bio"
},
"navigator": {
"user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 Instagram 350.0.0",
"referer": "https://www.instagram.com/",
"device": "Mobile",
"browser": "Instagram",
"origin": "instagram.com"
},
"metadata": {}
},
{
"object": "order",
"id": "ord_1q3s5u7w9y0a2c4e6g8i0k",
"role": "COPRODUCER",
"status": "PAID",
"currency": "BRL",
"amount_total": 9700,
"amount_subtotal": 9700,
"amount_in_brl": 9700,
"created_at": "2026-10-13T18:42:10.036Z",
"paid_at": "2026-10-13T18:43:51.274Z",
"canceled_at": null,
"updated_at": "2026-10-13T18:43:52.009Z",
"customer": {
"name": "Maria Oliveira",
"email": "maria.oliveira@example.com",
"phone": "+5511999998888",
"document": "12345678909",
"document_type": "CPF"
},
"shipping_address": null,
"payment": {
"method": "PIX",
"status": "PAID",
"installments": 1,
"amount": 9700,
"interest_amount": 0,
"discount_amount": 0,
"fee": 485,
"amount_refunded": 0,
"refunded_at": null,
"decline_code": null,
"decline_message": null,
"card": null
},
"items": [
{
"product_id": "prod_9x1z3b5d7f9h1k3m5p7r9t",
"name": "Mentoria em Grupo",
"quantity": 1,
"unit_price": 9700,
"sub_total": 9700,
"currency": "BRL",
"offer_id": "prod_offer_4w6y8a0c2e4g6j8l0n2q4s",
"plan_id": null,
"order_bump_id": null
}
],
"offer": {
"id": "prod_offer_4w6y8a0c2e4g6j8l0n2q4s",
"name": "Mentoria em Grupo"
},
"promocode": null,
"utm": null,
"tracking": null,
"navigator": null,
"metadata": {
"order_parent_id": "ord_7h9k1m3p5r7t9v1x3z5b7d"
}
}
],
"has_more": true,
"next_cursor": "eyJ2IjoxLCJyIjoib3JkZXJzIiwicyI6ImNyZWF0ZWRfYXRfZGVzYyJ9.k3X9vQ2mT7bR1wL5yN8pZg"
}Listar pedidos
Pedidos em que a conta é dona ou coprodutora. Pagine com cursor até has_more ser false.
sort=created_at_desc(padrão): do mais novo para o mais antigo (created_atdesc, depoisiddesc); um pedido criado durante a paginação não aparece nas páginas seguintes.sort=updated_at_asc: do menos para o mais recentemente atualizado (updated_atasc, depoisidasc), para sincronizar comupdated_gte. Um pedido atualizado durante a paginação volta a aparecer numa página seguinte (deduplique porid); nenhum é pulado. Pedidos comupdated_atnullvêm depois de todos os outros.
curl --request GET \
--url https://api.zouti.com.br/v1/orders \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.zouti.com.br/v1/orders', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.zouti.com.br/v1/orders"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.zouti.com.br/v1/orders",
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;
}{
"object": "list",
"data": [
{
"object": "order",
"id": "ord_8k2m4q6s1v3x5z7b9d0f2h",
"role": "OWNER",
"status": "PAID",
"currency": "BRL",
"amount_total": 27730,
"amount_subtotal": 29700,
"amount_in_brl": 27730,
"created_at": "2026-10-14T13:05:22.418Z",
"paid_at": "2026-10-14T13:05:24.902Z",
"canceled_at": null,
"updated_at": "2026-10-14T13:05:25.117Z",
"customer": {
"name": "Maria Oliveira",
"email": "maria.oliveira@example.com",
"phone": "+5511999998888",
"document": "12345678909",
"document_type": "CPF"
},
"shipping_address": {
"line1": "Rua das Flores",
"line2": "123",
"line3": "Apto 45",
"neighborhood": "Centro",
"city": "São Paulo",
"state": "SP",
"country": "BR",
"postal_code": "01001000",
"full_name": "Maria Oliveira"
},
"payment": {
"method": "CREDIT_CARD",
"status": "PAID",
"installments": 1,
"amount": 27730,
"interest_amount": 0,
"discount_amount": 1970,
"fee": 1386,
"amount_refunded": 0,
"refunded_at": null,
"decline_code": null,
"decline_message": null,
"card": {
"brand": "MASTERCARD",
"last4": "4242"
}
},
"items": [
{
"product_id": "prod_3n7p1r5t9w2y4a6c8e0g1j",
"name": "Curso Completo de Fotografia",
"quantity": 1,
"unit_price": 19700,
"sub_total": 19700,
"currency": "BRL",
"offer_id": "prod_offer_5d1f3h7k9m2p4r6t8v0x2z",
"plan_id": null,
"order_bump_id": null
},
{
"product_id": "prod_6b8d0f2h4k6m8p0r2t4v6x",
"name": "Pacote de Presets",
"quantity": 1,
"unit_price": 10000,
"sub_total": 10000,
"currency": "BRL",
"offer_id": null,
"plan_id": null,
"order_bump_id": "ob_2c4e6g8j0l2n4q6s8u0w2y"
}
],
"offer": {
"id": "prod_offer_5d1f3h7k9m2p4r6t8v0x2z",
"name": "Oferta de lançamento"
},
"promocode": {
"code": "BEMVINDO10",
"description": "10% de desconto no curso",
"amount": -1970
},
"utm": {
"utm_source": "instagram",
"utm_medium": "social",
"utm_campaign": "lancamento-outubro",
"utm_term": null,
"utm_content": "stories"
},
"tracking": {
"sck": "parceiro-123",
"src": "bio"
},
"navigator": {
"user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 Instagram 350.0.0",
"referer": "https://www.instagram.com/",
"device": "Mobile",
"browser": "Instagram",
"origin": "instagram.com"
},
"metadata": {}
},
{
"object": "order",
"id": "ord_1q3s5u7w9y0a2c4e6g8i0k",
"role": "COPRODUCER",
"status": "PAID",
"currency": "BRL",
"amount_total": 9700,
"amount_subtotal": 9700,
"amount_in_brl": 9700,
"created_at": "2026-10-13T18:42:10.036Z",
"paid_at": "2026-10-13T18:43:51.274Z",
"canceled_at": null,
"updated_at": "2026-10-13T18:43:52.009Z",
"customer": {
"name": "Maria Oliveira",
"email": "maria.oliveira@example.com",
"phone": "+5511999998888",
"document": "12345678909",
"document_type": "CPF"
},
"shipping_address": null,
"payment": {
"method": "PIX",
"status": "PAID",
"installments": 1,
"amount": 9700,
"interest_amount": 0,
"discount_amount": 0,
"fee": 485,
"amount_refunded": 0,
"refunded_at": null,
"decline_code": null,
"decline_message": null,
"card": null
},
"items": [
{
"product_id": "prod_9x1z3b5d7f9h1k3m5p7r9t",
"name": "Mentoria em Grupo",
"quantity": 1,
"unit_price": 9700,
"sub_total": 9700,
"currency": "BRL",
"offer_id": "prod_offer_4w6y8a0c2e4g6j8l0n2q4s",
"plan_id": null,
"order_bump_id": null
}
],
"offer": {
"id": "prod_offer_4w6y8a0c2e4g6j8l0n2q4s",
"name": "Mentoria em Grupo"
},
"promocode": null,
"utm": null,
"tracking": null,
"navigator": null,
"metadata": {
"order_parent_id": "ord_7h9k1m3p5r7t9v1x3z5b7d"
}
}
],
"has_more": true,
"next_cursor": "eyJ2IjoxLCJyIjoib3JkZXJzIiwicyI6ImNyZWF0ZWRfYXRfZGVzYyJ9.k3X9vQ2mT7bR1wL5yN8pZg"
}role diz qual é o caso. A
resposta é uma página de objetos pedido em data.
Filtros
- Filtros diferentes combinam com E.
status=PAID&payment_method=PIXtraz só os pedidos pagos e com PIX. - Valores de um mesmo filtro combinam com OU.
statusepayment_methodaceitam vários valores separados por vírgula (status=PAID,REFUNDED) ou o parâmetro repetido (status=PAID&status=REFUNDED); entra o pedido com qualquer um deles. payment_methodcompara compayment.methoddo pedido, ou seja, a forma do último pagamento.- Datas exigem hora e fuso.
2026-10-01T00:00:00-03:00e2026-10-01T03:00:00Zvalem;2026-10-01e2026-10-01T00:00:00recebem400comparamapontando o filtro. Uma data que não existe no calendário, como2026-02-30T00:00:00Z, também é recusada. _gteinclui,_ltexclui.created_gte=2026-10-01T00:00:00-03:00&created_lt=2026-11-01T00:00:00-03:00cobre exatamente outubro no horário de Brasília.updated_gteeupdated_ltnunca trazem pedido comupdated_atnull.- Parâmetro desconhecido é ignorado, sem erro. Um nome com erro de digitação (
stauts=PAID) não filtra nada e devolve todos os pedidos: confira o nome do parâmetro.
Ordem
sort | Ordem | Garantia durante a paginação |
|---|---|---|
created_at_desc (padrão) | Do mais novo para o mais antigo: created_at decrescente, depois id decrescente. | Não repete nem pula pedidos que já existiam na primeira página. Um pedido criado durante a paginação não aparece nas páginas seguintes. |
updated_at_asc | Do menos para o mais recentemente atualizado: updated_at crescente, depois id crescente. Pedidos com updated_at null vêm no fim. | Nenhum pedido é pulado. Um pedido atualizado durante a paginação volta a aparecer numa página seguinte, já com os dados novos: deduplique por id. |
created_at_desc para mostrar ou exportar pedidos e updated_at_asc com updated_gte para
sincronizar uma cópia local.
Paginação
Não há contagem total. Enquantohas_more for true, repita a chamada com o next_cursor
recebido em cursor e os mesmos filtros e sort. Veja Paginação.Autorizações
Chave de API da conta (zt_live_...), criada em Configurações → Chaves de API no dashboard.
Parâmetros de consulta
Itens por página, de 1 a 100.
1 <= x <= 100next_cursor da página anterior. Vale só para a mesma conta, os mesmos filtros e o mesmo
sort; com outros responde 400 (param: cursor).
512Lista separada por vírgula de AWAITING_PAYMENT, UNPAID, PAID, CANCELED,
SHIPPED, DELIVERED, REFUNDED, DISPUTED, TRIAL.
Lista separada por vírgula de CREDIT_CARD, BOLETO, PIX, MULTIPLE.
Pedidos criados a partir deste instante (inclusive). ISO 8601 com fuso.
Pedidos criados antes deste instante (exclusive). ISO 8601 com fuso.
Pedidos atualizados a partir deste instante (inclusive), pelo updated_at. ISO 8601 com
fuso. Pedido com updated_at null não entra.
Pedidos atualizados antes deste instante (exclusive), pelo updated_at. ISO 8601 com fuso.
Pedido com updated_at null não entra.
Ordem da lista. created_at_desc (padrão) ou updated_at_asc (sincronização por
atualização).
created_at_desc, updated_at_asc Resposta
Página de pedidos.
Envelope de toda lista pública. data traz os itens do recurso. Sem contagem total:
pagine até has_more ser false.
list Pedidos na ordem do parâmetro sort: com created_at_desc (padrão), do mais novo para o
mais antigo (created_at desc, depois id desc); com updated_at_asc, do menos para o
mais recentemente atualizado (updated_at asc, depois id asc), com os de updated_at
null no fim.
Show child attributes
Show child attributes
Verdadeiro quando há próxima página.
Cursor opaco da próxima página, para o parâmetro cursor. null quando has_more é false.

