curl --request POST \
--url https://api.dooki.com.br/v2/{alias}/catalog/categories \
--header 'Content-Type: application/json' \
--header 'User-Secret-Key: <api-key>' \
--header 'User-Token: <api-key>' \
--data '
{
"active": true,
"name": "Categoria",
"parent_id": 123,
"home": true,
"featured": false,
"price_factor": 1,
"slug": "categoria",
"seo_title": "Título SEO para categoria",
"seo_keywords": "palavras, chave, SEO",
"seo_description": "Descrição SEO",
"external_url": "https://www.link.com",
"canonical_url": "https://www.link.com",
"order": 1,
"sort_by": "relevance",
"banners_ids": [
123
]
}
'import requests
url = "https://api.dooki.com.br/v2/{alias}/catalog/categories"
payload = {
"active": True,
"name": "Categoria",
"parent_id": 123,
"home": True,
"featured": False,
"price_factor": 1,
"slug": "categoria",
"seo_title": "Título SEO para categoria",
"seo_keywords": "palavras, chave, SEO",
"seo_description": "Descrição SEO",
"external_url": "https://www.link.com",
"canonical_url": "https://www.link.com",
"order": 1,
"sort_by": "relevance",
"banners_ids": [123]
}
headers = {
"User-Token": "<api-key>",
"User-Secret-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'User-Token': '<api-key>',
'User-Secret-Key': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
active: true,
name: 'Categoria',
parent_id: 123,
home: true,
featured: false,
price_factor: 1,
slug: 'categoria',
seo_title: 'Título SEO para categoria',
seo_keywords: 'palavras, chave, SEO',
seo_description: 'Descrição SEO',
external_url: 'https://www.link.com',
canonical_url: 'https://www.link.com',
order: 1,
sort_by: 'relevance',
banners_ids: [123]
})
};
fetch('https://api.dooki.com.br/v2/{alias}/catalog/categories', 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.dooki.com.br/v2/{alias}/catalog/categories",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'active' => true,
'name' => 'Categoria',
'parent_id' => 123,
'home' => true,
'featured' => false,
'price_factor' => 1,
'slug' => 'categoria',
'seo_title' => 'Título SEO para categoria',
'seo_keywords' => 'palavras, chave, SEO',
'seo_description' => 'Descrição SEO',
'external_url' => 'https://www.link.com',
'canonical_url' => 'https://www.link.com',
'order' => 1,
'sort_by' => 'relevance',
'banners_ids' => [
123
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"User-Secret-Key: <api-key>",
"User-Token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.dooki.com.br/v2/{alias}/catalog/categories"
payload := strings.NewReader("{\n \"active\": true,\n \"name\": \"Categoria\",\n \"parent_id\": 123,\n \"home\": true,\n \"featured\": false,\n \"price_factor\": 1,\n \"slug\": \"categoria\",\n \"seo_title\": \"Título SEO para categoria\",\n \"seo_keywords\": \"palavras, chave, SEO\",\n \"seo_description\": \"Descrição SEO\",\n \"external_url\": \"https://www.link.com\",\n \"canonical_url\": \"https://www.link.com\",\n \"order\": 1,\n \"sort_by\": \"relevance\",\n \"banners_ids\": [\n 123\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("User-Token", "<api-key>")
req.Header.Add("User-Secret-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.dooki.com.br/v2/{alias}/catalog/categories")
.header("User-Token", "<api-key>")
.header("User-Secret-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"active\": true,\n \"name\": \"Categoria\",\n \"parent_id\": 123,\n \"home\": true,\n \"featured\": false,\n \"price_factor\": 1,\n \"slug\": \"categoria\",\n \"seo_title\": \"Título SEO para categoria\",\n \"seo_keywords\": \"palavras, chave, SEO\",\n \"seo_description\": \"Descrição SEO\",\n \"external_url\": \"https://www.link.com\",\n \"canonical_url\": \"https://www.link.com\",\n \"order\": 1,\n \"sort_by\": \"relevance\",\n \"banners_ids\": [\n 123\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dooki.com.br/v2/{alias}/catalog/categories")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["User-Token"] = '<api-key>'
request["User-Secret-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"active\": true,\n \"name\": \"Categoria\",\n \"parent_id\": 123,\n \"home\": true,\n \"featured\": false,\n \"price_factor\": 1,\n \"slug\": \"categoria\",\n \"seo_title\": \"Título SEO para categoria\",\n \"seo_keywords\": \"palavras, chave, SEO\",\n \"seo_description\": \"Descrição SEO\",\n \"external_url\": \"https://www.link.com\",\n \"canonical_url\": \"https://www.link.com\",\n \"order\": 1,\n \"sort_by\": \"relevance\",\n \"banners_ids\": [\n 123\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"merchant_id": 123,
"parent_id": 123,
"active": true,
"featured": true,
"price_factor": 123,
"total_banners": 0,
"sort_by": "<string>",
"name": "<string>",
"slug": "<string>",
"url": "<string>",
"description": "<string>",
"external_url": "<string>",
"canonical_url": "<string>",
"order": 123
}Criar categoria
Cria uma nova categoria no catálogo
curl --request POST \
--url https://api.dooki.com.br/v2/{alias}/catalog/categories \
--header 'Content-Type: application/json' \
--header 'User-Secret-Key: <api-key>' \
--header 'User-Token: <api-key>' \
--data '
{
"active": true,
"name": "Categoria",
"parent_id": 123,
"home": true,
"featured": false,
"price_factor": 1,
"slug": "categoria",
"seo_title": "Título SEO para categoria",
"seo_keywords": "palavras, chave, SEO",
"seo_description": "Descrição SEO",
"external_url": "https://www.link.com",
"canonical_url": "https://www.link.com",
"order": 1,
"sort_by": "relevance",
"banners_ids": [
123
]
}
'import requests
url = "https://api.dooki.com.br/v2/{alias}/catalog/categories"
payload = {
"active": True,
"name": "Categoria",
"parent_id": 123,
"home": True,
"featured": False,
"price_factor": 1,
"slug": "categoria",
"seo_title": "Título SEO para categoria",
"seo_keywords": "palavras, chave, SEO",
"seo_description": "Descrição SEO",
"external_url": "https://www.link.com",
"canonical_url": "https://www.link.com",
"order": 1,
"sort_by": "relevance",
"banners_ids": [123]
}
headers = {
"User-Token": "<api-key>",
"User-Secret-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'User-Token': '<api-key>',
'User-Secret-Key': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
active: true,
name: 'Categoria',
parent_id: 123,
home: true,
featured: false,
price_factor: 1,
slug: 'categoria',
seo_title: 'Título SEO para categoria',
seo_keywords: 'palavras, chave, SEO',
seo_description: 'Descrição SEO',
external_url: 'https://www.link.com',
canonical_url: 'https://www.link.com',
order: 1,
sort_by: 'relevance',
banners_ids: [123]
})
};
fetch('https://api.dooki.com.br/v2/{alias}/catalog/categories', 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.dooki.com.br/v2/{alias}/catalog/categories",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'active' => true,
'name' => 'Categoria',
'parent_id' => 123,
'home' => true,
'featured' => false,
'price_factor' => 1,
'slug' => 'categoria',
'seo_title' => 'Título SEO para categoria',
'seo_keywords' => 'palavras, chave, SEO',
'seo_description' => 'Descrição SEO',
'external_url' => 'https://www.link.com',
'canonical_url' => 'https://www.link.com',
'order' => 1,
'sort_by' => 'relevance',
'banners_ids' => [
123
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"User-Secret-Key: <api-key>",
"User-Token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.dooki.com.br/v2/{alias}/catalog/categories"
payload := strings.NewReader("{\n \"active\": true,\n \"name\": \"Categoria\",\n \"parent_id\": 123,\n \"home\": true,\n \"featured\": false,\n \"price_factor\": 1,\n \"slug\": \"categoria\",\n \"seo_title\": \"Título SEO para categoria\",\n \"seo_keywords\": \"palavras, chave, SEO\",\n \"seo_description\": \"Descrição SEO\",\n \"external_url\": \"https://www.link.com\",\n \"canonical_url\": \"https://www.link.com\",\n \"order\": 1,\n \"sort_by\": \"relevance\",\n \"banners_ids\": [\n 123\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("User-Token", "<api-key>")
req.Header.Add("User-Secret-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.dooki.com.br/v2/{alias}/catalog/categories")
.header("User-Token", "<api-key>")
.header("User-Secret-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"active\": true,\n \"name\": \"Categoria\",\n \"parent_id\": 123,\n \"home\": true,\n \"featured\": false,\n \"price_factor\": 1,\n \"slug\": \"categoria\",\n \"seo_title\": \"Título SEO para categoria\",\n \"seo_keywords\": \"palavras, chave, SEO\",\n \"seo_description\": \"Descrição SEO\",\n \"external_url\": \"https://www.link.com\",\n \"canonical_url\": \"https://www.link.com\",\n \"order\": 1,\n \"sort_by\": \"relevance\",\n \"banners_ids\": [\n 123\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dooki.com.br/v2/{alias}/catalog/categories")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["User-Token"] = '<api-key>'
request["User-Secret-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"active\": true,\n \"name\": \"Categoria\",\n \"parent_id\": 123,\n \"home\": true,\n \"featured\": false,\n \"price_factor\": 1,\n \"slug\": \"categoria\",\n \"seo_title\": \"Título SEO para categoria\",\n \"seo_keywords\": \"palavras, chave, SEO\",\n \"seo_description\": \"Descrição SEO\",\n \"external_url\": \"https://www.link.com\",\n \"canonical_url\": \"https://www.link.com\",\n \"order\": 1,\n \"sort_by\": \"relevance\",\n \"banners_ids\": [\n 123\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"merchant_id": 123,
"parent_id": 123,
"active": true,
"featured": true,
"price_factor": 123,
"total_banners": 0,
"sort_by": "<string>",
"name": "<string>",
"slug": "<string>",
"url": "<string>",
"description": "<string>",
"external_url": "<string>",
"canonical_url": "<string>",
"order": 123
}Path Parameters
Alias da loja
Body
Representa uma requisição para criar categorias
Indica se a categoria fica ativa e visível na loja.
true
Nome da categoria.
"Categoria"
ID da categoria pai, informado para criar a categoria como subcategoria.
Indica se a categoria é exibida na página inicial da loja.
Indica se a categoria é destacada na navegação da loja.
false
Fator de multiplicação aplicado aos preços dos produtos da categoria.
1
Slug da categoria, usado na composição da URL; gerado a partir do nome quando não informado.
"categoria"
O valor é sanitizado e normalizado automaticamente.
"Título SEO para categoria"
Palavras-chave usadas para SEO da página da categoria.
"palavras, chave, SEO"
O valor é sanitizado e normalizado automaticamente.
"Descrição SEO"
URL externa para onde a categoria aponta, em vez da página da loja.
"https://www.link.com"
URL canônica da página da categoria, usada para SEO.
"https://www.link.com"
Ordem de exibição da categoria entre as categorias do mesmo nível.
1
Ordenação padrão dos produtos da categoria: relevance, highest_price, lowest_price, best_rating, name_asc, name_desc, newest, random ou best_sellers.
"relevance"
IDs dos banners vinculados à categoria.
Se presente na requisição, cria um redirect junto com a atualização. A presença do nó é o que sinaliza a intenção — o conteúdo descreve o redirect.
Show child attributes
Show child attributes
Response
Categoria criada com sucesso
Categoria do catálogo da loja.
ID da categoria.
ID da loja dona da categoria.
ID da categoria pai, quando a categoria for uma subcategoria.
Indica se a categoria está ativa e visível na loja.
Indica se a categoria é destacada na navegação da loja.
Fator de multiplicação aplicado aos preços dos produtos da categoria.
Quantidade de banners vinculados à categoria.
0
Ordenação padrão dos produtos da categoria: relevance, highest_price, lowest_price, best_rating, name_asc, name_desc, newest, random ou best_sellers.
Nome da categoria.
Slug da categoria, usado na composição da URL.
URL completa da página da categoria na loja.
Texto descritivo exibido na página da categoria.
URL externa para onde a categoria aponta, em vez da página da loja.
URL canônica da página da categoria, usada para SEO.
Ordem de exibição da categoria entre as categorias do mesmo nível.
Was this page helpful?