Files
openclaw-workspace/skills/api-gateway/references/systeme.md
2026-04-11 09:45:12 -05:00

3.4 KiB

Systeme.io Routing Reference

App name: systeme Base URL proxied: api.systeme.io

API Path Pattern

/systeme/api/{resource}

Common Endpoints

List Contacts

GET /systeme/api/contacts

Query parameters:

  • limit - Results per page (10-100)
  • startingAfter - ID of last item for pagination
  • order - Sort order: asc or desc (default: desc)

Get Contact

GET /systeme/api/contacts/{id}

Create Contact

POST /systeme/api/contacts
Content-Type: application/json

{
  "email": "user@example.com",
  "firstName": "John",
  "lastName": "Doe"
}

Update Contact

PATCH /systeme/api/contacts/{id}
Content-Type: application/merge-patch+json

{
  "firstName": "Jane"
}

Delete Contact

DELETE /systeme/api/contacts/{id}

List Tags

GET /systeme/api/tags

Create Tag

POST /systeme/api/tags
Content-Type: application/json

{
  "name": "VIP Customer"
}

Update Tag

PUT /systeme/api/tags/{id}
Content-Type: application/json

{
  "name": "Premium Customer"
}

Delete Tag

DELETE /systeme/api/tags/{id}

Assign Tag to Contact

POST /systeme/api/contacts/{id}/tags
Content-Type: application/json

{
  "tagId": 12345
}

Remove Tag from Contact

DELETE /systeme/api/contacts/{id}/tags/{tagId}

List Contact Fields

GET /systeme/api/contact_fields

List Courses

GET /systeme/api/school/courses

Create Enrollment

POST /systeme/api/school/courses/{courseId}/enrollments
Content-Type: application/json

{
  "contactId": 12345
}

List Enrollments

GET /systeme/api/school/enrollments

Delete Enrollment

DELETE /systeme/api/school/enrollments/{id}

List Communities

GET /systeme/api/community/communities

Create Membership

POST /systeme/api/community/communities/{communityId}/memberships
Content-Type: application/json

{
  "contactId": 12345
}

List Memberships

GET /systeme/api/community/memberships

Delete Membership

DELETE /systeme/api/community/memberships/{id}

List Subscriptions

GET /systeme/api/payment/subscriptions

Cancel Subscription

POST /systeme/api/payment/subscriptions/{id}/cancel

List Webhooks

GET /systeme/api/webhooks

Create Webhook

POST /systeme/api/webhooks
Content-Type: application/json

{
  "name": "My Webhook",
  "url": "https://example.com/webhook",
  "secret": "my-secret-key",
  "subscriptions": ["CONTACT_CREATED"]
}

Available events: CONTACT_CREATED, CONTACT_TAG_ADDED, CONTACT_TAG_REMOVED, CONTACT_OPT_IN, SALE_NEW, SALE_CANCELED

Update Webhook

PATCH /systeme/api/webhooks/{id}
Content-Type: application/merge-patch+json

{
  "name": "Updated Webhook Name"
}

Delete Webhook

DELETE /systeme/api/webhooks/{id}

Notes

  • Contact, tag, course, and enrollment IDs are numeric integers
  • Webhook IDs are UUIDs
  • Uses cursor-based pagination with startingAfter parameter
  • PATCH requests require Content-Type: application/merge-patch+json
  • Delete operations return 204 No Content
  • Email addresses are validated for real MX records
  • Payment/subscription endpoints may return 404 if not configured

Resources