{"openapi":"3.1.0","info":{"title":"API Convertajá","version":"1.3.0","description":"API REST para converter, comprimir e editar PDF, imagens, áudio e vídeo, etiquetas ZPL, assinatura eletrônica de documentos (envelopes) e dados brasileiros (CNPJ, CEP, boleto, Pix, validação de documentos). Cobrança em créditos, em reais. Erros: { \"error\": { \"code\", \"message\", \"request_id\" } } com code estável e mensagem em português. POST que cobram aceitam Idempotency-Key.","contact":{"name":"Convertajá","url":"https://convertaja.com.br/api"}},"servers":[{"url":"https://convertaja.com.br"}],"security":[{"bearerAuth":[]},{"apiKeyHeader":[]}],"tags":[{"name":"Conta"},{"name":"Ferramentas de arquivo"},{"name":"Tarefas"},{"name":"Dados"},{"name":"Webhooks"},{"name":"Assinatura eletrônica"},{"name":"Central de Expedição"}],"paths":{"/v1/me":{"get":{"operationId":"me","summary":"Conta, plano e créditos","description":"Mostra a conta dona da chave, o plano, os créditos (franquia, pacotes, saldo) e os limites.","tags":["Conta"],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Me"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/usage":{"get":{"operationId":"usage","summary":"Uso por dia","description":"Créditos e chamadas por dia e por endpoint. Padrão: últimos 30 dias. Máximo de 366 dias.","tags":["Conta"],"parameters":[{"name":"from","in":"query","required":false,"description":"Data inicial AAAA-MM-DD.","schema":{"type":"string"}},{"name":"to","in":"query","required":false,"description":"Data final AAAA-MM-DD (padrão: hoje).","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Usage"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/tools":{"get":{"operationId":"tools_list","summary":"Listar ferramentas","description":"Todas as ferramentas de arquivo com extensões aceitas, opções em JSON Schema e custo em créditos.","tags":["Ferramentas de arquivo"],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"type":"object","properties":{"object":{"type":"string"},"count":{"type":"integer"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Tool"}}}}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/tools/{toolId}":{"get":{"operationId":"tools_get","summary":"Detalhes de uma ferramenta","description":"Uma ferramenta, com o JSON Schema das opções.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"toolId","in":"path","required":true,"description":"Id da ferramenta (ex.: unir-pdf).","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Tool"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"tools_run","summary":"Criar tarefa","description":"Envia os arquivos e cria a tarefa. Responde 202 com a tarefa; use ?wait=true para esperar até 60 s pelo resultado.\n\nCusto: 1, 5 ou 10 por arquivo crédito(s).","tags":["Ferramentas de arquivo"],"parameters":[{"name":"toolId","in":"path","required":true,"description":"Id da ferramenta.","schema":{"type":"string"}},{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":false,"content":{"multipart/form-data":{"schema":{"type":"object"}},"application/json":{"schema":{"type":"object"}}}}}},"/v1/jobs":{"get":{"operationId":"jobs_list","summary":"Listar tarefas","description":"Tarefas da conta, da mais recente para a mais antiga (guardadas por 90 dias; os arquivos, por 1 hora). Pagine com next_cursor em starting_after.","tags":["Tarefas"],"parameters":[{"name":"limit","in":"query","required":false,"description":"1 a 100 (padrão 20).","schema":{"type":"string"}},{"name":"starting_after","in":"query","required":false,"description":"Id da última tarefa da página anterior (next_cursor). cursor também é aceito.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"queued, running, done ou error (vários separados por vírgula).","schema":{"type":"string"}},{"name":"tool","in":"query","required":false,"description":"Id da ferramenta (ex.: comprimir-pdf).","schema":{"type":"string"}},{"name":"created_after","in":"query","required":false,"description":"Criadas depois de (ISO 8601 ou Unix em segundos; data sem hora = 00:00 de Brasília).","schema":{"type":"string"}},{"name":"created_before","in":"query","required":false,"description":"Criadas antes de (mesmo formato).","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JobList"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/jobs/{id}":{"get":{"operationId":"jobs_get","summary":"Consultar tarefa","description":"Situação, progresso e arquivos gerados. Só a conta que criou a tarefa consegue consultar. Depois de 1 hora a tarefa continua consultável (90 dias), com files_available: false.","tags":["Tarefas"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id da tarefa.","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/jobs/{id}/delete":{"post":{"operationId":"jobs_delete","summary":"Apagar arquivos da tarefa","description":"Apaga os arquivos gerados antes de 1 hora (LGPD, dados sensíveis). A tarefa continua listada, com files_available: false. Também aceito como DELETE /v1/jobs/{id}. Tarefa em andamento: 409 job_running (não há cancelamento no meio).","tags":["Tarefas"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id da tarefa.","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/jobs/{id}/files/{index}":{"get":{"operationId":"jobs_file","summary":"Baixar um arquivo","description":"Baixa o arquivo gerado na posição index.","tags":["Tarefas"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id da tarefa.","schema":{"type":"string"}},{"name":"index","in":"path","required":true,"description":"Posição do arquivo (0, 1, …).","schema":{"type":"string"}}],"responses":{"200":{"description":"Arquivo.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/octet-stream":{"schema":{"type":"string","contentEncoding":"binary"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/jobs/{id}/download":{"get":{"operationId":"jobs_download","summary":"Baixar tudo","description":"Baixa o arquivo gerado ou, se houver vários, um ZIP com todos.","tags":["Tarefas"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id da tarefa.","schema":{"type":"string"}}],"responses":{"200":{"description":"Arquivo.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/octet-stream":{"schema":{"type":"string","contentEncoding":"binary"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/cnpj/{cnpj}":{"get":{"operationId":"cnpj","summary":"Consultar CNPJ","description":"Razão social, situação, endereço, CNAEs e Simples Nacional, da base pública da Receita Federal. Aceita o CNPJ alfanumérico. Sem quadro de sócios (LGPD). Grátis: vale só o limite de requisições por minuto.","tags":["Dados"],"parameters":[{"name":"cnpj","in":"path","required":true,"description":"CNPJ com ou sem pontuação (numérico ou alfanumérico).","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Company"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/cep/{cep}":{"get":{"operationId":"cep","summary":"Consultar CEP","description":"Logradouro, bairro, cidade e UF. Fonte: BrasilAPI, com ViaCEP de reserva. Grátis: vale só o limite de requisições por minuto.","tags":["Dados"],"parameters":[{"name":"cep","in":"path","required":true,"description":"CEP com 8 números.","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Address"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/validate":{"post":{"operationId":"validate","summary":"Validar documentos","description":"Confere os dígitos verificadores de CPF, CNPJ (inclusive alfanumérico), CNH, PIS/PASEP, título de eleitor, RENAVAM e CNS. Sem tipo, deduz pelo tamanho.\n\nCusto: 1 (lote: 1 a cada 50) crédito(s).","tags":["Dados"],"parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationResult"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","description":"Tipo do documento (opcional).","enum":["cpf","cnpj","cnh","pis","titulo","renavam","cns"]},"value":{"type":"string","description":"Um documento."},"values":{"type":"array","maxItems":1000,"items":{"type":"string"},"description":"Lista de documentos (até 1.000)."}}},"example":{"type":"cnpj","value":"12.ABC.345/01DE-35"}}}}}},"/v1/boleto/parse":{"post":{"operationId":"boleto","summary":"Ler boleto","description":"Linha digitável (47 bancário, 48 arrecadação) ou código de barras (44) → confere os DVs, converte e mostra banco, valor e vencimento (com o novo fator de vencimento de 22/02/2025).\n\nCusto: 1 crédito(s).","tags":["Dados"],"parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Boleto"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["code"],"properties":{"code":{"type":"string","description":"Linha digitável ou código de barras, com ou sem pontuação."}}},"example":{"code":"23793.38128 86000.782713 36950.000632 1 10000000012345"}}}}}},"/v1/pix/brcode":{"post":{"operationId":"pix","summary":"Pix copia e cola (BR Code)","description":"Gera o BR Code estático (padrão do Banco Central) e, conforme format, o QR Code em SVG, PNG ou uma folha em PDF. format: json (só o copia e cola), svg, png, both (padrão: SVG e PNG) ou pdf (folha 10×15 cm com QR, nome, cidade, valor e copia e cola, em pdf_base64).\n\nCusto: 1 crédito(s).","tags":["Dados"],"parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pix"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["key","name","city"],"properties":{"key":{"type":"string","description":"Chave Pix: CPF, CNPJ, e-mail, telefone +55 ou aleatória."},"name":{"type":"string","description":"Nome de quem recebe (até 25).","maxLength":25},"city":{"type":"string","description":"Cidade (até 15).","maxLength":15},"amount":{"type":"number","description":"Valor em reais (opcional)."},"txid":{"type":"string","description":"Identificador (até 25 letras/números). Padrão ***."},"description":{"type":"string","description":"Mensagem (opcional)."},"format":{"type":"string","description":"json, svg, png, both (padrão) ou pdf.","enum":["json","svg","png","both","pdf"],"default":"both"},"module_size":{"type":"integer","description":"Pixels por módulo do QR (1–40).","default":8},"margin":{"type":"integer","description":"Margem em módulos (0–20).","default":4},"color":{"type":"string","description":"#RRGGBB","default":"#000000"},"background":{"type":"string","description":"#RRGGBB ou transparent","default":"#ffffff"}}},"example":{"key":"123e4567-e12b-12d1-a456-426655440000","name":"Fulano de Tal","city":"BRASILIA","amount":10.5,"format":"png"}}}}}},"/v1/qrcode":{"post":{"operationId":"qrcode","summary":"Gerar QR Code","description":"QR Code de qualquer texto ou link, em SVG e/ou PNG.\n\nCusto: 1 crédito(s).","tags":["Dados"],"parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Image"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"Conteúdo (até 2.900 caracteres)."},"format":{"type":"string","description":"svg (padrão), png ou both.","enum":["svg","png","both"],"default":"svg"},"ecc":{"type":"string","description":"Correção de erros.","enum":["L","M","Q","H"],"default":"M"},"module_size":{"type":"integer","description":"Pixels por módulo (1–40).","default":8},"margin":{"type":"integer","description":"Margem em módulos (0–20).","default":4},"color":{"type":"string","description":"#RRGGBB","default":"#000000"},"background":{"type":"string","description":"#RRGGBB ou transparent","default":"#ffffff"}}},"example":{"text":"https://convertaja.com.br","format":"svg"}}}}}},"/v1/barcode":{"post":{"operationId":"barcode","summary":"Gerar código de barras","description":"Code 128, EAN-13, EAN-8, UPC-A, Code 39, ITF (boleto), ITF-14, DataMatrix e QR, em SVG e/ou PNG. EAN/UPC sem o último dígito recebem o DV calculado.\n\nCusto: 1 crédito(s).","tags":["Dados"],"parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Image"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["type","value"],"properties":{"type":{"type":"string","description":"Tipo.","enum":["code128","ean13","ean8","upca","code39","itf","itf14","datamatrix","qr"]},"value":{"type":"string","description":"Conteúdo."},"format":{"type":"string","description":"svg (padrão), png ou both.","enum":["svg","png","both"],"default":"svg"},"module_size":{"type":"number","description":"Largura do módulo em px."},"height":{"type":"number","description":"Altura das barras em px (10–600).","default":60},"show_text":{"type":"boolean","description":"Texto legível embaixo.","default":true}}},"example":{"type":"ean13","value":"789123456789","format":"png"}}}}}},"/v1/webhooks/test":{"post":{"operationId":"webhook_test","summary":"Testar webhook","description":"Envia um evento webhook.test assinado (mesmo formato e cabeçalhos dos eventos reais) para a URL e devolve o que o receptor respondeu. Uma tentativa, sem novas tentativas. Use para conferir a verificação da assinatura antes de ir para produção.","tags":["Webhooks"],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookTest"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL HTTPS pública do seu receptor.","format":"uri"}}},"example":{"url":"https://seusite.com.br/webhooks/convertaja"}}}}}},"/v1/esign/envelopes":{"post":{"operationId":"esign_create","summary":"Criar envelope","description":"Sobe o PDF, define signatários e campos e (por padrão) envia os convites por e-mail. Envie multipart/form-data com \"file\" (PDF até 20 MB e 100 páginas) e \"data\" (JSON com os campos abaixo), ou JSON com \"file\": { \"base64\": \"…\", \"name\": \"…\" } ou { \"url\": \"https://…\" } mais os mesmos campos. Responde 201 com o envelope. Além dos créditos, vale a cota mensal de documentos do plano do site (Grátis 3, Pro 30, Empresas 200); acima dela, 402 esign_quota.\n\nCusto: 20 quando enviado (rascunho: 0) crédito(s).","tags":["Assinatura eletrônica"],"parameters":[{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"201":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"Dígito verificador do boleto não confere.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","required":["file","data"],"properties":{"file":{"type":"string","contentEncoding":"binary","description":"PDF (até 20 MB, 100 páginas)."},"data":{"type":"string","description":"JSON com name, signers, fields, message, expires_at, sequential, send, return_links, webhook_url."}}}},"application/json":{"schema":{"type":"object","required":["file","signers"],"properties":{"file":{"oneOf":[{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}},{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}}]},"name":{"type":"string","description":"Nome do documento (padrão: nome do arquivo)."},"signers":{"type":"array","minItems":1,"maxItems":10,"items":{"type":"object","required":["name","email"],"properties":{"name":{"type":"string","description":"Nome completo."},"email":{"type":"string","description":"E-mail (recebe o convite e o código).","format":"email"},"role":{"type":"string","description":"Papel.","enum":["sign","approve","witness"],"default":"sign"},"cpf":{"type":"string","description":"CPF esperado (opcional): a pessoa precisa digitar o mesmo."},"ask_cpf":{"type":"boolean","description":"Pede o CPF ao assinar.","default":false},"rubrica_all":{"type":"boolean","description":"Rubrica em todas as páginas.","default":false}}},"description":"Até 10 pessoas."},"fields":{"type":"array","maxItems":400,"items":{"type":"object","required":["signer","type","page","x","y","w","h"],"properties":{"signer":{"type":"integer","description":"Índice do signatário em signers (0, 1, …)."},"type":{"type":"string","description":"Tipo.","enum":["signature","initials","date","name","cpf"]},"page":{"type":"integer","description":"Página (0 = primeira)."},"x":{"type":"number","description":"Esquerda, fração da largura (0–1)."},"y":{"type":"number","description":"Topo, fração da altura (0–1)."},"w":{"type":"number","description":"Largura (0,01–1)."},"h":{"type":"number","description":"Altura (0,005–1)."}}},"description":"Onde cada pessoa assina (coordenadas relativas, origem no canto superior esquerdo)."},"message":{"type":"string","description":"Mensagem no convite (até 1.000 caracteres)."},"expires_at":{"type":"string","description":"Prazo: ISO 8601 ou AAAA-MM-DD (padrão 30 dias, máximo 90)."},"sequential":{"type":"boolean","description":"Um de cada vez, na ordem de signers.","default":true},"send":{"type":"boolean","description":"Envia na hora (cobra 20 créditos). false = rascunho grátis.","default":true},"return_links":{"type":"boolean","description":"Devolve signers[].sign_url (para enviar o link você mesmo). Em rascunho (send: false) os links ainda não existem: sign_url vem null e o pedido fica guardado; os links saem na resposta de POST …/send.","default":false},"webhook_url":{"type":"string","description":"URL HTTPS que recebe esign.envelope.completed | refused | expired | canceled.","format":"uri"}}},"example":{"file":{"url":"https://seusite.com.br/contratos/123.pdf"},"name":"Contrato de prestação de serviços","message":"Olá! Segue o contrato para assinatura.","signers":[{"name":"Ana Souza","email":"ana@cliente.com.br","role":"sign"},{"name":"Bruno Lima","email":"bruno@empresa.com.br","role":"witness"}],"fields":[{"signer":0,"type":"signature","page":0,"x":0.1,"y":0.75,"w":0.3,"h":0.07},{"signer":1,"type":"signature","page":0,"x":0.55,"y":0.75,"w":0.3,"h":0.07}],"webhook_url":"https://seusite.com.br/webhooks/convertaja"}}}}},"get":{"operationId":"esign_list","summary":"Listar envelopes","description":"Envelopes da conta (criados pela API ou pelo site), do mais recente para o mais antigo. Pagine com next_cursor (ou offset).","tags":["Assinatura eletrônica"],"parameters":[{"name":"limit","in":"query","required":false,"description":"1 a 100 (padrão 20).","schema":{"type":"string"}},{"name":"cursor","in":"query","required":false,"description":"next_cursor da página anterior.","schema":{"type":"string"}},{"name":"offset","in":"query","required":false,"description":"Alternativa ao cursor: pula N envelopes.","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"draft, pending, completed, refused, expired ou canceled.","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvelopeList"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/esign/envelopes/{id}":{"get":{"operationId":"esign_get","summary":"Consultar envelope","description":"Situação do envelope e de cada signatário (convidado, abriu, confirmou o código, assinou ou recusou, com horários). Com ?events=true, inclui a trilha de auditoria.","tags":["Assinatura eletrônica"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do envelope (XXXX-XXXX-XXXX-XXXX).","schema":{"type":"string"}},{"name":"events","in":"query","required":false,"description":"true para incluir os eventos (IP, porta, dispositivo, horário).","schema":{"type":"string"}},{"name":"links","in":"query","required":false,"description":"true para incluir signers[].sign_url (links pessoais de assinatura; só depois do envio).","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/esign/envelopes/{id}/send":{"post":{"operationId":"esign_send","summary":"Enviar rascunho","description":"Envia um envelope criado com send: false. Cobra 20 créditos (estornados se o envio falhar) e conta na cota mensal do plano. Devolve signers[].sign_url se o rascunho foi criado com return_links: true ou se você mandar {\"return_links\": true} (ou ?return_links=true).\n\nCusto: 20 crédito(s).","tags":["Assinatura eletrônica"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do envelope (XXXX-XXXX-XXXX-XXXX).","schema":{"type":"string"}},{"name":"return_links","in":"query","required":false,"description":"true para devolver os links de assinatura (também aceito no corpo JSON).","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/esign/envelopes/{id}/remind":{"post":{"operationId":"esign_remind","summary":"Lembrar quem falta","description":"Reenvia o convite para quem está com a vez e ainda não assinou. No máximo um lembrete a cada 30 minutos por pessoa (429 reminder_too_soon).","tags":["Assinatura eletrônica"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do envelope (XXXX-XXXX-XXXX-XXXX).","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvelopeReminder"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/esign/envelopes/{id}/cancel":{"post":{"operationId":"esign_cancel","summary":"Cancelar envelope","description":"Cancela um rascunho ou um envelope aguardando assinaturas e avisa quem estava com a vez. Os créditos do envio não são devolvidos.","tags":["Assinatura eletrônica"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do envelope (XXXX-XXXX-XXXX-XXXX).","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/esign/envelopes/{id}/delete":{"post":{"operationId":"esign_delete","summary":"Excluir envelope","description":"Apaga o envelope, os arquivos e a trilha de auditoria, em qualquer situação. Também aceito como DELETE /v1/esign/envelopes/{id}.","tags":["Assinatura eletrônica"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do envelope (XXXX-XXXX-XXXX-XXXX).","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvelopeDeleted"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/esign/envelopes/{id}/files/final":{"get":{"operationId":"esign_file_final","summary":"Baixar PDF assinado","description":"PDF final com as assinaturas aplicadas e o relatório de assinaturas anexado (application/pdf). Só depois que todos assinam (409 envelope_not_completed antes disso). Fica guardado 90 dias.","tags":["Assinatura eletrônica"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do envelope (XXXX-XXXX-XXXX-XXXX).","schema":{"type":"string"}}],"responses":{"200":{"description":"Arquivo.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/pdf":{"schema":{"type":"string","contentEncoding":"binary"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/esign/envelopes/{id}/files/audit":{"get":{"operationId":"esign_file_audit","summary":"Baixar relatório de assinaturas","description":"Só o relatório de assinaturas (evidências: IP/porta, dispositivo, horários, hash SHA-256 e QR Code de verificação), em PDF.","tags":["Assinatura eletrônica"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do envelope (XXXX-XXXX-XXXX-XXXX).","schema":{"type":"string"}}],"responses":{"200":{"description":"Arquivo.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/pdf":{"schema":{"type":"string","contentEncoding":"binary"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/expedicao/lotes":{"post":{"operationId":"expedicao_create","summary":"Criar lote de expedição","description":"Recebe os PDFs das etiquetas de envio (Mercado Livre, Shopee, Amazon, Correios, Magalu…) em \"labels\" e, opcionalmente, os XMLs (ou um ZIP) das NF-e em \"xmls\". Recorta as etiquetas em 10×15, associa cada etiqueta à nota (pelo número da NF, rastreio ou destinatário) e gera os PDFs prontos para a térmica, intercalando etiqueta e DANFE simplificado quando intercalar=true (padrão quando há XMLs). Custa 2 créditos por pedido novo no mês: o mesmo rastreio processado de novo no mesmo mês não é cobrado. Sem saldo para o lote inteiro, nada é processado (402). Use ?wait=true para esperar até 60 s.\n\nCusto: 2 por pedido novo no mês crédito(s).","tags":["Central de Expedição"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Lote"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"Dígito verificador do boleto não confere.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","required":["labels"],"properties":{"labels":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"PDFs das etiquetas."},"xmls":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"XMLs das NF-e ou ZIP com os XMLs (opcional)."},"intercalar":{"type":"string","enum":["true","false"],"description":"Intercalar etiqueta e DANFE simplificado."}}}}}}}},"/v1/expedicao/lotes/{id}":{"get":{"operationId":"expedicao_get","summary":"Consultar lote","description":"Situação, resumo (pedidos por marketplace e transportadora, etiquetas sem nota) e os PDFs gerados. Histórico por 30 dias; arquivos por 7 dias.","tags":["Central de Expedição"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do lote.","schema":{"type":"string"}}],"responses":{"200":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Lote"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/expedicao/lotes/{id}/files/{name}":{"get":{"operationId":"expedicao_file","summary":"Baixar um PDF do lote","description":"Baixa um dos PDFs do lote (nome em outputs[].name).","tags":["Central de Expedição"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do lote.","schema":{"type":"string"}},{"name":"name","in":"path","required":true,"description":"Nome do arquivo.","schema":{"type":"string"}}],"responses":{"200":{"description":"Arquivo.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/pdf":{"schema":{"type":"string","contentEncoding":"binary"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/expedicao/lotes/{id}/download":{"get":{"operationId":"expedicao_download","summary":"Baixar o lote (ZIP)","description":"ZIP com todos os PDFs do lote. 409 lote_not_ready antes de terminar.","tags":["Central de Expedição"],"parameters":[{"name":"id","in":"path","required":true,"description":"Id do lote.","schema":{"type":"string"}}],"responses":{"200":{"description":"Arquivo.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/zip":{"schema":{"type":"string","contentEncoding":"binary"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Recurso inexistente, expirado ou de outra conta.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/tools/unir-pdf":{"post":{"operationId":"run_unir_pdf","summary":"Unir PDF","description":"Junte vários PDFs (e imagens) em um único arquivo, na ordem que quiser.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf, jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":2},"options":{"type":"object","additionalProperties":false,"properties":{"filename":{"title":"Nome do arquivo final","type":"string","maxLength":1000,"examples":["documento-unido"]}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/comprimir-pdf":{"post":{"operationId":"run_comprimir_pdf","summary":"Comprimir PDF","description":"Diminua o tamanho do PDF mantendo uma boa qualidade.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"level":{"title":"Compressão","type":"string","enum":["low","medium","high"],"x-enum-labels":{"low":"Leve","medium":"Recomendada","high":"Máxima"},"default":"medium"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/comprimir-pdf-tamanho":{"post":{"operationId":"run_comprimir_pdf_tamanho","summary":"Comprimir PDF para tamanho exato","description":"Deixe o PDF abaixo de 1, 2, 5 ou 10 MB para enviar em portais e formulários.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"target":{"title":"Tamanho máximo de cada arquivo","type":"string","enum":["1","2","3","5","10","custom"],"x-enum-labels":{"1":"1 MB","2":"2 MB","3":"3 MB","5":"5 MB","10":"10 MB","custom":"Outro"},"default":"2"},"custom":{"title":"Tamanho máximo (MB)","x-conditional":true,"type":"string","maxLength":1000,"examples":["4,5"]}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/dividir-pdf":{"post":{"operationId":"run_dividir_pdf","summary":"Dividir PDF","description":"Separe cada página ou intervalos de páginas em arquivos diferentes.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1,"maxItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"mode":{"title":"Como dividir","type":"string","enum":["all","ranges"],"x-enum-labels":{"all":"Cada página","ranges":"Por intervalos"},"default":"all"},"ranges":{"title":"Intervalos (um arquivo por grupo)","x-conditional":true,"type":"string","maxLength":1000,"examples":["Ex.: 1-3, 5, 8-"]}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/extrair-paginas":{"post":{"operationId":"run_extrair_paginas","summary":"Extrair páginas","description":"Crie um novo PDF só com as páginas que você escolher.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1,"maxItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"ranges":{"title":"Páginas para manter","type":"string","maxLength":1000,"examples":["Ex.: 1-3, 5, 8-"]}},"required":["ranges"]},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/remover-paginas":{"post":{"operationId":"run_remover_paginas","summary":"Remover páginas","description":"Apague páginas indesejadas de um PDF.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1,"maxItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"ranges":{"title":"Páginas para remover","type":"string","maxLength":1000,"examples":["Ex.: 1-3, 5, 8-"]}},"required":["ranges"]},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/girar-pdf":{"post":{"operationId":"run_girar_pdf","summary":"Girar PDF","description":"Gire todas as páginas ou só algumas, em 90°, 180° ou 270°.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"angle":{"title":"Ângulo","type":"string","enum":["90","180","270"],"x-enum-labels":{"90":"90° ↻","180":"180°","270":"90° ↺"},"default":"90"},"ranges":{"title":"Páginas (vazio = todas)","type":"string","maxLength":1000,"examples":["Ex.: 1-3, 5, 8-"]}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/numerar-paginas":{"post":{"operationId":"run_numerar_paginas","summary":"Numerar páginas","description":"Coloque números de página no PDF, na posição que quiser.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"position":{"title":"Posição","type":"string","enum":["bottom-center","bottom-right","bottom-left","top-center","top-right","top-left"],"x-enum-labels":{"bottom-center":"Embaixo, centro","bottom-right":"Embaixo, direita","bottom-left":"Embaixo, esquerda","top-center":"Em cima, centro","top-right":"Em cima, direita","top-left":"Em cima, esquerda"},"default":"bottom-center"},"format":{"title":"Formato","type":"string","enum":["{n}","Página {n}","{n} de {total}","Página {n} de {total}"],"x-enum-labels":{"{n}":"1","Página {n}":"Página 1","{n} de {total}":"1 de 10","Página {n} de {total}":"Página 1 de 10"},"default":"{n}"},"start":{"title":"Começar em","type":"number","minimum":0,"default":1},"size":{"title":"Tamanho da fonte","type":"number","minimum":0,"default":11},"skipFirst":{"type":"boolean","title":"Não numerar a primeira página","default":false}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/marca-dagua":{"post":{"operationId":"run_marca_dagua","summary":"Marca d'água","description":"Escreva um texto por cima de todas as páginas, como CONFIDENCIAL.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"text":{"title":"Texto","type":"string","maxLength":1000,"examples":["CONFIDENCIAL"],"default":"CONFIDENCIAL"},"layout":{"title":"Disposição","type":"string","enum":["center","tile"],"x-enum-labels":{"center":"No centro","tile":"Repetida"},"default":"center"},"angle":{"title":"Inclinação","type":"string","enum":["0","45","-45"],"x-enum-labels":{"0":"0°","45":"45°","-45":"-45°"},"default":"45"},"size":{"title":"Tamanho","type":"number","minimum":20,"maximum":140,"default":60},"opacity":{"title":"Transparência","type":"number","minimum":5,"maximum":100,"default":30},"color":{"title":"Cor","type":"string","pattern":"^#[0-9a-fA-F]{6}$","default":"#e5484d"}},"required":["text"]},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/recortar-pdf":{"post":{"operationId":"run_recortar_pdf","summary":"Recortar PDF","description":"Corte as margens das páginas, automaticamente ou em milímetros.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"mode":{"title":"Modo","type":"string","enum":["auto","manual"],"x-enum-labels":{"auto":"Automático","manual":"Manual (mm)"},"default":"auto"},"top":{"title":"Em cima (mm)","x-conditional":true,"type":"number","minimum":0},"bottom":{"title":"Embaixo (mm)","x-conditional":true,"type":"number","minimum":0},"left":{"title":"Esquerda (mm)","x-conditional":true,"type":"number","minimum":0},"right":{"title":"Direita (mm)","x-conditional":true,"type":"number","minimum":0}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/proteger-pdf":{"post":{"operationId":"run_proteger_pdf","summary":"Proteger PDF","description":"Coloque senha no PDF e escolha o que pode ser feito com ele.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"password":{"title":"Senha","type":"string","maxLength":1000,"format":"password"},"allowPrint":{"type":"boolean","title":"Imprimir","default":true},"allowCopy":{"type":"boolean","title":"Copiar o texto","default":true},"allowEdit":{"type":"boolean","title":"Editar e preencher","default":false}},"required":["password"]},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/desbloquear-pdf":{"post":{"operationId":"run_desbloquear_pdf","summary":"Desbloquear PDF","description":"Remova a senha e as restrições de um PDF que é seu.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"password":{"title":"Senha atual (se o PDF pedir para abrir)","type":"string","maxLength":1000,"format":"password"},"authorized":{"type":"boolean","title":"Sou o titular deste documento ou tenho autorização para remover a proteção (Lei 9.610/98, art. 107)","default":false}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/ocultar-dados":{"post":{"operationId":"run_ocultar_dados","summary":"Ocultar dados","description":"Apague de vez nomes, CPFs, e-mails e outros dados sensíveis do PDF.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"terms":{"title":"Palavras ou trechos","type":"string","maxLength":5000,"examples":["Um por linha ou separados por vírgula"]},"cpf":{"type":"boolean","title":"CPF","default":false},"rg":{"type":"boolean","title":"RG","default":false},"cnpj":{"type":"boolean","title":"CNPJ","default":false},"email":{"type":"boolean","title":"E-mail","default":false},"phone":{"type":"boolean","title":"Telefone","default":false},"cep":{"type":"boolean","title":"CEP","default":false},"card":{"type":"boolean","title":"Cartão","default":false},"metadata":{"type":"boolean","title":"Apagar autor, programa e datas","default":true}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/anonimizar-documento":{"post":{"operationId":"run_anonimizar_documento","summary":"Anonimizar documento (LGPD)","description":"Cubra de vez CPF, RG, telefone, e-mail, CEP e datas de nascimento antes de compartilhar.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"cpf":{"type":"boolean","title":"CPF","default":true},"rg":{"type":"boolean","title":"RG","default":true},"cnpj":{"type":"boolean","title":"CNPJ","default":false},"email":{"type":"boolean","title":"E-mail","default":true},"phone":{"type":"boolean","title":"Telefone","default":true},"cep":{"type":"boolean","title":"CEP","default":true},"birth":{"type":"boolean","title":"Datas (nascimento)","default":false},"card":{"type":"boolean","title":"Cartão","default":false},"terms":{"title":"Também cobrir (nomes, endereços…)","type":"string","maxLength":5000,"examples":["Um por linha. Ex.: Maria da Silva"]},"metadata":{"type":"boolean","title":"Apagar autor, programa e datas do arquivo","default":true}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/comparar-pdf":{"post":{"operationId":"run_comparar_pdf","summary":"Comparar PDF","description":"Veja o que mudou entre duas versões de um documento.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":2,"maxItems":2},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/ocr-pdf":{"post":{"operationId":"run_ocr_pdf","summary":"OCR em PDF","description":"Reconheça o texto de PDFs escaneados para poder buscar e copiar.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"lang":{"title":"Idioma do documento","type":"string","enum":["por+eng","por","eng","spa","fra","deu","ita"],"x-enum-labels":{"por+eng":"Português + inglês","por":"Português","eng":"Inglês","spa":"Espanhol","fra":"Francês","deu":"Alemão","ita":"Italiano"},"default":"por+eng"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/reparar-pdf":{"post":{"operationId":"run_reparar_pdf","summary":"Reparar PDF","description":"Tente recuperar um PDF danificado que não abre direito.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/achatar-pdf":{"post":{"operationId":"run_achatar_pdf","summary":"Achatar PDF","description":"Torne campos de formulário e anotações parte fixa da página.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/extrair-imagens":{"post":{"operationId":"run_extrair_imagens","summary":"Extrair imagens do PDF","description":"Salve todas as fotos e figuras de dentro do PDF.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/word-para-pdf":{"post":{"operationId":"run_word_para_pdf","summary":"Word para PDF","description":"Converta DOC, DOCX, ODT e RTF em PDF.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (doc, docx, odt, rtf, txt, pages, wpd, md)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/pdf-para-word":{"post":{"operationId":"run_pdf_para_word","summary":"PDF para Word","description":"Transforme o PDF em um DOCX editável, mantendo o layout.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/excel-para-pdf":{"post":{"operationId":"run_excel_para_pdf","summary":"Excel para PDF","description":"Converta planilhas XLS, XLSX, ODS e CSV em PDF.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (xls, xlsx, ods, csv, numbers)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/pdf-para-excel":{"post":{"operationId":"run_pdf_para_excel","summary":"PDF para Excel","description":"Leve as tabelas do PDF para uma planilha XLSX.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/powerpoint-para-pdf":{"post":{"operationId":"run_powerpoint_para_pdf","summary":"PowerPoint para PDF","description":"Converta apresentações PPT, PPTX e ODP em PDF.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (ppt, pptx, odp, pps, ppsx, key)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/pdf-para-powerpoint":{"post":{"operationId":"run_pdf_para_powerpoint","summary":"PDF para PowerPoint","description":"Cada página do PDF vira um slide do PPTX.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/html-para-pdf":{"post":{"operationId":"run_html_para_pdf","summary":"Site para PDF","description":"Salve qualquer página da internet (ou arquivo HTML) como PDF.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":false,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (html, htm)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":0},"options":{"type":"object","additionalProperties":false,"properties":{"url":{"title":"Link da página","type":"string","maxLength":1000,"examples":["https://exemplo.com.br"]},"orientation":{"title":"Orientação","type":"string","enum":["portrait","landscape"],"x-enum-labels":{"portrait":"Retrato","landscape":"Paisagem"},"default":"portrait"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/qualquer-para-pdf":{"post":{"operationId":"run_qualquer_para_pdf","summary":"Qualquer arquivo para PDF","description":"Documentos, planilhas, imagens, HTML e até ZIP: tudo vira PDF.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (doc, docx, odt, rtf, txt, pages, wpd, md, xls, xlsx, ods, csv, numbers, ppt, pptx, odp, pps, ppsx, key, html, htm, eps, ps, pdf, zip, jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, odg, vsd, vsdx, pub)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"merge":{"type":"boolean","title":"Juntar tudo em um único PDF","default":false},"filename":{"title":"Nome do arquivo final","x-conditional":true,"type":"string","maxLength":1000,"examples":["documento"]}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/pdf-para-texto":{"post":{"operationId":"run_pdf_para_texto","summary":"PDF para texto","description":"Extraia todo o texto do PDF em TXT ou Markdown.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"format":{"title":"Formato","type":"string","enum":["txt","md"],"x-enum-labels":{"txt":"TXT","md":"Markdown"},"default":"txt"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/pdf-para-pdfa":{"post":{"operationId":"run_pdf_para_pdfa","summary":"PDF para PDF/A","description":"Formato de arquivamento exigido por tribunais e órgãos públicos.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"level":{"title":"Versão","type":"string","enum":["1","2","3"],"x-enum-labels":{"1":"PDF/A-1b","2":"PDF/A-2b","3":"PDF/A-3b"},"default":"2"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/eps-para-pdf":{"post":{"operationId":"run_eps_para_pdf","summary":"EPS para PDF","description":"Converta arquivos EPS e PostScript em PDF.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (eps, ps)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/converter-documento":{"post":{"operationId":"run_converter_documento","summary":"Converter documento","description":"DOCX, ODT, XLSX, ODS, PPTX, CSV, EPUB… entre formatos de escritório.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (doc, docx, odt, rtf, txt, pages, wpd, md, xls, xlsx, ods, csv, numbers, ppt, pptx, odp, pps, ppsx, key)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"format":{"title":"Converter para","type":"string","enum":["docx","odt","rtf","txt","html","epub","xlsx","ods","csv","pptx","odp","doc","xls","ppt"],"x-enum-labels":{"docx":"Word (.docx)","odt":"OpenDocument texto (.odt)","rtf":"RTF","txt":"Texto (.txt)","html":"HTML","epub":"EPUB (e-book)","xlsx":"Excel (.xlsx)","ods":"OpenDocument planilha (.ods)","csv":"CSV","pptx":"PowerPoint (.pptx)","odp":"OpenDocument apresentação (.odp)","doc":"Word 97 (.doc)","xls":"Excel 97 (.xls)","ppt":"PowerPoint 97 (.ppt)"},"default":"docx"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/jpg-para-pdf":{"post":{"operationId":"run_jpg_para_pdf","summary":"Imagens para PDF","description":"Transforme JPG, PNG, WEBP e outras imagens em um PDF.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"pageSize":{"title":"Tamanho da página","type":"string","enum":["a4","fit"],"x-enum-labels":{"a4":"A4","fit":"Tamanho da imagem"},"default":"a4"},"margin":{"title":"Margem","x-conditional":true,"type":"string","enum":["0","24","48"],"x-enum-labels":{"0":"Sem","24":"Pequena","48":"Grande"},"default":"24"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/papel-timbrado":{"post":{"operationId":"run_papel_timbrado","summary":"Aplicar papel timbrado","description":"Coloque o timbrado da empresa em todas as páginas de vários PDFs de uma vez.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"},"letterhead":{"type":"string","contentEncoding":"binary","description":"Papel timbrado (PDF ou imagem do tamanho da folha)"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"extra_files":{"type":"object","properties":{"letterhead":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]}}},"options":{"type":"object","additionalProperties":false,"properties":{"useSavedLetterhead":{"type":"boolean","title":"Usar o papel timbrado salvo no perfil da empresa","default":false},"pages":{"title":"Aplicar em","type":"string","enum":["all","first"],"x-enum-labels":{"all":"Todas as páginas","first":"Só na primeira"},"default":"all"},"fit":{"title":"Conteúdo do documento","type":"string","enum":["shrink","over"],"x-enum-labels":{"shrink":"Encaixar nas margens","over":"Manter como está"},"default":"shrink"},"top":{"title":"Margem do cabeçalho (mm)","x-conditional":true,"type":"number","minimum":0,"default":35},"bottom":{"title":"Margem do rodapé (mm)","x-conditional":true,"type":"number","minimum":0,"default":25}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/xml-nfe-para-pdf":{"post":{"operationId":"run_xml_nfe_para_pdf","summary":"XML da NF-e para PDF (DANFE)","description":"Abra o XML da nota fiscal e gere o DANFE em PDF. Aceita vários XMLs ou um ZIP.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (xml, zip)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"layout":{"title":"Modelo","type":"string","enum":["a4","simplificado"],"x-enum-labels":{"a4":"DANFE A4","simplificado":"Simplificado 10×15 (etiqueta)"},"default":"a4"},"merge":{"type":"boolean","title":"Juntar todas as notas em um único PDF","default":false}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/nfe-para-excel":{"post":{"operationId":"run_nfe_para_excel","summary":"Notas fiscais (XML) para Excel","description":"Junte dezenas de XMLs de NF-e em uma planilha com notas, impostos e itens.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (xml, zip)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/mala-direta-word":{"post":{"operationId":"run_mala_direta_word","summary":"Mala direta com modelo do Word","description":"Junte um modelo .docx com {{campos}} e uma planilha: sai um documento para cada linha.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (docx, xlsx, xls, csv, ods)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":2,"maxItems":2},"options":{"type":"object","additionalProperties":false,"properties":{"output":{"title":"Resultado","type":"string","enum":["pdfs","merge","docx"],"x-enum-labels":{"pdfs":"Um PDF por linha","merge":"Tudo em um PDF","docx":"Arquivos Word"},"default":"pdfs"},"name":{"title":"Nome de cada arquivo","x-conditional":true,"type":"string","maxLength":1000,"examples":["{{nome}}"]}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/ofx-para-excel":{"post":{"operationId":"run_ofx_para_excel","summary":"Extrato OFX para Excel","description":"Transforme o extrato OFX do banco em planilha para conciliação, com entradas, saídas e saldo.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (ofx, qfx, ofc)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/recortar-etiqueta":{"post":{"operationId":"run_recortar_etiqueta","summary":"Recortar etiqueta de envio (10×15)","description":"A etiqueta veio numa folha A4? Recorte no tamanho da impressora térmica, em lote.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"layout":{"title":"Como a etiqueta está na folha","type":"string","enum":["auto","2","4","page"],"x-enum-labels":{"2":"2 por folha","4":"4 por folha","auto":"Detectar sozinho","page":"Página inteira"},"default":"auto"},"size":{"title":"Tamanho da etiqueta","type":"string","enum":["100x150","100x100","a6"],"x-enum-labels":{"100x150":"10×15 cm","100x100":"10×10 cm","a6":"A6"},"default":"100x150"},"merge":{"type":"boolean","title":"Juntar todas em um único PDF","default":true}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/lista-de-separacao":{"post":{"operationId":"run_lista_de_separacao","summary":"Lista de separação (picking) pelo XML da NF-e","description":"Envie os XMLs das vendas do dia e receba a lista de produtos somados por SKU para separar no estoque, com caixa para marcar.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (xml, zip)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"group":{"title":"Juntar os produtos iguais por","type":"string","enum":["codigo","ean","descricao"],"x-enum-labels":{"codigo":"Código (SKU)","ean":"Código de barras (EAN)","descricao":"Descrição"},"default":"codigo"},"sort":{"title":"Ordem da lista","type":"string","enum":["codigo","descricao","quantidade"],"x-enum-labels":{"codigo":"Por código","descricao":"Por descrição","quantidade":"Maior quantidade"},"default":"codigo"},"orders":{"type":"boolean","title":"Resumo por pedido (o que vai em cada pacote)","default":true},"xlsx":{"type":"boolean","title":"Planilha Excel além do PDF","default":false}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/romaneio-de-coleta":{"post":{"operationId":"run_romaneio_de_coleta","summary":"Romaneio de coleta pelo XML da NF-e","description":"Relação das notas, volumes, pesos e valores para entregar à transportadora, com espaço para placa, motorista e assinaturas.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (xml, zip)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"transportadora":{"title":"Transportadora (vazio = a que está nas notas)","type":"string","maxLength":1000,"examples":["Ex.: Jadlog, Braspress, Correios"]},"placa":{"title":"Placa do veículo","type":"string","maxLength":1000,"examples":["ABC1D23"]},"data":{"title":"Data da coleta","type":"string","maxLength":1000,"examples":["dd/mm/aaaa"]},"motorista":{"title":"Motorista (vazio = preencher à mão)","type":"string","maxLength":1000,"examples":["Nome do motorista"]},"sort":{"title":"Ordem das notas","type":"string","enum":["numero","destinatario","cidade"],"x-enum-labels":{"numero":"Número","destinatario":"Destinatário","cidade":"Cidade"},"default":"numero"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/etiqueta-de-volumes":{"post":{"operationId":"run_etiqueta_de_volumes","summary":"Etiqueta de volumes pelo XML da NF-e","description":"Uma etiqueta para cada caixa da nota (Volume 1/3, 2/3…), com destinatário, CEP grande, nota, peso e código de barras da chave.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (xml, zip)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"size":{"title":"Tamanho da etiqueta","type":"string","enum":["100x150","100x100","a4"],"x-enum-labels":{"100x150":"10×15 cm","100x100":"10×10 cm","a4":"A4 (4 por folha)"},"default":"100x150"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/xml-cte-para-pdf":{"post":{"operationId":"run_xml_cte_para_pdf","summary":"XML do CT-e para PDF (DACTE)","description":"Gere o DACTE do conhecimento de transporte a partir do XML. Aceita CT-e e CT-e OS, vários XMLs ou um ZIP.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (xml, zip)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"merge":{"type":"boolean","title":"Juntar todos em um único PDF","default":false}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/xml-mdfe-para-pdf":{"post":{"operationId":"run_xml_mdfe_para_pdf","summary":"XML do MDF-e para PDF (DAMDFE)","description":"Gere o DAMDFE do manifesto a partir do XML, com veículo, condutores, percurso e documentos por município de descarga.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (xml, zip)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"merge":{"type":"boolean","title":"Juntar todos em um único PDF","default":false}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/converter-imagem":{"post":{"operationId":"run_converter_imagem","summary":"Converter imagem","description":"Converta entre JPG, PNG, WEBP, AVIF, GIF e TIFF.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"format":{"title":"Converter para","type":"string","enum":["jpg","png","webp","avif","gif","tiff"],"x-enum-labels":{"jpg":"JPG","png":"PNG","webp":"WEBP","avif":"AVIF","gif":"GIF","tiff":"TIFF"},"default":"jpg"},"quality":{"title":"Qualidade","x-conditional":true,"type":"number","minimum":10,"maximum":100,"default":90}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/png-para-jpg":{"post":{"operationId":"run_png_para_jpg","summary":"PNG para JPG","description":"Converta PNG (e outros) em JPG leve e compatível.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"quality":{"title":"Qualidade","type":"number","minimum":10,"maximum":100,"default":90}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/jpg-para-png":{"post":{"operationId":"run_jpg_para_png","summary":"JPG para PNG","description":"Converta JPG (e outros) em PNG sem perdas.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/imagem-para-webp":{"post":{"operationId":"run_imagem_para_webp","summary":"Imagem para WEBP","description":"Formato moderno e leve, ideal para sites.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"quality":{"title":"Qualidade","type":"number","minimum":10,"maximum":100,"default":82}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/redimensionar-imagem":{"post":{"operationId":"run_redimensionar_imagem","summary":"Redimensionar imagem","description":"Mude a largura e a altura mantendo a proporção.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"width":{"title":"Largura máx. (px)","type":"number","minimum":0},"height":{"title":"Altura máx. (px)","type":"number","minimum":0},"format":{"title":"Formato","type":"string","enum":["original","jpg","png","webp"],"x-enum-labels":{"original":"Manter","jpg":"JPG","png":"PNG","webp":"WEBP"},"default":"original"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/marca-dagua-imagem":{"post":{"operationId":"run_marca_dagua_imagem","summary":"Marca d'água em fotos","description":"Proteja as fotos dos seus anúncios com texto ou logo, em várias de uma vez.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"},"logo":{"type":"string","contentEncoding":"binary","description":"Logo (PNG com fundo transparente fica melhor)"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"extra_files":{"type":"object","properties":{"logo":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]}}},"options":{"type":"object","additionalProperties":false,"properties":{"kind":{"title":"Marca","type":"string","enum":["text","logo"],"x-enum-labels":{"text":"Texto","logo":"Logo"},"default":"text"},"text":{"title":"Texto","x-conditional":true,"type":"string","maxLength":1000,"examples":["Imobiliária Exemplo · (11) 99999-9999"]},"useSavedLogo":{"type":"boolean","title":"Usar a logo salvo no perfil da empresa","default":false},"position":{"title":"Posição","type":"string","enum":["center","bottom-right","bottom-left","top-right","top-left","tile"],"x-enum-labels":{"center":"Centro","bottom-right":"Canto inferior direito","bottom-left":"Canto inferior esquerdo","top-right":"Canto superior direito","top-left":"Canto superior esquerdo","tile":"Repetida (mosaico)"},"default":"bottom-right"},"size":{"title":"Tamanho","type":"number","minimum":5,"maximum":60,"default":22},"opacity":{"title":"Transparência","type":"number","minimum":10,"maximum":100,"default":55},"color":{"title":"Cor do texto","x-conditional":true,"type":"string","pattern":"^#[0-9a-fA-F]{6}$","default":"#ffffff"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/imagem-redes-sociais":{"post":{"operationId":"run_imagem_redes_sociais","summary":"Imagem para redes sociais e marketplace","description":"Deixe a foto no tamanho certo para Instagram, Facebook, WhatsApp, YouTube, LinkedIn, Mercado Livre e Shopee.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"preset":{"title":"Formato","type":"string","enum":["ig-post","ig-portrait","story","fb-post","fb-cover","wa-profile","yt-thumb","li-banner","marketplace"],"x-enum-labels":{"ig-post":"Instagram: post quadrado (1080×1080)","ig-portrait":"Instagram: post retrato (1080×1350)","story":"Story, Reels e Status (1080×1920)","fb-post":"Facebook: post (1200×630)","fb-cover":"Facebook: capa (1640×624)","wa-profile":"WhatsApp e redes: foto de perfil (640×640)","yt-thumb":"YouTube: miniatura (1280×720)","li-banner":"LinkedIn: capa (1584×396)","marketplace":"Mercado Livre e Shopee: produto (1200×1200, fundo branco)"},"default":"ig-post"},"fit":{"title":"Ajuste","type":"string","enum":["cover","contain"],"x-enum-labels":{"cover":"Cortar para preencher","contain":"Mostrar inteira (com fundo)"},"default":"cover"},"bg":{"title":"Fundo","x-conditional":true,"type":"string","enum":["blur","white","black"],"x-enum-labels":{"blur":"Desfocado","white":"Branco","black":"Preto"},"default":"blur"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/foto-produto-marketplace":{"post":{"operationId":"run_foto_produto_marketplace","summary":"Fotos de produto para marketplace","description":"Remova o fundo, deixe branco puro e centralize o produto no tamanho do Mercado Livre, Shopee, Amazon, Magalu ou Shein, em lote.\n\nCusto: 5 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"marketplace":{"title":"Marketplace","type":"string","enum":["mercado-livre","shopee","amazon","magalu","shein"],"x-enum-labels":{"mercado-livre":"Mercado Livre (1200×1200)","shopee":"Shopee (1024×1024)","amazon":"Amazon (1600×1600, branco 255)","magalu":"Magalu (1200×1200)","shein":"Shein (1340×1785, 3:4)"},"default":"mercado-livre"},"background":{"title":"Fundo","type":"string","enum":["remove-white","remove-transparent","keep"],"x-enum-labels":{"remove-white":"Remover: branco","remove-transparent":"Remover: transparente","keep":"Sem remover fundo"},"default":"remove-white"},"margin":{"title":"Tamanho do produto no quadro","type":"string","enum":["grande","padrao","respiro"],"x-enum-labels":{"grande":"Grande (92%)","padrao":"Padrão (85%)","respiro":"Com respiro (72%)"},"default":"padrao"},"format":{"title":"Formato","x-conditional":true,"type":"string","enum":["jpg","png"],"x-enum-labels":{"jpg":"JPG","png":"PNG"},"default":"jpg"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/comprimir-imagem":{"post":{"operationId":"run_comprimir_imagem","summary":"Comprimir imagem","description":"Reduza o tamanho de fotos sem perder qualidade visível.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (jpg, jpeg, png, webp, gif, tif, tiff, bmp, heic, heif, avif, svg, jfif)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"quality":{"title":"Nível","type":"string","enum":["82","68","50"],"x-enum-labels":{"50":"Forte","68":"Recomendado","82":"Leve"},"default":"68"},"format":{"title":"Formato","type":"string","enum":["original","jpg","webp"],"x-enum-labels":{"original":"Manter","jpg":"JPG","webp":"WEBP"},"default":"original"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/mp4-para-mp3":{"post":{"operationId":"run_mp4_para_mp3","summary":"MP4 para MP3","description":"Extraia o áudio de qualquer vídeo em MP3.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (mp3, wav, ogg, oga, m4a, flac, aac, opus, wma, amr, aiff, aif, mp4, mkv, mov, avi, wmv, flv, 3gp, m4v, ts, webm, mpg, mpeg)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"bitrate":{"title":"Qualidade","type":"string","enum":["128k","192k","256k","320k","96k"],"x-enum-labels":{"128k":"128 kbps","192k":"192 kbps","256k":"256 kbps","320k":"320 kbps (máxima)","96k":"96 kbps (menor)"},"default":"192k"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/converter-audio":{"post":{"operationId":"run_converter_audio","summary":"Converter áudio","description":"MP3, WAV, OGG, M4A, FLAC, AAC e OPUS — de e para qualquer formato.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (mp3, wav, ogg, oga, m4a, flac, aac, opus, wma, amr, aiff, aif, mp4, mkv, mov, avi, wmv, flv, 3gp, m4v, ts, webm, mpg, mpeg)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"format":{"title":"Converter para","type":"string","enum":["mp3","wav","m4a","ogg","flac","aac","opus"],"x-enum-labels":{"mp3":"MP3","wav":"WAV","m4a":"M4A","ogg":"OGG","flac":"FLAC","aac":"AAC","opus":"OPUS"},"default":"mp3"},"bitrate":{"title":"Qualidade","x-conditional":true,"type":"string","enum":["128k","192k","256k","320k","96k"],"x-enum-labels":{"128k":"128 kbps","192k":"192 kbps","256k":"256 kbps","320k":"320 kbps (máxima)","96k":"96 kbps (menor)"},"default":"192k"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/cortar-audio":{"post":{"operationId":"run_cortar_audio","summary":"Cortar áudio","description":"Recorte um trecho de uma música ou gravação.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (mp3, wav, ogg, oga, m4a, flac, aac, opus, wma, amr, aiff, aif, mp4, mkv, mov, avi, wmv, flv, 3gp, m4v, ts, webm, mpg, mpeg)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1,"maxItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"start":{"title":"Início","type":["number","string"],"description":"Segundos (ex.: 90) ou \"m:ss\" / \"h:mm:ss\"."},"end":{"title":"Fim (vazio = até o final)","type":["number","string"],"description":"Segundos (ex.: 90) ou \"m:ss\" / \"h:mm:ss\"."}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/converter-video":{"post":{"operationId":"run_converter_video","summary":"Converter vídeo","description":"Converta para MP4, WEBM, MOV, MKV ou AVI.\n\nCusto: 10 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (mp4, mkv, mov, avi, wmv, flv, 3gp, m4v, ts, webm, mpg, mpeg)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"format":{"title":"Converter para","type":"string","enum":["mp4","webm","mov","mkv","avi"],"x-enum-labels":{"mp4":"MP4","webm":"WEBM","mov":"MOV","mkv":"MKV","avi":"AVI"},"default":"mp4"},"height":{"title":"Resolução","type":"string","enum":["0","2160","1080","720","480","360"],"x-enum-labels":{"0":"Original","360":"360p","480":"480p","720":"720p","1080":"1080p","2160":"4K (2160p)"},"default":"0"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/comprimir-video":{"post":{"operationId":"run_comprimir_video","summary":"Comprimir vídeo","description":"Deixe vídeos bem menores para enviar no WhatsApp ou e-mail.\n\nCusto: 10 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (mp4, mkv, mov, avi, wmv, flv, 3gp, m4v, ts, webm, mpg, mpeg)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"level":{"title":"Compressão","type":"string","enum":["low","medium","high"],"x-enum-labels":{"low":"Leve","medium":"Recomendada","high":"Máxima"},"default":"medium"},"height":{"title":"Resolução","type":"string","enum":["0","1080","720","480","360"],"x-enum-labels":{"0":"Manter","360":"360p","480":"480p","720":"720p","1080":"1080p"},"default":"0"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/video-para-gif":{"post":{"operationId":"run_video_para_gif","summary":"Vídeo para GIF","description":"Transforme um trecho de vídeo em GIF animado.\n\nCusto: 10 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (mp4, mkv, mov, avi, wmv, flv, 3gp, m4v, ts, webm, mpg, mpeg)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1,"maxItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"start":{"title":"Início","type":["number","string"],"description":"Segundos (ex.: 90) ou \"m:ss\" / \"h:mm:ss\"."},"duration":{"title":"Duração (s)","type":"number","minimum":0,"default":5},"width":{"title":"Largura","type":"string","enum":["320","480","640","800"],"x-enum-labels":{"320":"320px","480":"480px","640":"640px","800":"800px"},"default":"480"},"fps":{"title":"Quadros por segundo","type":"string","enum":["10","15","24"],"x-enum-labels":{"10":"10","15":"15","24":"24"},"default":"15"}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/cortar-video":{"post":{"operationId":"run_cortar_video","summary":"Cortar vídeo","description":"Recorte um trecho do vídeo sem perder qualidade.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (mp4, mkv, mov, avi, wmv, flv, 3gp, m4v, ts, webm, mpg, mpeg)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1,"maxItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"start":{"title":"Início","type":["number","string"],"description":"Segundos (ex.: 90) ou \"m:ss\" / \"h:mm:ss\"."},"end":{"title":"Fim (vazio = até o final)","type":["number","string"],"description":"Segundos (ex.: 90) ou \"m:ss\" / \"h:mm:ss\"."}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/zpl-para-pdf":{"post":{"operationId":"run_zpl_para_pdf","summary":"ZPL para PDF","description":"Converte código ZPL (Zebra) em PDF com uma página por etiqueta, no tamanho e resolução escolhidos, ou em PNG.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":false,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (zpl, txt, prn, zp)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":0,"maxItems":20},"options":{"type":"object","additionalProperties":false,"properties":{"zpl":{"title":"Código ZPL (alternativa aos arquivos)","type":"string","maxLength":5242880,"examples":["^XA^FO50,50^A0N,40,40^FDOlá^FS^XZ"]},"width_mm":{"title":"Largura da etiqueta (mm), quando o ZPL não traz ^PW","type":"number","minimum":10,"maximum":300,"default":100},"height_mm":{"title":"Altura da etiqueta (mm), quando o ZPL não traz ^LL","type":"number","minimum":10,"maximum":600,"default":150},"dpmm":{"title":"Resolução da impressora","type":"string","enum":["8","12","24","6"],"x-enum-labels":{"6":"152 dpi (6 pontos/mm)","8":"203 dpi (8 pontos/mm)","12":"300 dpi (12 pontos/mm)","24":"600 dpi (24 pontos/mm)"},"default":"8"},"format":{"title":"Saída","type":"string","enum":["pdf","png"],"x-enum-labels":{"pdf":"PDF (uma página por etiqueta)","png":"PNG (uma imagem por etiqueta)"},"default":"pdf"},"use_label_size":{"type":"boolean","title":"Usar o tamanho do ZPL (^PW/^LL) quando existir","default":true},"fit":{"type":"boolean","title":"Encaixar no tamanho escolhido","default":false},"copies":{"type":"boolean","title":"Repetir as cópias de ^PQ","default":false}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/pdf-para-zpl":{"post":{"operationId":"run_pdf_para_zpl","summary":"PDF para ZPL","description":"Transforma etiquetas em PDF ou imagem em código ZPL (gráfico ^GFA) pronto para a impressora Zebra.\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (pdf, png, jpg, jpeg, webp)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1,"maxItems":20},"options":{"type":"object","additionalProperties":false,"properties":{"size":{"title":"Tamanho da etiqueta","type":"string","enum":["100x150","100x100","100x50","60x40","page"],"x-enum-labels":{"100x150":"10 × 15 cm","100x100":"10 × 10 cm","100x50":"10 × 5 cm","60x40":"6 × 4 cm","page":"Tamanho da página"},"default":"100x150"},"dpmm":{"title":"Resolução da impressora","type":"string","enum":["8","12","24","6"],"x-enum-labels":{"6":"152 dpi (6 pontos/mm)","8":"203 dpi (8 pontos/mm)","12":"300 dpi (12 pontos/mm)","24":"600 dpi (24 pontos/mm)"},"default":"8"},"pages":{"title":"Páginas (ex.: 1-3,5; vazio = todas)","type":"string","maxLength":1000,"examples":["1-3,5"]},"rotate":{"title":"Girar","type":"string","enum":["0","90","180","270"],"x-enum-labels":{"0":"0°","90":"90°","180":"180°","270":"270°"},"default":"0"},"threshold":{"title":"Limiar de preto (1–254)","type":"number","minimum":1,"maximum":254,"default":128},"encoding":{"title":"Codificação do gráfico","type":"string","enum":["ascii","z64"],"x-enum-labels":{"ascii":"^GFA ASCII comprimido (compatível com todas)","z64":":Z64: (menor, firmware recente)"},"default":"ascii"},"dither":{"type":"boolean","title":"Pontilhado (fotos e logos em tons de cinza)","default":false},"invert":{"type":"boolean","title":"Inverter preto e branco","default":false}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}},"/v1/tools/etiquetas-envio-planilha":{"post":{"operationId":"run_etiquetas_envio_planilha","summary":"Etiquetas de envio a partir de planilha","description":"Gera etiquetas de envio (10×15, 10×10, A4 4 por folha ou adesiva A4 8 por folha) e o romaneio de entregas a partir de uma planilha CSV ou XLSX de pedidos. Linhas com CEP ou UF inválidos são ignoradas e listadas em \"info\".\n\nCusto: 1 crédito(s) por arquivo.","tags":["Ferramentas de arquivo"],"parameters":[{"name":"wait","in":"query","required":false,"description":"true (até 60 s) ou número de segundos (1–60).","schema":{"type":"string"}},{"name":"webhook_url","in":"query","required":false,"description":"URL HTTPS que recebe o aviso de conclusão.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255},"description":"Chave única da operação (ex.: um UUID). Repetir o mesmo pedido com a mesma chave em até 24 h devolve a resposta original, sem novo débito (cabeçalho Idempotent-Replayed: true). Mesma chave com outro pedido: 409 idempotency_key_reused."}],"responses":{"200":{"description":"Tarefa concluída (com ?wait).","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"202":{"description":"Sucesso.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"Identificador da requisição."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Requisições por minuto do plano."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requisições restantes na janela de 60 s."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Quando a janela libera (Unix, segundos)."},"X-Credits-Remaining":{"schema":{"type":"integer"},"description":"Créditos disponíveis depois da chamada."},"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"]},"description":"Presente quando a resposta é a repetição guardada de um pedido com a mesma Idempotency-Key."}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Parâmetros ausentes ou inválidos.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Chave não enviada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Créditos insuficientes para a chamada.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"A tarefa ainda não terminou.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Arquivo acima do limite do plano ou corpo JSON grande demais.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"415":{"description":"Extensão não aceita pela ferramenta, ou corpo que não é JSON.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Limite de requisições por minuto do plano.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"string","contentEncoding":"binary"},"description":"Arquivos (csv, txt, tsv, xlsx, xlsm)."},"options":{"type":"string","description":"Opções como JSON (ou envie cada opção como campo do formulário)."},"webhook_url":{"type":"string","format":"uri"}}}},"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"name":{"type":"string"}}},{"type":"object","required":["base64"],"properties":{"base64":{"type":"string","contentEncoding":"base64"},"name":{"type":"string"}}}]},"minItems":1,"maxItems":1},"options":{"type":"object","additionalProperties":false,"properties":{"size":{"title":"Tamanho","type":"string","enum":["100x150","100x100","a4-4","a4265"],"x-enum-labels":{"100x150":"10 × 15 cm (térmica)","100x100":"10 × 10 cm","a4-4":"A4, 4 por folha (papel comum)","a4265":"A4 adesiva, 8 por folha (compatível com Pimaco A4265)"},"default":"100x150"},"barcode":{"title":"Código de barras (Code 128)","type":"string","enum":["cep","pedido","nenhum"],"x-enum-labels":{"cep":"CEP","pedido":"Número do pedido","nenhum":"Sem código de barras"},"default":"cep"},"romaneio":{"title":"Gerar o romaneio de entregas (PDF)","type":"string","enum":["sim","nao"],"x-enum-labels":{"sim":"Sim","nao":"Não"},"default":"sim"},"mapping":{"title":"Colunas da planilha, em JSON (opcional; sem ele as colunas são reconhecidas pelo cabeçalho)","type":"string","maxLength":4000,"examples":["{\"nome\":\"Cliente\",\"endereco\":\"Rua\",\"numero\":\"Nº\",\"bairro\":\"Bairro\",\"cidade\":\"Cidade\",\"uf\":\"UF\",\"cep\":\"CEP\",\"pedido\":\"Pedido\"}"]},"sheet":{"title":"Aba do Excel (vazio = a primeira)","type":"string","maxLength":1000},"remetente_nome":{"title":"Remetente: nome","type":"string","maxLength":120},"remetente_documento":{"title":"Remetente: documento","type":"string","maxLength":120},"remetente_endereco":{"title":"Remetente: endereco","type":"string","maxLength":120},"remetente_numero":{"title":"Remetente: numero","type":"string","maxLength":120},"remetente_complemento":{"title":"Remetente: complemento","type":"string","maxLength":120},"remetente_bairro":{"title":"Remetente: bairro","type":"string","maxLength":120},"remetente_cidade":{"title":"Remetente: cidade","type":"string","maxLength":120},"remetente_uf":{"title":"Remetente: uf","type":"string","maxLength":120},"remetente_cep":{"title":"Remetente: cep","type":"string","maxLength":120},"remetente_telefone":{"title":"Remetente: telefone","type":"string","maxLength":120}}},"webhook_url":{"type":"string","format":"uri"}}}}}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Authorization: Bearer cj_live_…"},"apiKeyHeader":{"type":"apiKey","in":"header","name":"X-API-Key"}},"schemas":{"Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Código estável, para tratar no seu código."},"message":{"type":"string","description":"Mensagem em português."},"request_id":{"type":"string","description":"Identificador da requisição (informe ao suporte)."}}}}},"JobOutput":{"type":"object","properties":{"index":{"type":"integer","description":"Posição do arquivo."},"name":{"type":"string","description":"Nome do arquivo gerado."},"size":{"type":"integer","description":"Tamanho em bytes."},"url":{"type":"string","description":"URL de download (exige a chave).","format":"uri"}}},"Job":{"type":"object","required":["id","status"],"properties":{"id":{"type":"string","description":"Identificador da tarefa."},"tool":{"type":"string","description":"Id da ferramenta."},"operation":{"type":"string","description":"Operação interna."},"status":{"type":"string","description":"Situação.","enum":["queued","running","done","error"]},"progress":{"type":"integer","description":"0 a 100."},"message":{"type":"string","description":"Mensagem de progresso ou de erro."},"created_at":{"type":"string","description":"Criação (ISO 8601).","format":"date-time"},"finished_at":{"type":["string","null"],"format":"date-time"},"expires_at":{"type":"string","description":"Quando os arquivos são apagados (1 hora após a criação).","format":"date-time"},"credits_charged":{"type":"integer","description":"Créditos debitados."},"credits_refunded":{"type":"integer","description":"Créditos devolvidos (tarefa com erro)."},"test":{"type":"boolean","description":"Criada com chave de teste."},"outputs":{"type":"array","items":{"$ref":"#/components/schemas/JobOutput"}},"download_url":{"type":"string","description":"Baixa tudo (um arquivo ou ZIP).","format":"uri"},"info":{"type":"string","description":"Informação extra da ferramenta (ex.: tamanho antes/depois)."},"text":{"type":"string","description":"Resultado em texto, quando a ferramenta gera texto (ex.: ZPL do pdf-para-zpl, até 256 KB)."},"error":{"type":"object","properties":{"code":{"type":"string","description":"job_failed (a ferramenta recusou o arquivo) ou job_interrupted (servidor reiniciado; créditos devolvidos).","enum":["job_failed","job_interrupted"]},"message":{"type":"string","description":"Motivo, em português."}}},"files_available":{"type":"boolean","description":"Os arquivos ainda podem ser baixados (até 1 hora após a criação, ou até DELETE)."},"files_deleted_at":{"type":["string","null"],"format":"date-time","description":"Quando os arquivos foram apagados com DELETE /v1/jobs/{id}."},"deleted":{"type":"boolean","description":"Presente (true) na resposta do DELETE."}}},"JobList":{"type":"object","properties":{"object":{"type":"string","description":"","const":"list"},"count":{"type":"integer","description":"Itens nesta página."},"has_more":{"type":"boolean","description":"Há mais páginas."},"next_cursor":{"type":["string","null"],"description":"Id da última tarefa da página; passe em starting_after."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Job"}}}},"WebhookTest":{"type":"object","properties":{"object":{"type":"string","description":"","const":"webhook_test"},"url":{"type":"string","description":"","format":"uri"},"event":{"type":"string","description":"","const":"webhook.test"},"delivery_id":{"type":"string","description":"Mesmo valor de X-Convertaja-Delivery."},"delivered":{"type":"boolean","description":"O receptor respondeu 2xx."},"status":{"type":["integer","null"],"description":"Status HTTP devolvido pelo receptor."},"error":{"type":["string","null"]}}},"Tool":{"type":"object","properties":{"id":{"type":"string","description":"Id usado em POST /v1/tools/{id}."},"operation":{"type":"string","description":"Operação interna."},"name":{"type":"string","description":"Nome."},"description":{"type":"string","description":"Descrição."},"category":{"type":"string","description":"Categoria."},"accepted_extensions":{"type":"array","items":{"type":"string"}},"multiple":{"type":"boolean","description":"Aceita vários arquivos."},"min_files":{"type":"integer","description":"Mínimo de arquivos."},"max_files":{"type":["integer","null"]},"optional_files":{"type":"boolean","description":"Arquivos opcionais (ex.: Site para PDF com url)."},"extra_files":{"type":"array","items":{"type":"object"}},"options_schema":{"type":"object","description":"JSON Schema das opções."},"fixed_options":{"type":"object"},"heavy":{"type":"boolean","description":"Ferramenta pesada."},"kind":{"type":"string","description":"light | heavy | video","enum":["light","heavy","video"]},"credits_per_file":{"type":"integer","description":"Créditos por arquivo enviado."},"docs_url":{"type":"string","description":"","format":"uri"}}},"Me":{"type":"object","properties":{"account":{"type":"object"},"key":{"type":"object"},"plan":{"type":"object"},"credits":{"type":"object"},"limits":{"type":"object"}}},"ValidationResult":{"type":"object","properties":{"value":{"type":"string","description":"Valor recebido."},"type":{"type":["string","null"],"enum":["cpf","cnpj","cnh","pis","titulo","renavam","cns",null]},"type_label":{"type":"string","description":""},"valid":{"type":"boolean","description":"Dígitos verificadores conferem."},"normalized":{"type":"string","description":"Só os caracteres significativos."},"formatted":{"type":["string","null"]},"alphanumeric":{"type":"boolean","description":"CNPJ no novo formato alfanumérico."},"candidates":{"type":"array","items":{"type":"string"},"description":"Tipos possíveis quando o tipo não foi informado."}}},"Company":{"type":"object","description":"Dados públicos do CNPJ (sem quadro de sócios).","properties":{"cnpj":{"type":"string","description":""},"razaoSocial":{"type":"string","description":""},"nomeFantasia":{"type":"string","description":""},"situacao":{"type":"string","description":""},"abertura":{"type":"string","description":""},"porte":{"type":"string","description":""},"naturezaJuridica":{"type":"string","description":""},"cnaePrincipal":{"type":"object"},"cnaesSecundarios":{"type":"array","items":{"type":"object"}},"endereco":{"type":"object"},"telefone":{"type":"string","description":""},"email":{"type":"string","description":""},"capitalSocial":{"type":["number","null"]},"simples":{"type":"object"},"cached":{"type":"boolean","description":"Veio do cache (24 h)."}}},"Address":{"type":"object","properties":{"cep":{"type":"string","description":""},"logradouro":{"type":"string","description":""},"bairro":{"type":"string","description":""},"cidade":{"type":"string","description":""},"uf":{"type":"string","description":""},"cached":{"type":"boolean","description":""}}},"Boleto":{"type":"object","properties":{"tipo":{"type":"string","description":"bancario | arrecadacao"},"valido":{"type":"boolean","description":""},"codigo_barras":{"type":"string","description":"44 dígitos."},"linha_digitavel":{"type":"string","description":"47 ou 48 dígitos."},"linha_digitavel_formatada":{"type":"string","description":""},"banco":{"type":"object"},"segmento":{"type":"object"},"valor":{"type":["number","null"]},"vencimento":{"type":["string","null"],"format":"date"},"fator_vencimento":{"type":["integer","null"]}}},"Image":{"type":"object","properties":{"width":{"type":"number","description":"Largura (px)."},"height":{"type":"number","description":"Altura (px)."},"svg":{"type":"string","description":"SVG (format svg ou both)."},"png_base64":{"type":"string","description":"PNG em base64 (format png ou both)."}}},"Pix":{"type":"object","properties":{"payload":{"type":"string","description":"Pix copia e cola (BR Code)."},"key":{"type":"string","description":"Chave normalizada."},"key_type":{"type":"string","description":"cpf | cnpj | email | telefone | aleatoria"},"amount":{"type":["number","null"]},"txid":{"type":"string","description":""},"format":{"type":"string","description":"Formato pedido.","enum":["json","svg","png","both","pdf"]},"qr_width":{"type":"integer","description":"Largura do QR (px)."},"qr_height":{"type":"integer","description":"Altura do QR (px)."},"qr_svg":{"type":"string","description":"QR em SVG (format svg ou both)."},"qr_png_base64":{"type":"string","description":"QR em PNG, base64 (format png ou both)."},"pdf_base64":{"type":"string","description":"Folha 10×15 cm com QR, nome, cidade, valor e copia e cola (format pdf)."}}},"EnvelopeSigner":{"type":"object","properties":{"id":{"type":"integer","description":"Id do signatário."},"position":{"type":"integer","description":"Ordem (0, 1, …)."},"name":{"type":"string","description":""},"email":{"type":"string","description":""},"role":{"type":"string","description":"Papel.","enum":["sign","approve","witness"]},"status":{"type":"string","description":"draft (rascunho) → waiting (aguardando a vez) → pending (convidado) → signed | refused.","enum":["draft","waiting","pending","signed","refused"]},"ask_cpf":{"type":"boolean","description":"Pede CPF ao assinar."},"cpf_masked":{"type":["string","null"],"description":"CPF mascarado (***.456.789-**)."},"rubrica_all":{"type":"boolean","description":"Rubrica em todas as páginas."},"notified_at":{"type":["string","null"],"format":"date-time"},"viewed_at":{"type":["string","null"],"format":"date-time"},"verified_at":{"type":["string","null"],"format":"date-time","description":"Confirmou o código do e-mail."},"signed_at":{"type":["string","null"],"format":"date-time"},"refused_at":{"type":["string","null"],"format":"date-time"},"refuse_reason":{"type":["string","null"]},"sign_url":{"type":["string","null"],"format":"uri","description":"Link pessoal de assinatura: com return_links: true (na criação ou no envio) ou GET …?links=true. null em rascunho (os links nascem no envio)."}}},"Envelope":{"type":"object","required":["id","status"],"properties":{"id":{"type":"string","description":"Id do envelope (XXXX-XXXX-XXXX-XXXX)."},"object":{"type":"string","description":"","const":"envelope"},"name":{"type":"string","description":"Nome do documento."},"file_name":{"type":["string","null"]},"status":{"type":"string","description":"Situação.","enum":["draft","pending","completed","refused","expired","canceled"]},"status_label":{"type":"string","description":"Situação em português."},"source":{"type":"string","description":"api | web"},"sequential":{"type":"boolean","description":"Assinatura em ordem."},"message":{"type":["string","null"]},"pages":{"type":"integer","description":"Páginas."},"signed_count":{"type":"integer","description":""},"signer_count":{"type":"integer","description":""},"created_at":{"type":"string","description":"","format":"date-time"},"updated_at":{"type":"string","description":"","format":"date-time"},"sent_at":{"type":["string","null"],"format":"date-time"},"completed_at":{"type":["string","null"],"format":"date-time"},"closed_at":{"type":["string","null"],"format":"date-time"},"expires_at":{"type":["string","null"],"format":"date-time"},"purge_at":{"type":["string","null"],"format":"date-time","description":"Quando os arquivos são apagados."},"original_sha256":{"type":"string","description":"Hash do PDF enviado."},"final_sha256":{"type":["string","null"],"description":"Hash do PDF final (verificável em verify_url)."},"verify_url":{"type":["string","null"],"format":"uri"},"signers":{"type":"array","items":{"$ref":"#/components/schemas/EnvelopeSigner"}},"fields":{"type":"array","items":{"type":"object"}},"files":{"type":["object","null"],"properties":{"final":{"type":"string","description":"","format":"uri"},"audit":{"type":"string","description":"","format":"uri"}}},"credits_charged":{"type":"integer","description":"Créditos cobrados (20 no envio)."},"webhook_url":{"type":["string","null"],"format":"uri"},"url":{"type":"string","description":"","format":"uri"},"links_available":{"type":"boolean","description":"Presente quando os links foram pedidos: false em rascunho (os links saem no envio)."},"events":{"type":"array","description":"Trilha de auditoria (com ?events=true).","items":{"type":"object","properties":{"at":{"type":"string","description":"","format":"date-time"},"kind":{"type":"string","description":""},"detail":{"type":"string","description":""},"ip":{"type":["string","null"]},"port":{"type":["integer","null"]},"device":{"type":["string","null"]}}}}}},"EnvelopeReminder":{"type":"object","properties":{"id":{"type":"string","description":"Id do envelope."},"reminded":{"type":"integer","description":"Quantas pessoas receberam o lembrete."}}},"EnvelopeDeleted":{"type":"object","properties":{"id":{"type":"string","description":"Id do envelope."},"object":{"type":"string","description":""},"deleted":{"type":"boolean","description":""}}},"EnvelopeList":{"type":"object","properties":{"object":{"type":"string","description":""},"count":{"type":"integer","description":""},"has_more":{"type":"boolean","description":""},"next_cursor":{"type":["string","null"]},"data":{"type":"array","items":{"$ref":"#/components/schemas/Envelope"}}}},"Usage":{"type":"object","properties":{"from":{"type":"string","description":"","format":"date"},"to":{"type":"string","description":"","format":"date"},"totals":{"type":"object"},"data":{"type":"array","items":{"type":"object"}}}},"Lote":{"type":"object","properties":{"id":{"type":"string","description":"Id do lote."},"object":{"type":"string","description":"","const":"expedicao.lote"},"status":{"type":"string","description":"Situação.","enum":["running","done","error"]},"progress":{"type":"integer","description":"0 a 100."},"message":{"type":["string","null"]},"orders":{"type":"integer","description":"Pedidos (etiquetas) no lote."},"new_orders":{"type":"integer","description":"Pedidos ainda não processados no mês (são os cobrados)."},"credits_charged":{"type":"integer","description":"Créditos debitados."},"created_at":{"type":"string","description":"","format":"date-time"},"finished_at":{"type":["string","null"],"format":"date-time"},"files_expire_at":{"type":["string","null"],"format":"date-time"},"outputs":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":""},"size":{"type":"integer","description":""},"pages":{"type":"integer","description":""},"url":{"type":"string","description":"","format":"uri"}}}},"download_url":{"type":"string","description":"ZIP com todos os PDFs.","format":"uri"},"conference_url":{"type":"string","description":"Página de conferência dos pedidos (sem login).","format":"uri"},"summary":{"type":"object","description":"Resumo: pedidos por marketplace e transportadora, etiquetas sem nota, notas sem etiqueta, lista de pedidos."},"error":{"type":"object","properties":{"code":{"type":"string","description":""},"message":{"type":"string","description":""}}}}}}}}