Documentation

get-started

Quickstart

Sign up, copy your API key, run a sandbox hello on public HTTPS.

1. Account

1. Sign up

2. Open Billing — free signup credits are available; subscribe to Starter for entitlement and higher quotas

3. Copy your API key (key-…) from Billing success or Account

export FYSTASH_API=https://api.fystash.ai
export FYSTASH_API_KEY='key-…'

Auth header: Authorization: Bearer $FYSTASH_API_KEY

2. Prefer MCP

Install and configure `fystash-mcp`, then ask your coding agent to create a room and run echo hello.

3. Or REST hello

curl -fsS "$FYSTASH_API/health"

ROOM=room-hello-$RANDOM
curl -fsS -X POST "$FYSTASH_API/v1/rooms" \
  -H "Authorization: Bearer $FYSTASH_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{\"room_id\":\"$ROOM\"}"

curl -fsS -X POST "$FYSTASH_API/v1/rooms/$ROOM/sandboxes/from-template" \
  -H "Authorization: Bearer $FYSTASH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"agent_id":"a1","guest_cid":9100,"memory_mib":256}'

curl -fsS -X DELETE "$FYSTASH_API/v1/rooms/$ROOM" \
  -H "Authorization: Bearer $FYSTASH_API_KEY"

4. Or TypeScript SDK

npm install @fystash_ai/sdk
import { RoomClient } from "@fystash_ai/sdk";

const client = new RoomClient({
  baseUrl: process.env.FYSTASH_API!,
  apiKey: process.env.FYSTASH_API_KEY!,
});
const room = `room-hello-${Date.now()}`;
await client.createRoom(room);
await client.createFromTemplate(room, "a1", { guestCid: 9100, memoryMib: 256 });
await client.destroy(room);

Topology

Production is GCP nested KVM (topology=nested). Check GET /health before claiming readiness.

Next