Conversor de cURL: cURL para Fetch, Python, Axios e mais

Cole um comando curl, por exemplo um copiado do DevTools do navegador, e receba código pronto para rodar em 8 linguagens. Headers, corpos JSON, formulários, upload de arquivos, autenticação e cookies são todos convertidos.

Roda no seu navegadorSem cadastroNada é enviado

Converter para
JavaScript fetch

    

    Como usar: Conversor de cURL

    1. Copie uma requisição como cURL: no DevTools do Chrome ou do Firefox, clique com o botão direito em uma requisição na aba Network → Copy → Copy as cURL.
    2. Cole na caixa de entrada. Comandos em várias linhas com \, continuações ^ do Windows e strings $'…' são suportados.
    3. Escolha o destino: JavaScript fetch, Axios, Node.js, Python requests, Python httpx, Go, PHP ou HTTPie.
    4. Leia os avisos abaixo da saída. Eles listam opções que não têm equivalente na linguagem de destino.
    5. Copie o código ou baixe-o como arquivo.

    Por que converter comandos curl em código?

    O curl é a língua comum do HTTP. Documentações de API mostram exemplos em curl, o DevTools do navegador exporta requisições como curl e equipes de suporte enviam reproduções em curl. Quando você quer essa requisição dentro de uma aplicação, precisa reescrevê-la à mão: mover cada -H para um objeto de headers, transformar -d em corpo, converter -u em basic auth e lembrar que -G move os dados para a query string. Este conversor faz essa tradução por você e gera código que pode ser colado direto no projeto.

    Opções do curl suportadas

    OpçãoConvertida para
    -X, -I, -GMétodo HTTP (POST é deduzido quando há um corpo)
    -H, -A, -e, -bHeaders, User-Agent, Referer e cookies
    -d, --data-raw, --data-binary, --data-urlencode, --jsonCorpo da requisição: objetos JSON, campos de formulário ou texto bruto
    -FDados de formulário multipart, incluindo uploads @file
    -u, --oauth2-bearerBasic auth ou um token Bearer
    -k, -L, -m, -x, --compressedVerificação TLS, redirecionamentos, timeout, proxy e compressão

    Corpos JSON viram objetos de verdade

    Quando a requisição envia JSON (um header Content-Type: application/json, --json ou um corpo que é JSON válido), o conversor gera estruturas de dados nativas em vez de uma string escapada: JSON.stringify({...}) para fetch, um objeto simples para Axios e json= com um dict Python (True, False, None) para requests e httpx. Assim fica fácil editar o payload e preenchê-lo com variáveis.

    Diferenças para ter em mente

    Navegadores não conseguem desativar a verificação de certificados nem rotear uma única requisição por um proxy, então -k e -x aparecem apenas como comentários no código fetch para navegador. O curl não segue redirecionamentos a menos que você passe -L, enquanto fetch, requests e Go os seguem por padrão. Um corpo enviado com -d sem Content-Type é codificado como formulário pelo curl; se parecer JSON, o conversor o envia como JSON e avisa você.

    Perguntas frequentes

    Meu comando curl é enviado a um servidor?
    Não. A análise e a geração de código rodam inteiramente no seu navegador. Comandos copiados do DevTools costumam conter cookies e tokens, por isso nada é enviado nem armazenado.
    Como copiar uma requisição como cURL no Chrome?
    Abra o DevTools (F12), vá até a aba Network, clique com o botão direito na requisição e escolha Copy → Copy as cURL (bash). A variante cmd para Windows também funciona aqui.
    Ele lida com upload de arquivos?
    Sim. -F name=@file vira FormData em JavaScript, um dict files= em Python, mime/multipart em Go e CURLFile em PHP. -d @file e -T file leem o corpo da requisição de um arquivo.
    O que acontece com opções que o conversor não conhece?
    Elas aparecem como avisos abaixo da saída, para que nada seja descartado silenciosamente. Flags que só afetam a saída, como -s, -v ou -o, são ignoradas porque não mudam a requisição.
    Devo usar requests ou httpx em Python?
    requests é o padrão consagrado para scripts síncronos. httpx tem uma API quase idêntica, adiciona suporte a HTTP/2 e async e não segue redirecionamentos a menos que você peça, o que se aproxima mais do comportamento do curl.

    Ferramentas relacionadas