Freestyle VM API

APIs for managing lightweight virtual machines (VMs) to run your code in isolated environments.

Operations 37

GET /v1/vms List vms #
POST /v1/vms Create vm #
GET /v1/vms/builds/{build_id} Get build #
GET /v1/vms/builds/{build_id}/phases List build phases #
GET /v1/vms/snapshots List snapshots #
POST /v1/vms/snapshots Create snapshot #
GET /v1/vms/snapshots/{snapshot_id} Get snapshot #
DELETE /v1/vms/snapshots/{snapshot_id} Delete snapshot #
PATCH /v1/vms/snapshots/{snapshot_id} Update snapshot #
POST /v1/vms/{id}/resize Resize vm #
GET /v1/vms/{vm_id} Get vm #
DELETE /v1/vms/{vm_id} Delete vm #
POST /v1/vms/{vm_id}/await Wait vm #
GET /v1/vms/{vm_id}/build Get build for vm #
POST /v1/vms/{vm_id}/exec-await Exec await #
GET /v1/vms/{vm_id}/files/{filepath} Get file #
PUT /v1/vms/{vm_id}/files/{filepath} Put file #
POST /v1/vms/{vm_id}/fork Fork vm #
POST /v1/vms/{vm_id}/kill Kill vm #
POST /v1/vms/{vm_id}/optimize Optimize vm #
POST /v1/vms/{vm_id}/snapshot Snapshot vm #
POST /v1/vms/{vm_id}/start Start vm #
GET /v1/vms/{vm_id}/stats/stream Stats stream #
POST /v1/vms/{vm_id}/stop Stop vm #
POST /v1/vms/{vm_id}/suspend Suspend vm #
POST /v1/vms/{vm_id}/systemd/restart Batch restart services #
GET /v1/vms/{vm_id}/systemd/services List services #
POST /v1/vms/{vm_id}/systemd/services Create service #
DELETE /v1/vms/{vm_id}/systemd/services/{service_id} Delete service #
GET /v1/vms/{vm_id}/systemd/services/{service_id}/logs Get service logs #
GET /v1/vms/{vm_id}/systemd/services/{service_id}/status Get service status #
POST /v1/vms/{vm_id}/systemd/start Batch start services #
POST /v1/vms/{vm_id}/systemd/stop Batch stop services #
GET /v1/vms/{vm_id}/terminals List terminals #
GET /v1/vms/{vm_id}/terminals/{terminal_id}/logs Get terminal logs #
GET /v1/vms/{vm_id}/terminals/{terminal_id}/xterm-256color Get terminal xterm #
POST /v1/vms/{vm_id}/watch-files Watch files #

Documentation

📖
Documentation
https://docs.freestyle.sh/v2/vms/about
📖
Documentation
https://docs.freestyle.sh/v2/vms/lifecycle
📖
Documentation
https://docs.freestyle.sh/v2/vms/configuration
📖
Documentation
https://docs.freestyle.sh/v2/vms/templates-snapshots
📖
Documentation
https://docs.freestyle.sh/v2/vms/ssh-access
📖
Documentation
https://docs.freestyle.sh/v2/git/about
📖
Documentation
https://docs.freestyle.sh/v2/git/repos
📖
Documentation
https://docs.freestyle.sh/v2/git/search
📖
Documentation
https://docs.freestyle.sh/v2/git/hooks
📖
Documentation
https://docs.freestyle.sh/v2/git/github-sync
📖
Documentation
https://docs.freestyle.sh/v2/git/advanced/database-api
📖
Documentation
https://docs.freestyle.sh/v2/about
📖
Documentation
https://docs.freestyle.sh/v2/domains
📖
Documentation
https://docs.freestyle.sh/v2/domains/deploy-to-custom-domain
📖
Documentation
https://docs.freestyle.sh/v2/serverless/runs/about
📖
Documentation
https://docs.freestyle.sh/v2/serverless/runs/code-playground
📖
Documentation
https://docs.freestyle.sh/v2/serverless/runs/egress
📖
Documentation
https://docs.freestyle.sh/v2/serverless/runs/errors
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/about
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/configuration
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/cron-jobs
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/guides/nextjs
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/guides/vite
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/guides/static

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/freestyle-sh-vm-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

freestyle-sh-vm-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Freestyle VMs VM API
  version: 0.1.0
  description: Manage Linux microVMs designed for AI agents — create, snapshot, fork, suspend, resume, exec, file I/O, watch, systemd services, terminals, and resize. Real Linux VMs that start in under 600ms.
  contact:
    name: Ben
    email: ben@freestyle.sh
  license:
    name: Closed Source
servers:
- url: https://api.freestyle.sh
  description: Production
security:
- bearerAuth: []
tags:


# --- truncated at 32 KB (108 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/freestyle-sh/refs/heads/main/openapi/freestyle-sh-vm-api-openapi.yml