Strict-partial update. attributes is shallow-MERGED into the existing JSONB; within the merge, a null attribute value DELETES that key. Soft-deleted offerings return 404 (mirrors the GET surface’s exclusion). No webhook events emitted today (canonical event union does not yet include offering.*).
Documentation Index
Fetch the complete documentation index at: https://docs.vorel.ai/llms.txt
Use this file to discover all available pages before exploring further.
Tenant-issued API key. Format: vapk_live_<48 hex chars> (60 chars total). Issue + manage at /settings/integrations/api-keys in the Vorel dashboard. Each key has a scope set (read, leads:write, appointments:write, offerings:write); endpoints requiring a write scope reject keys without it with a 403 envelope.
UUID of the offering to update.
Partial-update body for PATCH /api/v1/offerings/{id}. Must include at least one updatable field. Setting a nullable field to null clears it. attributes is shallow-MERGED into the existing JSONB; within the merge, a null attribute value DELETES that key. Soft-deleted offerings return 404 (mirrors the GET surface's exclusion). assigned_user_id, deleted_at, and metadata are NOT updatable. No webhook events are emitted (the canonical event union does not yet include offering.*).
1201201 - 5005001000010000x >= 0^[A-Z]{3}$50020204840^\d{4}-\d{2}-\d{2}$Offering updated.
Decimal serialized as string to preserve precision for large values that lose accuracy as JS numbers. Caller can parseFloat() if they don't need the precision.
ISO 4217 (e.g. AED, USD).
3Vertical-specific JSONB (real estate: bedrooms/area/etc.; salon: service_type/duration_minutes/etc.).
YYYY-MM-DD, no time component.