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 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.
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
Upgrade to BUSINESS
API is included from $99/mo. Create a test key from Dashboard → Settings → API Keys.
- 2
Call the API
Pass your key as
Authorization: Bearer gos_.... Responses are JSON withX-Request-IdandX-RateLimit-*headers on every response. - 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.
// 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.totalCollectedStop 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_inguest.updatedrsvp.submittedrsvp.updatedevent.publishedevent.closedphoto.approvedpayment.received// 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);
});API Reference
Interactive docs — try every endpoint from the browser.
Node SDK
Official TypeScript client — available on demand. If you need it for your integration, reach out directly.
OpenAPI spec
Raw JSON spec. Generate SDKs with Fern, Speakeasy, openapi-generator.
Changelog
Every API change announced here. RSS supported.
Status
Live uptime + 1-hour sparkline across all services.
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.