your serverless backend

Functions, queues, schedulers, cron, key-value and object storage as APIs. No servers to run.

Compose primitives
JavaScript
// Upload file → Store metadata → Enqueue job → Function processes
const BASE = 'https://api.rocketstack.dev';

// 1. Upload file to Storage (multipart)
const form = new FormData();
form.append('file', file);
form.append('path', 'uploads/report.pdf');
await fetch(BASE + '/storage/objects', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer API_KEY' },
  body: form
});

// 2. Store metadata in KV (key in path)
await fetch(BASE + '/kv/items/file-report-pdf', {
  method: 'PUT',
  headers: { 'Authorization': 'Bearer API_KEY', 'Content-Type': 'application/json' },
  body: JSON.stringify({ value: { uploaded: Date.now() } })
});

// 3. Enqueue to queue (queue has deliveryTarget → function)
await fetch(BASE + '/queues/qu_xxx/messages', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer API_KEY', 'Content-Type': 'application/json' },
  body: JSON.stringify({ payload: { file: 'report.pdf' } })
});

// 4. Schedule nightly sync via Cron
await fetch(BASE + '/cron', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer API_KEY', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    name: 'nightly-sync',
    schedule: { expression: '0 2 * * *' },
    deliveryTarget: { type: 'function', functionId: 'fn_sync' }
  })
});
Storage KV Queue Function
Compose Primitives highlighted: common flow

Primitives that work together

Queues trigger functions. Cron schedules jobs. KV stores state. Compose what you need — no glue code required.

  • Compose primitives:Build workflows without managing infra.
  • Reliable by default:Retries, timeouts, idempotency, audit trails.
  • Any stack:REST + SDKs generated from OpenAPI.

Start with a single API key.

The APIs

Build with powerful primitives

Functions, queues, schedulers, cron, storage — no infrastructure to run.

Functions API
# Deploy functions from an MCP-enabled client.

# Deploy a function via MCP
mcp.call("rocketstack.functions.deploy", {
  "name": "stripe-webhook",
  "runtime": "nodejs",
  "entry": "index.ts",
  "bundlePath": "./dist.zip",
  "triggers": [{ "type": "http" }]
})

# Get the deployed function
mcp.call("rocketstack.functions.get", { "id": "fn_123" })

# List all functions
mcp.call("rocketstack.functions.list", {})

# Invoke a function
mcp.call("rocketstack.functions.invoke", {
  "id": "fn_123",
  "payload": { "event": "payment.success" }
})

SDKs for your stack

Official clients generated from our OpenAPI spec.

Use the same API key. Works across all primitives.

View SDK docs

Integrations

Deploy and manage via API, OpenAPI tooling, and MCP.

Works great for

vibe coded frontendswebhooksbackground jobsfile uploadsbilling events

Observability

See requests, errors, and latency for your API traffic.

Read guide

Get started in 3 steps

Sign up, get your API key, and integrate in minutes.
    Sign up
    Sign upCreate your account at RocketStack.dev. No credit card required to start.
    Create free account
    Create free accountInstant key in your dashboard. Copy it and you're ready.
    Integrate
    IntegrateCall our REST APIs from your app. curl, fetch, or any HTTP client.

Get your API key and start building

  • No credit card required
  • Instant key in your dashboard
  • Use curl, fetch, or any HTTP client

Then see how developers combine primitives in practice.

Explore workflows

Ready to ship faster?

Get your API key and start integrating in minutes.