Developer Platform · API v1

Build with GuestOS.

Public REST API, outbound webhooks, OpenAPI 3.1 spec, idempotency keys, Stripe-style errors. Everything you need to plug GuestOS into your CRM, dashboard, or Zapier flow in minutes.

API included from BUSINESS $99/mo. Free for local development — sign up, create a test key.

curl
curl https://guestos.app/api/v1/events/evt_123/stats \
  -H "Authorization: Bearer gos_live_xxxxxxxxxxxxxxxxxxxxxx"

Fast by default

Edge-deployed on Vercel. Typical response under 150ms from PR, LATAM, and US East. Rate limits 3k/min on BUSINESS, 10k/min on ENTERPRISE.

Webhooks, not polling

Subscribe to 8 event types (guest.checked_in, rsvp.submitted, event.published, and more). HMAC-SHA256 signed, 5-attempt retry with exponential backoff, replay UI in settings.

Enterprise-ready security

API keys hashed SHA-256 in DB. HTTPS enforced. Stripe-style errors with request_id for audit. Full ActivityLog per request. CORS locked server-to-server.

Quickstart · 3 steps

Integrate GuestOS in under 5 minutes.

Typical flow: pull guest data into your own dashboard or push check-in events into HubSpot / Slack / Google Sheets.

  1. 1

    Upgrade to BUSINESS

    API is included from $99/mo. Create a test key from Dashboard → Settings → API Keys.

  2. 2

    Call the API

    Pass your key as Authorization: Bearer gos_.... Responses are JSON with X-Request-Id and X-RateLimit-* headers on every response.

  3. 3

    Subscribe to webhooks (optional, recommended)

    Instead of polling, get events pushed to your endpoint. Verify signatures with our whsec_* secret. Example code in the docs.

Node.js example
// SDK TypeScript oficial — disponible bajo demanda para clientes BUSINESS+
// Contactar: hola@pintado.ai para acceso
import { GuestOS } from "@guestos/node";

const guestos = new GuestOS({ apiKey: process.env.GUESTOS_API_KEY! });
const stats = await guestos.events.stats("evt_123");
// typed: stats.guests.checkInRate, stats.rsvp.confirmed, stats.payments.totalCollected
Outbound webhooks

Stop polling. Subscribe.

8 event types. HMAC-SHA256 signed. Retry with exponential backoff (1m, 5m, 30m, 2h, 12h). Auto-disable after 50 consecutive failures. Replay in the dashboard.

guest.checked_in
guest.updated
rsvp.submitted
rsvp.updated
event.published
event.closed
photo.approved
payment.received
Webhook reference
Webhook receiver
// Receiver example — Express.js
app.post("/hooks/guestos", express.raw({ type: "application/json" }), (req, res) => {
  const sig = req.headers["guestos-signature"];
  if (!verifyWebhook(SECRET, sig, req.body.toString())) return res.sendStatus(401);
  const event = JSON.parse(req.body);
  if (event.type === "guest.checked_in") {
    // push to your CRM, Slack, sheets — whatever
  }
  res.sendStatus(200);
});

Ready to build?

API access is included in BUSINESS and ENTERPRISE plans. If you have the use case, reach out and we'll get you started.