Changelog

What's new in the API

Changes to the OnlineCompiler.io API, its languages and its plans, newest first. Dates are when a change went live, in UTC.

By the OnlineCompiler.io team. Updated .

19 October 2026

  • Service health check. GET /api/health/ sends a one-line program through the job queue into a real sandbox and answers 200, or 503 naming the check that failed. Point an uptime monitor at it. See service health.
  • Test-case judging. POST /api/run-tests/ runs one program against a list of tests and returns a verdict per test, an overall verdict and a score. It has the trim, exact, tokens and float checkers, hidden tests and all-or-nothing, percent or weighted scoring. The MCP server gained a matching run_tests tool. See run tests.
  • Per-request time limits. time_limit stops a run at the number of seconds you set, up to 30, and compiling before the run does not count. Judge0's cpu_time_limit and wall_time_limit and Piston's run_timeout are honoured the same way. See run code.
  • Compile once for C, C++ and Java tests. A run-tests request for gcc-15, g++-15 or openjdk-25 with more tests than run at once compiles the program a single time. In our measurements, 20-test C++ and Java requests finished about twice as fast.
  • Data science in Python. python-3.14 now includes numpy, pandas 3, scipy, scikit-learn, matplotlib, seaborn, statsmodels, sympy, openpyxl, pillow and duckdb. The new python-3.14-pandas2 runtime keeps pandas 2 for question banks written against it. See code interpreter API.
  • Files in and out. Send up to 8 input files (1 MB in total) in files. Files a program writes to $OUTPUT_DIR come back in the response (png, svg, csv, json and txt; up to 8 files and 2 MB per run), and plt.show() saves each chart as a PNG. Judge0 additional_files and extra Piston files entries arrive as input files. See files in and out.
  • A rows checker for data questions: the output must hold the expected rows in any order, with numbers compared within a tolerance.
  • SQL on DuckDB. New language duckdb-1.5, for 46 in all. See languages.
  • Process limit stated exactly. A run may have 16 processes alive at once; more stops it with exit code 71 and a "Too many processes" error. The docs previously said 64. See limits.
  • Docs by topic. The documentation is now one page per topic, with the old /docs#section links redirected. See the docs.

18 October 2026

  • 45 languages. Over 17 and 18 October the list grew from 12 languages to 45, adding among others Kotlin, Swift, R, Julia, COBOL, Fortran, OCaml, Elixir, Zig and Ada. See languages.
  • .NET 10. C#, F# and Visual Basic moved from .NET 9 to .NET 10 ahead of .NET 9's end of support. The old dotnet-*-9 ids still work and run on .NET 10.
  • Ada 2022. gnat-15 compiles Ada 2022 syntax.

17 October 2026

  • Judge0- and Piston-compatible APIs. Judge0 CE and Piston v2 clients switch by changing their base URL and key. See Judge0 API and Piston API.
  • 100,000 free runs a month, commercial use included, with paid plans from $10 a month. See pricing.
  • Usage you can query. GET /api/usage/ and GET /api/limits/, optional monthly limits per API key, and emails at 80% and 100% of an allowance. See limits and usage.
  • A new widget. A fixed-size editor that connects only when used, a JavaScript API to control it, and an iframe embed. See widget and iframe.
  • MCP server in the official registry. AI agents in Claude, Cursor and VS Code can run code through https://api.onlinecompiler.io/mcp. See MCP code execution.
  • Faster C#. C# programs compile with csc directly, cutting a typical run from about 18 seconds to under 3.

Changes before 17 October 2026 are not listed.