Turn any cURL command into fetch, axios, or Python requests code. Parsed locally — safe for real tokens.
Paste a cURL command to translate it into fetch, axios, or Python code
cURL parsing and code generation run entirely in your browser. Your command (including any tokens!) is never uploaded.
A shell tokenizer first splits the command, honoring single quotes (no escapes inside), double quotes (\\" \\$ escapes), and backslash continuations. Then a flag pass maps each option: -H becomes a header pair, repeated -d flags join with & exactly as cURL sends them, -F flags signal multipart FormData, -u becomes HTTP Basic auth, and the method defaults to POST when a body exists, GET otherwise. Output is copy-paste runnable — but review it: secrets in the command end up in the code.
Quote handling follows real shell semantics: single quotes are literal, double quotes allow escapes, backslash continues lines.
Kai copies a working cURL from a Stripe-style dashboard and needs it inside his Next.js route handler.
Convert cURL to JavaScript Fetch, Axios, or Python requests online free. Everything runs locally; nothing is uploaded.
FreeToolHub cURL to Fetch Converter is a free browser-based tool — convert cURL to JavaScript Fetch, Axios, or Python requests online free. No signup, no upload; everything runs locally in your browser.
Converta comandos cURL para código JavaScript Fetch, Axios ou Python requests online gratuitamente. Lida com strings entre aspas, caracteres de escape, cabeçalhos repetidos, corpos -d unidos, uploads de arquivos -F, autenticação, redirecionamentos e flags inseguras. Visualização ao vivo do pedido analisado e pronto para copiar. 100% baseado em navegador.
A documentação de API fala em cURL; seu aplicativo fala em Fetch, Axios ou Python requests. Digitar novamente um comando complexo - cabeçalhos, autenticação, corpos multipart - é onde vivem os bugs de transcrição. Colar o comando e obter código correto e idiomático no seu cliente HTTP real remove toda a classe de erros de cópia.
O tokenizador segue as regras do shell Unix: strings entre aspas simples são literais, strings entre aspas duplas respeitam escapes de barra invertida e barras invertidas no final unem linhas continuadas. O pedido analisado - método, URL, cabeçalhos, corpo, autenticação - é visualizado ao vivo antes da geração, e todo o pipeline é executado no seu navegador para que comandos com credenciais nunca deixem a página.
O código fetch gerado é um ponto de partida, e uma rápida revisão o torna pronto para produção. Primeiro, cabeçalhos: as aspas simples do cURL desaparecem em JavaScript, então strings contendo aspas simples precisam de escape - o gerador emite strings entre aspas duplas para essas, vale a pena verificar quando o corpo contém ambos os tipos de aspa. Segundo, tratamento de erros: fetch resolve com sucesso em HTTP 404 e 500, ao contrário do axios, então uma implementação real precisa de uma verificação res.ok que o one-liner não inclui. Terceiro, credenciais: a flag -b cookie do cURL se torna um cabeçalho Cookie, mas nos navegadores o cookie jar é gerenciado pela opção credentials em vez disso - pedidos same-origin geralmente querem credentials: 'include' em vez de um cabeçalho construído manualmente. As traduções axios e Python têm a mesma forma: corretas como esqueleto, revise antes de enviar.
O parser lê -X (método), -H (cabeçalhos repetidos), -d (múltiplos corpos são unidos com e comercial), -F (multipart com detecção @file), -u (autenticação básica), --url, -L (seguir redirecionamentos), -k (inseguro), -I (HEAD), -A (user agent), -e (referer) e -b (cookies). Flags não suportadas são relatadas em vez de serem descartadas silenciosamente.
Os comandos são tokenizados com um parser estilo shlex: aspas simples protegem tudo dentro delas, aspas duplas permitem escapes de barra invertida e continuidades de linha com barra invertida unem comandos de várias linhas. Isso reflete como um shell Unix analisaria o mesmo comando.
Não. A análise e geração de código são executadas inteiramente no seu navegador - um comando cURL contendo um cabeçalho Authorization nunca deixa a página. É exatamente por que a ferramenta existe: colar comandos cURL com credenciais em sites aleatórios é um vetor de vazamento real.
cURL expressa um pedido como flags de linha de comando enquanto fetch o expressa como um objeto options - o gerador reorganiza em vez de traduzir palavra por palavra. Flags como -X são mescladas em method, -H em headers, -d em body e -u em um cabeçalho Authorization. O pedido semântico é idêntico mesmo quando o layout não é.
Sim para a sintaxe de formulário cURL -F: o gerador mapeia cada campo -F em FormData e descarta o cabeçalho Content-Type manual, porque o navegador deve definir o limite multipart por si só. Referências de arquivo binário como @photo.jpg se tornam uma nota na saída - anexe um arquivo ou Blob real do seu código nesse campo.
What do you call a really smart cookie?
No signups, no data sold. Every tool is free to use — the free tier allows 5 downloads or saves per day, and the optional Pro plan ($7/mo, $59/yr) adds unlimited downloads, batch processing, white-label exports and an ad-free experience.
☕Support me on Ko-fi— support the free tier100% of proceeds go towards hosting & building more free tools.