{"openapi":"3.1.0","info":{"title":"Code Execution API","version":"1.0.0","description":"Compile and run code in 35+ programming languages from a single API call — no key, no container to manage. Send source code plus an optional stdin, compiler options and runtime arguments, pick a language (python, c++, java, go, rust, c#, javascript, typescript, ruby, php, kotlin, swift, haskell, and more) or an explicit compiler version, and get back the exit code, stdout, stderr and compiler messages. List every supported language with its default compiler, browse the full compiler catalogue (175+ compilers across versions) and filter it by language. Set save=true to also get a shareable permlink. Execution runs in a sandboxed upstream and is always live (never cached). 4 endpoints, backed by the public Wandbox service. Built for online IDEs, coding-education platforms, automated grading, interview tools and \"run this snippet\" features. No upstream key, no cache.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/codeexec-api","description":"oanor gateway"}],"tags":[{"name":"Execute"},{"name":"Catalogue"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/run":{"get":{"operationId":"get_v1_run","tags":["Execute"],"summary":"Compile + run code","description":"","parameters":[{"name":"language","in":"query","required":true,"description":"Language (e.g. python, c++, go, rust, java) — or pass compiler","schema":{"type":"string"},"example":"python"},{"name":"code","in":"query","required":true,"description":"Source code","schema":{"type":"string"},"example":"print(sum(range(10)))"},{"name":"stdin","in":"query","required":false,"description":"Standard input","schema":{"type":"string"}},{"name":"options","in":"query","required":false,"description":"Wandbox option set (comma-separated)","schema":{"type":"string"}},{"name":"compiler","in":"query","required":false,"description":"Explicit compiler name (overrides language)","schema":{"type":"string"}},{"name":"args","in":"query","required":false,"description":"Runtime arguments (raw, newline-separated)","schema":{"type":"string"}},{"name":"save","in":"query","required":false,"description":"true → also return a shareable permlink","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"stderr":"","stdout":"","compiler":"pypy-3.10-v7.3.17","exit_code":126,"compiler_error":"Error: OCI runtime error: crun: clone: Resource temporarily unavailable\n","compiler_message":"Error: OCI runtime error: crun: clone: Resource temporarily unavailable\n"},"meta":{"timestamp":"2026-06-02T16:53:08.261Z","request_id":"5adfc684-2d18-4d5c-817e-dfc821c7294d"},"status":"ok","message":"Compile + run code","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/compilers":{"get":{"operationId":"get_v1_compilers","tags":["Catalogue"],"summary":"Compiler list","description":"","parameters":[{"name":"language","in":"query","required":false,"description":"Filter by language","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"count":175,"compilers":[{"name":"gcc-head-c","version":"17.0.0 20260513 (experimental)","language":"C"},{"name":"gcc-13.2.0-c","version":"13.2.0","language":"C"},{"name":"gcc-12.3.0-c","version":"12.3.0","language":"C"},{"name":"gcc-11.4.0-c","version":"11.4.0","language":"C"},{"name":"gcc-10.5.0-c","version":"10.5.0","language":"C"},{"name":"gcc-9.3.0-c","version":"9.3.0","language":"C"},{"name":"gcc-8.4.0-c","version":"8.4.0","language":"C"},{"name":"gcc-7.5.0-c","version":"7.5.0","language":"C"},{"name":"gcc-6.5.0-c","version":"6.5.0","language":"C"},{"name":"gcc-head-pp","version":"17.0.0 20260513 (experimental)","language":"CPP"},{"name":"gcc-head","version":"17.0.0 20260513 (experimental)","language":"C++"},{"name":"gcc-13.2.0","version":"13.2.0","language":"C++"},{"name":"gcc-12.3.0","version":"12.3.0","language":"C++"},{"name":"gcc-11.4.0","version":"11.4.0","language":"C++"},{"name":"gcc-10.5.0","version":"10.5.0","language":"C++"},{"name":"gcc-9.3.0","version":"9.3.0","language":"C++"},{"name":"gcc-8.4.0","version":"8.4.0","language":"C++"},{"name":"gcc-7.5.0","version":"7.5.0","language":"C++"},{"name":"gcc-6.5.0","version":"6.5.0","language":"C++"},{"name":"clang-head-c","version":"23.0.0git (https://github.com/llvm/llvm-project.git e8c6318c2a07f8eb4643db610854b0e993a4ed6e)","language":"C"},{"name":"clang-17.0.1-c","version":"17.0.1","language":"C"},{"name":"clang-16.0.4-c","version":"16.0.4","language":"C"},{"name":"clang-15.0.7-c","version":"15.0.7","language":"C"},{"name":"clang-14.0.6-c","version":"14.0.6","language":"C"},{"name":"clang-head-pp","version":"23.0.0git (https://github.com/llvm/llvm-project.git e8c6318c2a07f8eb4643db610854b0e993a4ed6e)","language":"CPP"},{"name":"clang-head","version":"23.0.0git (https://github.com/llvm/llvm-project.git e8c6318c2a07f8eb4643db610854b0e993a4ed6e)","language":"C++"},{"name":"clang-17.0.1","version":"17.0.1","language":"C++"},{"name":"clang-16.0.4","version":"16.0.4","language":"C++"},{"name":"clang-15.0.7","version":"15.0.7","language":"C++"},{"name":"clang-14.0.6","version":"14.0.6","language":"C++"},{"name":"mono-6.12.0.199","version":"6.12.0.199","language":"C#"},{"name":"mono-5.20.1.34","version":"5.20.1.34","language":"C#"},{"name":"erlang-27.1","version":"27.1","language":"Erlang"},{"name":"erlang-26.2.5.3","version":"26.2.5.3","language":"Erlang"},{"name":"erlang-25.3.2.13","version":"25.3.2.13","language":"Erlang"},{"name":"elixir-1.17.3","version":"1.17.3","language":"Elixir"},{"name":"elixir-1.16.3","version":"1.16.3","language":"Elixir"},{"name":"ghc-9.10.1","version":"9.10.1","language":"Haskell"},{"name":"ghc-9.0.1","version":"9.0.1","language":"Haskell"},{"name":"ghc-8.10.4","version":"8.10.4","language":"Haskell"},{"name":"dmd-2.109.1","version":"2.109.1","language":"D"},{"name":"gdc-head","version":"","language":"D"},{"name":"ldc-1.39.0","version":"1.39.0 dmd-2.109.1","language":"D"},{"name":"openjdk-jdk-22+36","version":"jdk-22+36","language":"Java"},{"name":"openjdk-jdk-21+35","version":"jdk-21+35","language":"Java"},{"name":"rust-1.82.0","version":"1.82.0","language":"Rust"},{"name":"rust-1.81.0","version":"1.81.0","language":"Rust"},{"name":"rust-1.80.1","version":"1.80.1","language":"Rust"},{"name":"rust-1.79.0","version":"1.79.0","language":"Rust"},{"name":"rust-1.78.0","version":"1.78.0","language":"Rust"},{"name":"rust-1.77.2","version":"1.77.2","language":"Rust"},{"name":"rust-1.76.0","version":"1.76.0","language":"Rust"},{"name":"rust-1.75.0","version":"1.75.0","language":"Rust"},{"name":"rust-1.74.1","version":"1.74.1","language":"Rust"},{"name":"rust-1.73.0","version":"1.73.0","language":"Rust"},{"name":"rust-1.72.1","version":"1.72.1","language":"Rust"},{"name":"rust-1.71.1","version":"1.71.1","language":"Rust"},{"name":"rust-1.70.0","version":"1.70.0","language":"Rust"},{"name":"rust-1.69.0","version":"1.69.0","language":"Rust"},{"name":"rust-1.68.2","version":"1.68.2","language":"Rust"},{"name":"rust-1.67.1","version":"1.67.1","language":"Rust"},{"name":"rust-1.66.1","version":"1.66.1","language":"Rust"},{"name":"rust-1.65.0","version":"1.65.0","language":"Rust"},{"name":"rust-1.64.0","version":"1.64.0","language":"Rust"},{"name":"cpython-head","version":"","language":"Python"},{"name":"cpython-2.7-head","version":"","language":"Python"},{"name":"cpython-3.14.0","version":"3.14.0","language":"Python"},{"name":"cpython-3.13.8","version":"3.13.8","language":"Python"},{"name":"cpython-3.12.7","version":"3.12.7","language":"Python"},{"name":"cpython-3.11.10","version":"3.11.10","language":"Python"},{"name":"cpython-3.10.15","version":"3.10.15","language":"Python"},{"name":"cpython-3.9.20","version":"3.9.20","language":"Python"},{"name":"cpython-3.8.20","version":"3.8.20","language":"Python"},{"name":"cpython-3.7.17","version":"3.7.17","language":"Python"},{"name":"cpython-2.7.18","version":"2.7.18","language":"Python"},{"name":"ruby-4.0.2","version":"4.0.2","language":"Ruby"},{"name":"ruby-3.4.9","version":"3.4.9","language":"Ruby"},{"name":"ruby-3.3.11","version":"3.3.11","language":"Ruby"},{"name":"ruby-3.2.11","version":"3.2.11","language":"Ruby"},{"name":"ruby-3.1.7","version":"3.1.7","language":"Ruby"},{"name":"ruby-3.0.7","version":"3.0.7","language":"Ruby"},{"name":"mruby-3.0.0","version":"3.0.0","language":"Ruby"},{"name":"mruby-2.1.2","version":"2.1.2","language":"Ruby"},{"name":"scala-3.5.1","version":"3.5.1","language":"Scala"},{"name":"scala-3.3.4","version":"3.3.4","language":"Scala"},{"name":"scala-2.13.15","version":"2.13.15","language":"Scala"},{"name":"groovy-4.0.23","version":"4.0.23","language":"Groovy"},{"name":"nodejs-20.17.0","version":"20.17.0","language":"JavaScript"},{"name":"nodejs-18.20.4","version":"18.20.4","language":"JavaScript"},{"name":"swift-6.0.1","version":"6.0.1","language":"Swift"},{"name":"swift-5.10.1","version":"5.10.1","language":"Swift"},{"name":"perl-5.42.0","version":"5.42.0","language":"Perl"},{"name":"perl-5.40.0","version":"5.40.0","language":"Perl"},{"name":"perl-5.38.0","version":"5.38.0","language":"Perl"},{"name":"perl-5.36.0","version":"5.36.0","language":"Perl"},{"name":"perl-5.34.0","version":"5.34.0","language":"Perl"},{"name":"perl-5.33.8","version":"5.33.8","language":"Perl"},{"name":"perl-5.32.1","version":"5.32.1","language":"Perl"},{"name":"perl-5.30.3","version":"5.30.3","language":"Perl"},{"name":"php-8.3.12","version":"8.3.12","language":"PHP"},{"name":"php-8.2.24","version":"8.2.24","language":"PHP"},{"name":"php-8.1.30","version":"8.1.30","language":"PHP"},{"name":"php-8.0.30","version":"8.0.30","language":"PHP"},{"name":"php-7.4.33","version":"7.4.33","language":"PHP"},{"name":"php-5.6.40","version":"5.6.40","language":"PHP"},{"name":"lua-5.4.7","version":"5.4.7","language":"Lua"},{"name":"lua-5.3.6","version":"5.3.6","language":"Lua"},{"name":"lua-5.2.4","version":"5.2.4","language":"Lua"},{"name":"luajit-2.0.5","version":"2.0.5","language":"Lua"},{"name":"luajit-2.0.4","version":"2.0.4","language":"Lua"},{"name":"luajit-2.0.3","version":"2.0.3","language":"Lua"},{"name":"sqlite-3.46.1","version":"3.46.1","language":"SQL"},{"name":"sqlite-3.35.5","version":"3.35.5","language":"SQL"},{"name":"fpc-3.2.2","version":"3.2.2","language":"Pascal"},{"name":"clisp-2.49","version":"2.49","language":"Lisp"},{"name":"lazyk","version":"","language":"Lazy K"},{"name":"vim-9.1.0758","version":"9.1.0758","language":"Vim script"},{"name":"vim-8.2.5172","version":"8.2.5172","language":"Vim script"},{"name":"pypy-3.10-v7.3.17","version":"7.3.17 cpython-3.10.14","language":"Python"},{"name":"pypy-3.9-v7.3.16","version":"7.3.16 cpython-3.9.19","language":"Python"},{"name":"pypy-3.8-v7.3.11","version":"7.3.11 cpython-3.8.16","language":"Python"},{"name":"pypy-3.7-v7.3.9","version":"7.3.9 cpython-3.7.13","language":"Python"},{"name":"pypy-2.7-v7.3.17","version":"7.3.17 cpython-2.7.18","language":"Python"},{"name":"ocaml-5.2.0","version":"5.2.0","language":"OCaml"},{"name":"ocaml-4.14.2","version":"4.14.2","language":"OCaml"},{"name":"go-1.23.2","version":"1.23.2","language":"Go"},{"name":"go-1.22.8","version":"1.22.8","language":"Go"},{"name":"go-1.16.3","version":"1.16.3","language":"Go"},{"name":"go-1.15.11","version":"1.15.11","language":"Go"},{"name":"go-1.14.15","version":"1.14.15","language":"Go"},{"name":"sbcl-2.4.9","version":"2.4.9","language":"Lisp"},{"name":"bash","version":"5.2.21(1)-release","language":"Bash script"},{"name":"pony-0.58.5","version":"0.58.5","language":"Pony"},{"name":"crystal-1.13.3","version":"1.13.3","language":"Crystal"},{"name":"nim-2.2.10","version":"2.2.10","language":"Nim"},{"name":"nim-2.2.8","version":"2.2.8","language":"Nim"},{"name":"nim-2.2.6","version":"2.2.6","language":"Nim"},{"name":"nim-2.2.4","version":"2.2.4","language":"Nim"},{"name":"nim-2.2.2","version":"2.2.2","language":"Nim"},{"name":"nim-2.2.0","version":"2.2.0","language":"Nim"},{"name":"nim-2.0.16","version":"2.0.16","language":"Nim"},{"name":"nim-2.0.14","version":"2.0.14","language":"Nim"},{"name":"nim-2.0.10","version":"2.0.10","language":"Nim"},{"name":"nim-2.0.8","version":"2.0.8","language":"Nim"},{"name":"nim-2.0.6","version":"2.0.6","language":"Nim"},{"name":"nim-2.0.4","version":"2.0.4","language":"Nim"},{"name":"nim-2.0.2","version":"2.0.2","language":"Nim"},{"name":"nim-2.0.0","version":"2.0.0","language":"Nim"},{"name":"nim-1.6.20","version":"1.6.20","language":"Nim"},{"name":"nim-1.6.18","version":"1.6.18","language":"Nim"},{"name":"nim-1.6.14","version":"1.6.14","language":"Nim"},{"name":"nim-1.6.12","version":"1.6.12","language":"Nim"},{"name":"nim-1.6.10","version":"1.6.10","language":"Nim"},{"name":"nim-1.6.8","version":"1.6.8","language":"Nim"},{"name":"nim-1.6.6","version":"1.6.6","language":"Nim"},{"name":"nim-1.6.4","version":"1.6.4","language":"Nim"},{"name":"nim-1.6.0","version":"1.6.0","language":"Nim"},{"name":"nim-1.4.8","version":"1.4.8","language":"Nim"},{"name":"nim-1.4.6","version":"1.4.6","language":"Nim"},{"name":"nim-1.2.8","version":"1.2.8","language":"Nim"},{"name":"nim-1.0.10","version":"1.0.10","language":"Nim"},{"name":"openssl-3.3.2","version":"3.3.2","language":"OpenSSL"},{"name":"openssl-1.1.1w","version":"1.1.1w","language":"OpenSSL"},{"name":"openssl-1.0.2u","version":"1.0.2u","language":"OpenSSL"},{"name":"openssl-0.9.8zh","version":"0.9.8zh","language":"OpenSSL"},{"name":"dotnetcore-8.0.402","version":"8.0.402","language":"C#"},{"name":"dotnetcore-6.0.425","version":"6.0.425","language":"C#"},{"name":"r-4.4.1","version":"4.4.1","language":"R"},{"name":"typescript-5.6.2","version":"5.6.2","language":"TypeScript"},{"name":"julia-1.10.5","version":"1.10.5","language":"Julia"},{"name":"julia-1.6.1","version":"1.6.1","language":"Julia"},{"name":"julia-1.0.5","version":"1.0.5","language":"Julia"},{"name":"zig-head","version":"0.17.0-dev.296+a85a29ae4","language":"Zig"},{"name":"zig-0.13.0","version":"0.13.0","language":"Zig"},{"name":"zig-0.9.1","version":"0.9.1","language":"Zig"}]},"meta":{"timestamp":"2026-06-02T16:53:08.373Z","request_id":"ea1a558c-69ee-4795-9cd7-3208f3be7083"},"status":"ok","message":"Compiler list","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/languages":{"get":{"operationId":"get_v1_languages","tags":["Catalogue"],"summary":"Supported languages","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"count":35,"languages":[{"language":"Bash script","versions":1,"default_compiler":"bash"},{"language":"C","versions":14,"default_compiler":"clang-head-c"},{"language":"C#","versions":4,"default_compiler":"dotnetcore-8.0.402"},{"language":"C++","versions":14,"default_compiler":"clang-head"},{"language":"CPP","versions":2,"default_compiler":"clang-head-pp"},{"language":"Crystal","versions":1,"default_compiler":"crystal-1.13.3"},{"language":"D","versions":3,"default_compiler":"dmd-2.109.1"},{"language":"Elixir","versions":2,"default_compiler":"elixir-1.17.3"},{"language":"Erlang","versions":3,"default_compiler":"erlang-27.1"},{"language":"Go","versions":5,"default_compiler":"go-1.23.2"},{"language":"Groovy","versions":1,"default_compiler":"groovy-4.0.23"},{"language":"Haskell","versions":3,"default_compiler":"ghc-9.10.1"},{"language":"Java","versions":2,"default_compiler":"openjdk-jdk-22+36"},{"language":"JavaScript","versions":2,"default_compiler":"nodejs-20.17.0"},{"language":"Julia","versions":3,"default_compiler":"julia-1.10.5"},{"language":"Lazy K","versions":1,"default_compiler":"lazyk"},{"language":"Lisp","versions":2,"default_compiler":"clisp-2.49"},{"language":"Lua","versions":6,"default_compiler":"lua-5.4.7"},{"language":"Nim","versions":27,"default_compiler":"nim-2.2.10"},{"language":"OCaml","versions":2,"default_compiler":"ocaml-5.2.0"},{"language":"OpenSSL","versions":4,"default_compiler":"openssl-3.3.2"},{"language":"Pascal","versions":1,"default_compiler":"fpc-3.2.2"},{"language":"Perl","versions":8,"default_compiler":"perl-5.42.0"},{"language":"PHP","versions":6,"default_compiler":"php-8.3.12"},{"language":"Pony","versions":1,"default_compiler":"pony-0.58.5"},{"language":"Python","versions":16,"default_compiler":"pypy-3.10-v7.3.17"},{"language":"R","versions":1,"default_compiler":"r-4.4.1"},{"language":"Ruby","versions":8,"default_compiler":"ruby-4.0.2"},{"language":"Rust","versions":19,"default_compiler":"rust-1.82.0"},{"language":"Scala","versions":3,"default_compiler":"scala-3.5.1"},{"language":"SQL","versions":2,"default_compiler":"sqlite-3.46.1"},{"language":"Swift","versions":2,"default_compiler":"swift-6.0.1"},{"language":"TypeScript","versions":1,"default_compiler":"typescript-5.6.2"},{"language":"Vim script","versions":2,"default_compiler":"vim-9.1.0758"},{"language":"Zig","versions":3,"default_compiler":"zig-head"}]},"meta":{"timestamp":"2026-06-02T16:53:08.482Z","request_id":"c91fdeb0-19d1-4b33-9449-92de19269a87"},"status":"ok","message":"Supported languages","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"auth":"none upstream; this gateway requires x-api-key","name":"Code Execution API","note":"Compile and run code in 35+ languages. Pass ?language= (e.g. python, c++, go, rust, java) or an explicit ?compiler= (see /v1/compilers), with code, optional stdin, options, compiler_options and args. Returns exit_code, stdout, stderr and compiler messages. Set save=true for a shareable permlink. Execution is live and never cached.","source":"Wandbox (wandbox.org) — public compile/run, no key","endpoints":4},"meta":{"timestamp":"2026-06-02T16:53:08.581Z","request_id":"16032aba-4b32-4901-a7b8-c964d9237cae"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":2100,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":940,"monthly_call_quota":46000,"rps_limit":8,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2950,"monthly_call_quota":235000,"rps_limit":20,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":6400,"monthly_call_quota":1260000,"rps_limit":50,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/codeexec-api"}