Referência da API
Documentação da API de execução de código
Crie uma chave de API, mande-a no cabeçalho Authorization, envie o código-fonte num POST para https://api.onlinecompiler.io/api/run-code-sync/ e receba a saída de volta. As páginas de referência, em inglês, cobrem cada endpoint, nas 46 linguagens.
Also in EnglishTambién en español
Vindo de outro serviço? Veja como substituir a API do Piston(em inglês), migrar do Judge0(em inglês), substituir embeds do Trinket(em inglês), sair da API do JDoodle(em inglês), sair do Sphere Engine(em inglês), rodar o Moodle CodeRunner sem Jobe ou como o Judge0 e as alternativas se comparam(em inglês). Vai montar um corretor? Veja como criar um juiz online ou a API de correção automática de código.
https://api.onlinecompiler.ioTeste sem chave de API
Edite o programa ou a entrada dele e aperte Executar. Ele roda de verdade, e abaixo aparecem a requisição que o seu código enviaria e a resposta que ele receberia.
name = input()
print(f"Hello, {name}!") World
A requisição
curl -X POST https://api.onlinecompiler.io/api/run-code-sync/ \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"compiler": "python-3.14",
"code": "name = input()\nprint(f\"Hello, {name}!\")",
"input": "World"
}'A resposta
Aperte Executar no editor para ver a resposta.
Para enviar a partir do seu próprio código, crie uma chave de API grátis: 100.000 execuções por mês, sem cartão de crédito.
Autenticação
Toda requisição à API precisa de uma chave de API, enviada no cabeçalho Authorization.
Tipos de chave
Há dois tipos de chave de API, e cada um só vale para certos endpoints:
| Tipo de chave | Criada na | Endpoints permitidos | Para que serve |
|---|---|---|---|
| API | Página de chaves de API | API REST (síncrona e assíncrona) | Integrações no servidor, scripts, agentes de IA |
| WebSocket | Página de widgets | WebSocket e widget incorporável | Editores incorporados, apps no navegador |
Rode o seu primeiro programa
Com a sua chave de API no lugar de YOUR_API_KEY, isto roda um programa em Python com uma linha de entrada e espera o resultado:
curl -X POST https://api.onlinecompiler.io/api/run-code-sync/ \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"compiler": "python-3.14",
"code": "name = input()\nprint(f\"Hello, {name}!\")",
"input": "World"
}'A resposta traz a saída do programa, os erros, o código de saída, o tempo de execução em segundos e a memória em KB:
{
"output": "Hello, World!\n",
"error": "",
"status": "success",
"exit_code": 0,
"signal": null,
"truncated": false,
"time": "0.0248",
"total": "0.0330",
"memory": "8192"
}Todos os campos, o endpoint assíncrono e os códigos de saída estão em Executar código(em inglês). As outras linguagens usam o próprio id de compilador, listado em Compiladores(em inglês).
Uma descrição OpenAPI 3.1 da API REST está em https://api.onlinecompiler.io/openapi.json, para o Postman, o Swagger UI ou o gerador de ferramentas de um agente. Ela cobre run-code-sync, run-code, run-tests, compilers, limits, usage e health.
Todas as páginas da documentação
As páginas de referência estão em inglês, marcadas com EN.
- Executar código(em inglês) Rode um programa e receba a saída, os erros, o código de saída, o tempo de execução e a memória, na resposta ou por callback.
- Executar testes(em inglês) Corrija um programa com casos de teste: um veredito por teste, testes ocultos, checkers e pontuação.
- Compiladores(em inglês) Ids e versões dos compiladores, como cada linguagem é compilada e executada, e quanto tempo leva uma execução.
- WebSocket(em inglês) Envie os resultados para um app no navegador por Socket.IO, com uma chave de widget.
- Widget e iframe(em inglês) Incorpore um editor de código executável com uma tag script ou um iframe, e controle-o por JavaScript.
- Servidor MCP(em inglês) Deixe os agentes do Claude, ChatGPT, Cursor e VS Code rodarem e testarem código. Entre com a sua conta ou use uma chave de API.
- API do Judge0(em inglês) Endpoints compatíveis com o Judge0 CE: troque a URL base e a chave.
- API do Piston(em inglês) Os endpoints execute e runtimes do Piston, com a sua chave de API.
- API do Jobe (CodeRunner)(em inglês) A API REST do Jobe para o Moodle CodeRunner: configure o servidor Jobe e a chave.
- Limites e uso(em inglês) Limites de tempo, de memória e por minuto, o endpoint de uso e os limites mensais por chave.
Perguntas frequentes
- Qual endpoint devo usar?
- Na API do OnlineCompiler.io, use /api/run-code-sync/ para rodar um programa e esperar a saída; /api/run-code/ para enfileirar muitas execuções e receber cada resultado por callback; /api/run-tests/ para corrigir um programa com casos de teste; e o WebSocket ou o widget, com uma chave de widget, para rodar código a partir de uma página no navegador. Código escrito para o Judge0 ou o Piston pode manter as requisições e usar os endpoints compatíveis, e o Moodle CodeRunner pode usar os endpoints compatíveis com o Jobe no lugar de um servidor Jobe.
- Preciso de um SDK?
- Não. A API do OnlineCompiler.io é HTTPS e JSON, então curl, fetch, requests ou qualquer cliente HTTP funciona, e cada página da referência tem exemplos. O WebSocket usa Socket.IO, e agentes de IA se conectam pelo servidor MCP, que aceita login com OAuth ou uma chave de API.
- Quanto tempo leva uma execução?
- No OnlineCompiler.io, um programa pequeno em Python volta numa mediana de 0,56 segundos, da requisição à resposta, e um em Java em 2,25, a maior parte compilando. Cada execução tem limite de 30 segundos. A página Compiladores da referência, em inglês, tem o tempo medido de cada linguagem.