cURL
curl --request GET \
--url https://api.cakto.com.br/public_api/products/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cakto.com.br/public_api/products/"
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/products/', 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/products/",
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/products/")
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/products/")
.header("Authorization", "Bearer <token>")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.cakto.com.br/public_api/products/");
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": 123,
"next": "http://api.example.org/accounts/?page=4",
"previous": "http://api.example.org/accounts/?page=2",
"results": [
{
"id": "cd287b31-d4b7-4e94-858a-66e05ce2f4a2",
"name": "Product Name Example",
"image": "https://example-image-url.com/image.png",
"description": "Description example",
"price": 15,
"type": "unique",
"contentDeliveries": [
"cakto",
"telegram",
"discord"
],
"emailAccessLink": null,
"salesPage": "https://example-sales-page.com.br/product-page",
"status": "active",
"paymentMethods": [
"applepay",
"boleto",
"credit_card",
"googlepay",
"pix"
],
"category": {
"id": "0673d296-1802-45e0-bc93-112f7514dddb",
"name": "Animais e Plantas"
}
}
]
}{
"detail": "As credenciais de autenticação não foram fornecidas."
}Produtos
Listar Produtos
Lista produtos da sua conta com suporte a filtros, busca e paginação
GET
/
public_api
/
products
/
cURL
curl --request GET \
--url https://api.cakto.com.br/public_api/products/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.cakto.com.br/public_api/products/"
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/products/', 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/products/",
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/products/")
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/products/")
.header("Authorization", "Bearer <token>")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.cakto.com.br/public_api/products/");
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": 123,
"next": "http://api.example.org/accounts/?page=4",
"previous": "http://api.example.org/accounts/?page=2",
"results": [
{
"id": "cd287b31-d4b7-4e94-858a-66e05ce2f4a2",
"name": "Product Name Example",
"image": "https://example-image-url.com/image.png",
"description": "Description example",
"price": 15,
"type": "unique",
"contentDeliveries": [
"cakto",
"telegram",
"discord"
],
"emailAccessLink": null,
"salesPage": "https://example-sales-page.com.br/product-page",
"status": "active",
"paymentMethods": [
"applepay",
"boleto",
"credit_card",
"googlepay",
"pix"
],
"category": {
"id": "0673d296-1802-45e0-bc93-112f7514dddb",
"name": "Animais e Plantas"
}
}
]
}{
"detail": "As credenciais de autenticação não foram fornecidas."
}Escopo
read products
Filtros Disponíveis
Filtros podem ser combinados para refinar ainda mais os resultados.Exemplo:
?status=active&type=subscription&price__gte=99 - Filtra produtos ativos de assinatura com preço maior ou igual a R$ 99,00Filtros por Identificação
Filtros por Identificação
id- Id do produto (múltiplos valores separados por vírgula)name- Nome do produto (busca parcial)
?name=curso - Filtra produtos que contenham “curso” no nomeFiltros por Valor
Filtros por Valor
price- Preço do produto
Suporte a operadores de comparação (
__gt, __gte, __lt, __lte)?price__gte=99&price__lte=299 - Filtra produtos com preço entre R$ 99,00 e R$ 299,00Filtros por Datas
Filtros por Datas
createdAt- Data de criaçãoupdatedAt- Data de última atualização
Suporte a operadores de comparação (
__gt, __gte, __lt, __lte)Formato de data:
YYYY-MM-DD ou ISO 8601 YYYY-MM-DDTHH:MM:SS±hh:mm?createdAt__gte=2024-01-01&createdAt__lt=2024-02-01T23:59:59Z - Filtra produtos criados em janeiro de 2024Filtros por Status
Filtros por Status
status- Status do produto (active, blocked, deleted)
Suporte a múltiplos valores separados por vírgula.
?status=active,blocked - Filtra produtos ativos ou bloqueadosFiltros por Tipo
Filtros por Tipo
type- Tipo do produto (unique, subscription)
Suporte a múltiplos valores separados por vírgula.
?type=subscription - Filtra apenas produtos de assinaturaOutros Filtros
Outros Filtros
threeDsRetryEnabled- Habilita/desabilita retentativas de pagamento 3DS (true/false)displayedInShowcase- Produto exibido na vitrine de afiliados (true/false)
?threeDsRetryEnabled=true - Filtra produtos com retentativas 3DS habilitadasBusca
O endpoint suporta busca textual pelo parâmetrosearch nos seguintes campos:
name- Nome do produtoid- Id completo do produtoshort_id- Id curto do produto
?search=meu-produto - Busca pelo texto “meu-produto” nos campos de busca.
Qualquer produto onde um dos campos contenha o texto será retornado, (“meu-produto 2.0” e “Oferta B meu-produto” seriam retornados).
Ordenação
Você pode ordenar os resultados usando o parâmetroordering.
Campos suportados: name, price, type, status, createdAt, updatedAt
Use o prefixo
- para ordenação decrescente.?ordering=-createdAt - Ordena por data de criação (mais recentes primeiro)Authorizations
Token de autenticação do tipo Bearer {access_token}, onde {access_token} é o token obtido no fluxo de autenticação.
Query Parameters
Número de resultados a serem retornados por página.
Número da página a ser retornada.
Was this page helpful?