مستندات

جست‌وجو در مستندات

نام اندپوینت، موضوع یا کلیدواژه را بنویسید

رزرو تفریح

ایجاد، تأیید و خواندن رزروهای تفریحات.

رزرو با وضعیت reserved ایجاد می‌شود و یک نسخه از آن به‌صورت محلی نگه داشته می‌شود. سپس پلتفرم آن را به‌صورت ناهمگام (async) صادر می‌کند. uuidـی که هنگام ایجاد دریافت می‌کنید، در تمام چرخهٔ عمر رزرو مرجع دائمی شماست؛ حتی پس از اینکه به شناسهٔ تأمین‌کننده نگاشت شود. SessionId را در درخواست‌های POST و PUT در بدنهٔ JSON و در درخواست‌های GET در کوئری‌استرینگ بفرستید.

ایجاد رزرو#

POST/Activity/v2/bookings

دسترسی نیازمند مجوز activity_create_booking

یک نوع محصول را برای یک تاریخ و ترکیب نفرات، همراه با مشخصات مشتری اصلی، رزرو کنید. مبلغ کل از موجودی دفتر بلوکه می‌شود.

پارامترهای بدنه#

نامنوعالزامیپیش‌فرضتوضیح
SessionIdstringالزامی-شناسهٔ نشست شما.
productTypeUuidstringالزامی-نوع محصولی که رزرو می‌کنید، از product-types.
arrivalDatestringالزامیامروز + ۷تاریخ بازدید، با قالب YYYY-MM-DD. نام جایگزین: date.
adultsintegerالزامی1تعداد بلیت بزرگسال. نام جایگزین: pax.
childrenintegerاختیاری0تعداد بلیت کودک.
seniorsintegerاختیاری0تعداد بلیت سالمند.
timeSlotstringاختیاری-سانس انتخاب‌شده، وقتی نوع محصول سانس‌بندی دارد.
partnerReferencestringاختیاری-شمارهٔ مرجع خودتان که روی رزرو برگردانده می‌شود.
customer object، الزامی
نامنوعالزامیپیش‌فرضتوضیح
salutationstringاختیاریMr.عنوان (آقا/خانم).
firstNamestringالزامی-نام.
lastNamestringالزامی-نام خانوادگی.
emailstringالزامی-ایمیل تماس.
phonestringالزامی-تلفن تماس.
curl -X POST https://api.simorghapi.com/api/Activity/v2/bookings \
  -H "Content-Type: application/json" \
  -d '{
    "SessionId": "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
    "productTypeUuid": "5f3ff236-40b1-4f0a-a780-1db8649d1f5b",
    "arrivalDate": "2026-10-15",
    "adults": 2,
    "children": 0,
    "seniors": 0,
    "partnerReference": "activity-order-0001",
    "customer": {
      "salutation": "Mr.",
      "firstName": "Jane",
      "lastName": "Doe",
      "email": "traveller@example.com",
      "phone": "+441234567890"
    }
  }'
const res = await fetch("https://api.simorghapi.com/api/Activity/v2/bookings", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    SessionId: "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
    productTypeUuid: "5f3ff236-40b1-4f0a-a780-1db8649d1f5b",
    arrivalDate: "2026-10-15",
    adults: 2,
    children: 0,
    seniors: 0,
    partnerReference: "activity-order-0001",
    customer: {
      salutation: "Mr.",
      firstName: "Jane",
      lastName: "Doe",
      email: "traveller@example.com",
      phone: "+441234567890"
    }
  })
});

const data = await res.json();
import requests

res = requests.post(
    "https://api.simorghapi.com/api/Activity/v2/bookings",
    json={
        "SessionId": "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
        "productTypeUuid": "5f3ff236-40b1-4f0a-a780-1db8649d1f5b",
        "arrivalDate": "2026-10-15",
        "adults": 2,
        "children": 0,
        "seniors": 0,
        "partnerReference": "activity-order-0001",
        "customer": {
            "salutation": "Mr.",
            "firstName": "Jane",
            "lastName": "Doe",
            "email": "traveller@example.com",
            "phone": "+441234567890",
        },
    },
)

data = res.json()

پاسخ#

رزرو ایجادشده با وضعیت reserved. مقدار data.uuid را برای همهٔ فراخوانی‌های بعدی نگه دارید.

{
  "data": {
    "uuid": "1d59a17e-9726-4283-a5b7-bab7886e4709",
    "code": "Z2KB84Z",
    "partnerReference": "activity-order-0001",
    "status": "reserved",
    "productTypeTitle": "Gardens by the Bay Admission",
    "productTypeUuid": "5f3ff236-40b1-4f0a-a780-1db8649d1f5b",
    "currencyCode": "USD",
    "totalAmount": 44.00,
    "amountBreakdown": [ { "name": "adult", "quantity": 2, "price": "22.00" } ],
    "arrivalDate": "2026-10-15",
    "adults": 2, "children": 0, "seniors": 0
  },
  "timestamp": "2026-10-15T16:24:49.648+08:00"
}

تأیید یا لغو#

PUT/Activity/v2/bookings/{uuid}/{status}

دسترسی نیازمند مجوز activity_update_booking_status

اگر {status} را confirm بگذارید، رزرو به سمت صدور می‌رود (وضعیت از reserved به waiting و پس از صدور به approved تغییر می‌کند). با cancel رزرو لغو می‌شود.

PUT /api/Activity/v2/bookings/1d59a17e-9726-4283-a5b7-bab7886e4709/confirm
{ "SessionId": "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f" }

فهرست و جزئیات رزروها#

GET/Activity/v2/bookings

دسترسی نیازمند مجوز activity_list_bookings

فهرستی صفحه‌بندی‌شده و قابل فیلتر. می‌توانید با date_start، date_end، first_name، last_name، email، phone، partner_reference، query و status فیلتر کنید و با page و per_page صفحه‌بندی کنید.

GET/Activity/v2/bookings/{uuid}

دسترسی نیازمند مجوز activity_booking_details

یک رزرو بر اساس uuid مرجع آن. مقادیر وضعیت: reserved، waiting، approved، cancelled، expired، rejected، refunded.

قدم بعدی. پس از صدور رزرو، واچر آن را دریافت کنید.
ویرایش این صفحه در گیت‌هابمشکلی دیدید؟ از پنل ← پشتیبانی خبرمان کنید.