Public Shared Events REST API
Public, anonymous collaboration endpoints on this client domain
Use these endpoints for Onepay Split and Onepay Schedule events. They are separate from the authenticated merchant/admin API.
Safe usage
Examples use a clearly synthetic event ID. Use your own event link in your application and do not copy private event values into documentation, tickets, or logs.
curl /api/v1/split-events/evt_example_onlyOwnership and recovery
The browser that creates an event receives ownership through its private session. Recovery is available only to the event owner when that session is lost.
Treat every event link and recovery value as private. Share only the event link needed for collaboration, and keep recovery material out of messages and logs.
Revisions and conflicts
Read the latest event before a mutation and send its current revision. If another change wins first, refresh the event, review the latest state, and retry deliberately.
Rate limits
Creation, reads, collaborative writes, owner actions, exports, and recovery attempts are rate limited. Respect the response limit headers and retry only after the indicated delay.
Expiry
Shared events expire automatically. Reading an event or exporting it does not extend its lifetime, so copy any information you need before expiry.
API reference
Shared Events
Anonymous, cookie-scoped collaborative resources shared via a public link. Ownership is recoverable via a one-time recovery key when the owning session/cookie is lost.
POST /shared-events/{eventId}/owner/recover— Re-establish ownership of a shared event using its owner-recovery keyPUT /shared-events/{eventId}/owner/recovery-key— Rotate a shared event's owner-recovery key
Split
Split a shared expense across named members — equal-share allocation, running balances, and a simplified settlement plan. Event metadata/member management is owner-only; expense entry is collaborative.
POST /split-events— Create a Split eventGET /split-events/{eventId}— Read a Split eventPUT /split-events/{eventId}— Rename a Split event or change its currencyDELETE /split-events/{eventId}— Permanently delete a Split eventPOST /split-events/{eventId}/members— Add a Split memberPUT /split-events/{eventId}/members/{memberId}— Rename a Split memberDELETE /split-events/{eventId}/members/{memberId}— Remove a Split memberPUT /split-events/{eventId}/members/order— Reorder a Split event's active membersPOST /split-events/{eventId}/expenses— Record a Split expensePUT /split-events/{eventId}/expenses/{expenseId}— Update a Split expenseDELETE /split-events/{eventId}/expenses/{expenseId}— Delete a Split expenseGET /split-events/{eventId}/export— Export a Split event as CSV
Schedule
Schedule a meeting/event across candidate time slots — participants vote yes/maybe/no per candidate, and the owner may set a response deadline and select a final candidate. Event metadata/candidate/participant-order management is owner-only; response entry is collaborative.
POST /schedule-events— Create a Schedule eventGET /schedule-events/{eventId}— Read a Schedule eventPUT /schedule-events/{eventId}— Rename a Schedule event or change its memo, timezone, or attendance settingsDELETE /schedule-events/{eventId}— Permanently delete a Schedule eventPOST /schedule-events/{eventId}/candidates— Add a Schedule candidateDELETE /schedule-events/{eventId}/candidates/{candidateId}— Remove a Schedule candidatePUT /schedule-events/{eventId}/candidates/order— Reorder a Schedule event's candidatesPOST /schedule-events/{eventId}/responses— Create a Schedule participant responsePUT /schedule-events/{eventId}/responses/{participantId}— Update a Schedule participant responseDELETE /schedule-events/{eventId}/responses/{participantId}— Delete a Schedule participant responsePUT /schedule-events/{eventId}/participants/order— Reorder a Schedule event's participant responsesPUT /schedule-events/{eventId}/deadline— Set, change, or clear a Schedule event's response deadlinePUT /schedule-events/{eventId}/final-candidate— Select or clear a Schedule event's final candidateGET /schedule-events/{eventId}/export— Export a Schedule event as CSV