Lưu gói hội viên
Tạo hoặc cập nhật bản ghi gói hội viên. API xác định việc tạo mới hay cập nhật dựa trên membership_plan_id.
Tham số
-
membership_plans
arraybắt buộcMảng các đối tượng Membership Plan cần lưu. Khuyến nghị tối đa: 1000 mục mỗi yêu cầu để đạt hiệu suất tối ưu. API tự động chia lô các mục để xử lý. Mỗi mục phải có
facility_id(bắt buộc nếu không dùnglinking_identifier) hoặclinking_identifier(bắt buộc nếu không dùngfacility_id).
Giá trị trả về
Trả về một thông báo đơn giản xác nhận thao tác đồng bộ.
Yêu cầu
Ví dụ này sử dụng facility_id. Đối với tích hợp dùng mã định danh liên kết, hãy gửi "linking_identifier": "branch_downtown" thay thế.
curl -X POST https://partner-api.performancehub.co/partner/v1/membership-plans \
-u sk_live_YOUR_PARTNER_SECRET_KEY: \
-H "Content-Type: application/json" \
-d '{
"membership_plans": [
{
"membership_plan_id": "plan_99999",
"facility_id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Student – term access",
"description": "Library and student hub access for one teaching term",
"billing_cycle": "one_time",
"price": 4500,
"currency": "AUD",
"duration_days": 84,
"is_recurring": false,
"is_trial": false,
"visible_to_public": true,
"active_members": 245,
"access_zones": [
{
"name": "Library",
"description": "Reading rooms, study spaces and bookable rooms",
"access_hours": {
"mon": [["08:00", "21:00"]],
"tue": [["08:00", "21:00"]],
"wed": [["08:00", "21:00"]],
"thu": [["08:00", "21:00"]],
"fri": [["08:00", "17:00"]],
"sat": [["09:00", "13:00"]]
}
},
{
"name": "Student Hub",
"description": "Common room, kitchen and lockers",
"access_hours": {
"mon": [["07:00", "22:00"]],
"tue": [["07:00", "22:00"]],
"wed": [["07:00", "22:00"]],
"thu": [["07:00", "22:00"]],
"fri": [["07:00", "22:00"]]
}
}
],
"class_limit": null
}
]
}'
Phản hồi
Trả về thông báo thành công kèm siêu dữ liệu về thao tác đồng bộ.
{
"message": "Membership plan sync successful.",
"metadata": {
"success": 98,
"skipped": 2,
"skipped_items": [
{
"membership_plan_id": "plan_456",
"facility_id": null,
"reason": "Missing facility_id"
}
]
}
}
Các trường siêu dữ liệu:
- success - Số gói hội viên đã được xử lý thành công
- skipped - Số gói bị bỏ qua (nếu có)
- skipped_items - Mảng các gói bị bỏ qua kèm lý do (nếu có)
- dry-run - Cờ boolean nếu sử dụng loại khóa dryrun (nếu áp dụng)