Documentação da API DecoToolkit
Referência técnica para usar as ferramentas DecoToolkit de forma programática.
Precisa de um token de API? Crie um na sua conta.
Criar token de APIVisão geral
A API DecoToolkit permite integrar nossas ferramentas a automações, fluxos de trabalho e aplicações. Comece com as APIs de Gerador de QR Code, Limpeza de Texto e Formatação JSON, com mais ferramentas a caminho.
Acesso Antecipado
A API DecoToolkit está atualmente em acesso antecipado. O primeiro endpoint disponível é o Gerador de QR Code. Mais ferramentas serão adicionadas gradualmente conforme expandimos a plataforma.
URL Base
https://api.decotoolkit.comAutenticação
Endpoints protegidos exigem um token Bearer no cabeçalho Authorization.
Authorization: Bearer YOUR_API_TOKENCrie e gerencie seus tokens de API na sua conta. Cada plano define quantos tokens ativos você pode manter e quantos créditos mensais pode consumir.
Endpoints Disponíveis
/v1/tools/qr-codeGere um QR Code a partir de uma URL ou texto.
Corpo da Requisição
{
"data": "https://decotoolkit.com",
"size": 512,
"format": "svg"
}Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Obrigatório | O conteúdo a codificar. De 1 a 2000 caracteres. |
size | number | Opcional | Tamanho de saída em pixels. Mín. 128, máx. 2048. Padrão: 512. |
format | string | Opcional | Formato de saída. Atualmente apenas "svg" é suportado. |
Exemplo de Resposta
{
"success": true,
"tool": "qr-code",
"result": {
"format": "svg",
"content": "<svg>...</svg>"
},
"links": {
"open_tool": "https://decotoolkit.com/qr-code-generator?utm_source=api&utm_medium=automation&utm_campaign=qr_code",
"documentation": "https://decotoolkit.com/api/docs"
},
"usage": {
"credits_used": 1
}
}Exemplo cURL
curl -X POST https://api.decotoolkit.com/v1/tools/qr-code \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"data": "https://decotoolkit.com",
"size": 512,
"format": "svg"
}'/v1/tools/text-cleanerLimpe e normalize texto para fluxos de automação.
Corpo da Requisição
{
"text": " Hello world!\n\nThis is DecoToolkit. ",
"options": {
"trim": true,
"removeExtraSpaces": true,
"removeLineBreaks": false,
"removeDuplicateLines": false,
"removeEmptyLines": false
}
}Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
text | string | Obrigatório | O conteúdo de texto a limpar. |
options | object | Opcional | Opções de limpeza. Todas as opções têm padrão false, exceto trim e removeExtraSpaces. |
options.trim | boolean | Opcional | Remove espaços da saída final e de cada linha preservada. Padrão: true. |
options.removeExtraSpaces | boolean | Opcional | Substitui múltiplos espaços e tabulações por um único espaço. Padrão: true. |
options.removeLineBreaks | boolean | Opcional | Substitui quebras de linha por espaços. Padrão: false. |
options.removeDuplicateLines | boolean | Opcional | Remove linhas duplicadas preservando a primeira ocorrência. Padrão: false. |
options.removeEmptyLines | boolean | Opcional | Remove linhas em branco. Padrão: false. |
Exemplo de Resposta
{
"success": true,
"tool": "text-cleaner",
"result": {
"text": "Hello world!\n\nThis is DecoToolkit.",
"original_length": 41,
"cleaned_length": 35,
"changed": true
},
"links": {
"open_tool": "https://decotoolkit.com/text-cleaner?utm_source=api&utm_medium=automation&utm_campaign=text_cleaner",
"documentation": "https://decotoolkit.com/api/docs"
},
"usage": {
"credits_used": 1
}
}Exemplo cURL
curl -X POST "https://api.decotoolkit.com/v1/tools/text-cleaner" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"text": " Hello world!\n\nThis is DecoToolkit. ",
"options": {
"trim": true,
"removeExtraSpaces": true,
"removeLineBreaks": false,
"removeDuplicateLines": false,
"removeEmptyLines": false
}
}'Para n8n: Os usuários podem importar o comando cURL em um nó HTTP Request e substituir o valor de text por uma expressão dinâmica como {{$json.text}}.
/v1/tools/json-formatterValide, formate, minifique e ordene JSON dentro de fluxos de automação, scripts, n8n, Zapier, Make e futuros agentes de IA.
Corpo da Requisição
{
"json": "{\"name\":\"DecoToolkit\",\"type\":\"API\"}",
"options": {
"mode": "format",
"indent": 2,
"sortKeys": false
}
}Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
json | string | Obrigatório | O conteúdo JSON a processar. De 1 a 100.000 caracteres. |
options | object | Opcional | Opções de processamento. Todas as opções têm padrões. |
options.mode | enum | Opcional | Modo de processamento: "format" | "minify" | "validate". Padrão: "format". |
options.indent | number | Opcional | Nível de indentação (0–8). Aceita números e strings numéricas para compatibilidade com n8n/Zapier/Make. Padrão: 2. |
options.sortKeys | boolean | Opcional | Ordena recursivamente as chaves dos objetos em ordem alfabética (preserva a ordem dos arrays). Padrão: false. |
Exemplo de Resposta
{
"success": true,
"tool": "json-formatter",
"result": {
"json": "{\n \"name\": \"DecoToolkit\",\n \"type\": \"API\"\n}",
"valid": true,
"mode": "format",
"type": "object",
"original_length": 39,
"output_length": 49,
"changed": true
},
"links": {
"open_tool": "https://decotoolkit.com/json-formatter?utm_source=api&utm_medium=automation&utm_campaign=json_formatter",
"documentation": "https://decotoolkit.com/api/docs"
},
"usage": {
"credits_used": 1
}
}Exemplo cURL
curl -X POST "https://api.decotoolkit.com/v1/tools/json-formatter" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"json":"{\"name\":\"DecoToolkit\",\"type\":\"API\"}"}'Para n8n: Os usuários podem importar qualquer exemplo cURL em um nó HTTP Request. Após importar, substitua YOUR_API_TOKEN pelo seu token de API e, opcionalmente, substitua o valor de json por uma expressão dinâmica como {{$json.payload}}.
/v1/pdf/extractExtraia texto limpo, conteúdo por página, metadados e Markdown de arquivos PDF. Ideal para fluxos de IA, pipelines RAG, automações n8n e scripts de processamento de dados.
Corpo da Requisição
{
"fileUrl": "https://exemplo.com/documento.pdf",
"mode": "text",
"includeMetadata": true,
"cleanText": true,
"pageRange": { "from": 1, "to": 5 }
}Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
fileUrl | string | Opcional | URL pública do PDF a ser baixado e processado. Exatamente um dos campos fileUrl ou fileBase64 é obrigatório. |
fileBase64 | string | Opcional | Conteúdo do PDF codificado em base64. Exatamente um dos campos fileBase64 ou fileUrl é obrigatório. |
mode | enum | Obrigatório | "text" — texto completo como string. "pages" — texto dividido por página. "metadata" — apenas metadados e contagem de páginas (1 crédito). "markdown" — saída em Markdown básico. |
includeMetadata | boolean | Opcional | Incluir metadados do documento (título, autor, datas) na resposta. Padrão: true. |
cleanText | boolean | Opcional | Normalizar espaços, remover linhas em branco excessivas e aparar cada linha. Padrão: true. |
pageRange | object | Opcional | Processar apenas um subconjunto de páginas. { from: number, to: number } — ambos base 1. Reduz os créditos consumidos. |
Exemplo de Resposta
{
"success": true,
"mode": "text",
"document": {
"pageCount": 4,
"title": "Documento de Exemplo",
"author": "Nome do Autor",
"subject": null,
"creator": null,
"producer": null,
"createdAt": "2024-01-15T14:30:00.000Z",
"modifiedAt": null
},
"text": "Texto extraído completo de todas as páginas...",
"pages": null,
"markdown": null,
"usage": {
"credits": 4,
"pagesProcessed": 4
}
}Exemplo cURL
curl -X POST "https://api.decotoolkit.com/v1/pdf/extract" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileUrl": "https://exemplo.com/documento.pdf",
"mode": "text",
"cleanText": true
}'Para n8n: No n8n, use um nó HTTP Request com método POST e importe o exemplo cURL. Para fileUrl, conecte a saída de um nó anterior usando uma expressão como {{$json.pdfUrl}}. Créditos consumidos: 1 por página processada para os modos text/pages/markdown, 1 crédito para o modo metadata.
/v1/pdf/ocrExtraia texto de PDFs digitalizados ou baseados em imagem usando OCR. Use este endpoint quando /v1/pdf/extract não retornar texto — por exemplo, quando um documento foi criado digitalizando páginas físicas. O OCR processa cada página como uma imagem, por isso é mais lento e mais caro que a extração de texto comum. A precisão depende da qualidade da digitalização, da resolução e do idioma. Não extrai tabelas estruturadas nem dados de notas fiscais.
Corpo da Requisição
{
"fileUrl": "https://exemplo.com/documento-digitalizado.pdf",
"mode": "text",
"language": "por",
"cleanText": true,
"pageRange": { "from": 1, "to": 3 }
}Parâmetros
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
fileUrl | string | Opcional | URL pública do PDF a ser baixado e processado. Exatamente um dos campos fileUrl ou fileBase64 é obrigatório. |
fileBase64 | string | Opcional | Conteúdo do PDF codificado em Base64. Exatamente um dos campos fileBase64 ou fileUrl é obrigatório. |
mode | enum | Opcional | "text" — texto OCR completo como uma única string (padrão). "pages" — texto OCR dividido por página. "markdown" — saída Markdown básica com títulos de página. |
language | enum | Opcional | Dica de idioma para o OCR. Valores suportados: "eng" (inglês, padrão), "por" (português), "spa" (espanhol), "fra" (francês), "deu" (alemão). Use o idioma que corresponde ao documento para maior precisão. |
cleanText | boolean | Opcional | Normaliza espaços, remove linhas em branco excessivas e apara cada linha. Padrão: true. |
pageRange | object | Opcional | Processa apenas um subconjunto de páginas. { from: number, to: number } — ambas com base 1. Reduz os créditos usados. O OCR processa as páginas em série, então intervalos menores são concluídos mais rápido. |
Exemplo de Resposta
{
"success": true,
"mode": "text",
"document": {
"pageCount": 3,
"title": null
},
"text": "Texto OCR completo de todas as páginas...",
"pages": null,
"markdown": null,
"ocr": {
"provider": "local-tesseract",
"language": "por",
"averageConfidence": null
},
"usage": {
"credits": 15,
"pagesProcessed": 3
}
}Exemplo cURL
# OCR de um PDF digitalizado via URL
curl -X POST "https://api.decotoolkit.com/v1/pdf/ocr" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileUrl": "https://exemplo.com/documento-digitalizado.pdf",
"mode": "text",
"language": "por"
}'
# OCR com idioma português, apenas páginas 1-2
curl -X POST "https://api.decotoolkit.com/v1/pdf/ocr" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileUrl": "https://exemplo.com/relatorio.pdf",
"mode": "pages",
"language": "por",
"pageRange": { "from": 1, "to": 2 }
}'
# OCR de um PDF em base64, saída Markdown
curl -X POST "https://api.decotoolkit.com/v1/pdf/ocr" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fileBase64": "JVBERi0xLjQK...",
"mode": "markdown",
"language": "eng"
}'Para n8n: No n8n, use um nó HTTP Request com método POST e importe o exemplo cURL. Conecte a URL do PDF de um nó anterior com uma expressão como {{$json.pdfUrl}}. Créditos consumidos: 5 por página processada por padrão. O OCR é mais lento que a extração de texto comum — use pageRange para limitar as páginas e reduzir tanto o custo quanto o tempo de resposta.
Casos de Uso
Conecte o DecoToolkit às ferramentas que você já usa.
Fluxos n8n
Gere QR codes automaticamente dentro de fluxos n8n usando nós HTTP Request.
Marketing e Eventos
Crie QR codes para páginas de produtos, cardápios de restaurantes, eventos e campanhas de marketing em escala.
Scripts Personalizados
Integre o DecoToolkit em Python, Node.js ou qualquer linguagem capaz de fazer requisições HTTP.
Agentes de IA
Prepare fluxos automatizados para agentes de IA e ferramentas compatíveis com MCP.
Usar com n8n
A maneira mais rápida de conectar a API DecoToolkit ao n8n é importar um comando cURL em um nó HTTP Request.
Passos
- 1.Adicione um nó HTTP Request.
- 2.Clique em "Import cURL".
- 3.Cole o comando abaixo.
- 4.Substitua YOUR_API_TOKEN pelo seu token de API DecoToolkit.
- 5.Execute o nó.
Exemplo cURL
curl -X POST "https://api.decotoolkit.com/v1/tools/qr-code" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"data": "https://decotoolkit.com",
"size": 512,
"format": "svg"
}'Exemplo de entrada dinâmica
Após importar o comando cURL, o valor estático de data pode ser substituído por uma expressão do n8n:
{{$json.url}}Exemplo de corpo da requisição:
{
"data": "{{$json.url}}",
"size": 512,
"format": "svg"
}Erros, Limites e Uso
O que esperar das requisições autenticadas.
Autenticação
Todo endpoint protegido exige um token Bearer válido. Requisições sem token, ou com token inválido ou revogado, retornam 401 Unauthorized.
Limites do plano
Cada plano define uma cota mensal de créditos e um número máximo de tokens ativos. Quando seus créditos se esgotam, as requisições são rejeitadas até o próximo ciclo ou um upgrade de plano.
Erros de validação
Payloads inválidos retornam 400 Bad Request com um erro de validação descritivo explicando qual campo falhou e por quê.
Uso e créditos
Cada chamada bem-sucedida consome créditos. A quantidade gasta é retornada no campo usage.credits_used de cada resposta, para que você possa acompanhar o consumo.
Em Breve
Mais endpoints estão no roadmap.
- API de Conversão de Unidades
- API de Ferramentas de Imagem
- Suporte a Servidor MCP
Explore o DecoToolkit
FAQ
O que é a API DecoToolkit?
A API DecoToolkit permite que desenvolvedores e criadores de automações usem as ferramentas DecoToolkit de forma programática, a partir de scripts, fluxos de trabalho e agentes de IA.
Como autentico as requisições?
Todas as requisições à API exigem um token Bearer no cabeçalho Authorization. Você pode criar e gerenciar tokens na sua conta.
Quais ferramentas estão disponíveis agora?
Os endpoints disponíveis incluem Gerador de QR Code (POST /v1/tools/qr-code), Limpeza de Texto (POST /v1/tools/text-cleaner) e Formatação JSON (POST /v1/tools/json-formatter). Mais ferramentas serão adicionadas gradualmente.
Como o uso e os créditos são contabilizados?
Cada chamada bem-sucedida consome créditos da cota mensal do seu plano. A quantidade usada é retornada no campo usage.credits_used de cada resposta.
O DecoToolkit terá suporte a MCP?
O suporte a Servidor MCP está no nosso roadmap. Nosso objetivo é disponibilizar as ferramentas DecoToolkit para agentes de IA por meio de protocolos padrão.
Posso usar com n8n ou Zapier?
Sim. Qualquer ferramenta que suporte requisições HTTP — incluindo n8n, Zapier, Make e scripts personalizados — pode integrar-se com a API DecoToolkit.