Crewio Developer Platform

Build apps on top of Crewio API, Webhooks and Automations

Entwickle produktive Integrationen für Events, Helfer, Schichten und Kommunikation. Mit Paywall-Gating, scoped API Keys, Retry-fähigen Webhooks und klaren Use Cases.

Paywall enforced

Extern jeder Request nur mit ProPass oder Developer Add-on.

Scoped API keys

Ressourcenbasierte Scopes + Key Rotation für sichere Integrationen.

Webhook reliability

Signierte Webhooks mit Retry-Logik und Delivery-Logs.

Automation API

Workflows erstellen und Trigger-Events über API auslösen.

Quickstart

1. Integration + API Key

Im Dashboard unter Integrationen App anlegen, Scopes setzen, Key erzeugen.

curl -X POST 'https://api.crewio.co/api/developer/v1/events' \
  -H 'Authorization: Bearer crw_live_...' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Sommerfest 2026",
    "start_date": "2026-08-20",
    "end_date": "2026-08-21",
    "status": "draft"
  }'

2. Mit Node.js starten

Copy/paste-fähiger Start mit `fetch` für externe Apps.

const response = await fetch('https://api.crewio.co/api/developer/v1/events', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.CREWIO_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Sommerfest 2026',
    start_date: '2026-08-20',
    end_date: '2026-08-21',
    status: 'draft',
  }),
})

const payload = await response.json()
if (!response.ok) throw new Error(payload.error || 'Request failed')
console.log(payload.event.id)

Paywall & Rate Limits

PlanDeveloper APIRate LimitWebhooks
FreeKein Developer API Zugriff0 req/minNicht verfügbar
ProPassDeveloper API aktiviert180 req/minJa
Developer API Add-onErweiterter API-Modus600 req/minJa, inklusive Delivery-Logs

Use Cases

Helfer importieren & Event sync

CRM oder Formular-Daten übernehmen und direkt dem Event zuweisen.

const response = await fetch('https://api.crewio.co/api/developer/v1/helpers', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.CREWIO_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    mode: 'import',
    sync_to_event_id: 'event-uuid',
    helpers: [
      { full_name: 'Max Muster', email: 'max@example.org', tags: ['bar'] },
      { full_name: 'Nora Team', phone: '+49177111222', tags: ['kasse'] },
    ],
  }),
})

const payload = await response.json()
if (!response.ok) throw new Error(payload.error || 'Import failed')

Webhook Signatur prüfen

Eingehende Crewio Events serverseitig verifizieren.

import crypto from 'node:crypto'

function verifyCrewioSignature(rawBody, signatureHeader, secret) {
  const provided = String(signatureHeader || '').replace(/^sha256=/i, '').trim()
  if (!/^[a-f0-9]{64}$/i.test(provided)) return false

  const expected = crypto.createHmac('sha256', secret).update(rawBody, 'utf8').digest('hex')
  return crypto.timingSafeEqual(Buffer.from(expected, 'hex'), Buffer.from(provided, 'hex'))
}

export async function POST(req: Request) {
  const body = await req.text()
  const signature = req.headers.get('x-crewio-signature')
  const isValid = verifyCrewioSignature(body, signature, process.env.CREWIO_WEBHOOK_SECRET!)

  if (!isValid) return new Response('Invalid signature', { status: 401 })
  // process payload...
  return new Response('ok')
}

API Reference (Core)

Base URL: https://api.crewio.co/api/developer/v1/

MethodPathScopeFeature GateBeschreibung
GET/eventsevents:readDeveloper API (Pro)Events lesen (Filter, Pagination).
POST/eventsevents:createDeveloper API (Pro)Event erstellen.
POST/events/syncevents:writeDeveloper API (Pro)Events synchronisieren (Bulk Create/Update).
POST/helpershelpers:writeDeveloper API (Pro)Helfer importieren/upserten und optional Event-Zugriff synchronisieren.
POST/events/{eventId}/assignmentsassignments:writeDeveloper API (Pro)Schichtzuweisungen erstellen und Status ändern.
POST/events/{eventId}/messagesmessages:writeDeveloper API (Pro)Nachrichten/Broadcasts auslösen.
POST/webhookswebhooks:writeDeveloper API Add-onWebhook-Endpunkte konfigurieren (Signing Secret einmalig).
GET/webhooks/deliverieswebhooks:readDeveloper API Add-onWebhook-Delivery-Logs und Retry-Ergebnisse lesen.
POST/automations/workflowsautomation:writeDeveloper API Add-onAutomation-Workflows per API anlegen.
POST/automations/triggerautomation:writeDeveloper API Add-onEvent-basierte Automation über API triggern.

Webhooks

Crewio sendet signierte Webhooks mit Retry-Logik (max. 3 Zustellversuche) und Delivery-Logs.

helper.registered

helper.confirmed

helper.cancelled

shift.changed

event.started

event.ended

Fehlerhandling

400

Bad Request

Payload/Params gegen OpenAPI prüfen.

401

Unauthorized

API Key prüfen (revoked/expired/invalid).

403

Forbidden

Paywall/Scope/Verein-Kontext prüfen.

429

Rate Limited

Backoff + Queue einbauen.

500

Server Error

Retry mit Idempotenz anwenden.