Bookings
Create a Booking
Creates a Booking
Authorization
HTTPBearer AuthorizationBearer <token>
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X POST "https://api.members.dev/portal/v1/bookings" \ -H "Content-Type: application/json" \ -d '{ "event_id": "string", "member_id": "string", "slot_starts_at_local": null, "price_rule_id": "string" }'{
"id": "string",
"event_id": "string",
"recurring_event_id": "string",
"original_starts_at_local": {},
"member_id": "string",
"resource_id": "string",
"starts_at_local": null,
"ends_at_local": null,
"timezone": "string",
"status": "string",
"is_schedule_desynced": true,
"price_rule_id": "string",
"price_name": "string",
"price_amount": 0,
"currency": "string",
"price_deductions": [
{}
],
"invoice_id": "string",
"held_until": {},
"cancelled_at": {},
"cancellation_notes": "string",
"cancellation_policy_id": "string",
"cancellation_policy_snapshot": {
"tiers": [
{
"id": "string",
"hours_before_start": 0,
"allow_cancel": true,
"refund_percent": 0,
"fee_amount": 0,
"refund_deductions": false
}
]
},
"cancellation_settlement": {
"scenario": "cancel",
"settlement_source": "policy",
"allow_cancel": true,
"deny_reason": "string",
"hours_before_start": 0,
"matched_tier_hours_before_start": 0,
"paid_amount": 0,
"refund_amount": 0,
"fee_amount": 0,
"cancellation_amount": 0,
"refund_deductions": false,
"benefit_restorations": [
{
"benefit_id": "string",
"count": 0,
"original_usage_id": "string",
"reversal_usage_id": "string",
"grant_allocations": [
{}
]
}
]
},
"cancellation_preview": {
"scenario": "cancel",
"settlement_source": "policy",
"allow_cancel": true,
"deny_reason": "string",
"hours_before_start": 0,
"matched_tier_hours_before_start": 0,
"paid_amount": 0,
"refund_amount": 0,
"fee_amount": 0,
"cancellation_amount": 0,
"refund_deductions": false,
"benefit_restorations": [
{
"benefit_id": "string",
"count": 0,
"original_usage_id": "string",
"reversal_usage_id": "string",
"grant_allocations": [
{}
]
}
]
},
"no_show_preview": {
"scenario": "cancel",
"settlement_source": "policy",
"allow_cancel": true,
"deny_reason": "string",
"hours_before_start": 0,
"matched_tier_hours_before_start": 0,
"paid_amount": 0,
"refund_amount": 0,
"fee_amount": 0,
"cancellation_amount": 0,
"refund_deductions": false,
"benefit_restorations": [
{
"benefit_id": "string",
"count": 0,
"original_usage_id": "string",
"reversal_usage_id": "string",
"grant_allocations": [
{}
]
}
]
},
"penalty_fee_invoice_id": "string",
"cancellation_credit_note_id": "string",
"attendance_status": "attended",
"attendance_recorded_at": {},
"created_at": null,
"updated_at": null
}{
"type": "https://api.members.dev/errors/invalid_credentials",
"title": "Invalid credentials",
"status": 401,
"detail": "Invalid API Key or token.",
"code": "invalid_credentials"
}{
"type": "https://api.members.dev/errors/not_linked_to_tenant",
"title": "Not linked to tenant",
"status": 403,
"detail": "Not linked to this tenant",
"code": "not_linked_to_tenant"
}{
"type": "https://api.members.dev/errors/member_not_found",
"title": "Member not found",
"status": 404,
"detail": "No member exists with the given id in this organization.",
"code": "member_not_found"
}{
"type": "https://api.members.dev/errors/members_context_required",
"title": "Members context required",
"status": 422,
"detail": "This client has multiple organizations. Send the Members-Context header with the organization id (org_…) for this request.",
"code": "members_context_required"
}{
"type": "https://api.members.dev/errors/rate_limit_exceeded",
"title": "Rate limit exceeded",
"status": 429,
"detail": "Rate limit exceeded",
"code": "rate_limit_exceeded"
}