Skip to main content

Postpone Session

This section covers the endpoints for managing session postponement requests.

Available Endpoints

Request Postpone Session

Request to postpone a session in an order.

Endpoint

  • Method: POST
  • URL: /v1/coach/postpone-session

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes
AuthorizationBearer tokenYes

Request Body

ParameterTypeDescriptionRequired
from_appointment_idstringFrom Appointment IDYes
to_appointment_idstringTo Appointment IDYes
coach_idstringCoach ID to postponeYes

Success Response

{
"success": true,
"message": "تم قبول تغيير الموعد",
"data": {
"id": "uuid",
"startedAt": "2025-03-25 11:00:00",
"endedAt": "2025-03-25 12:00:00",
"status": "accept"
},
"statusCode": 200
}

Error Response

Order Not Found (404)
{
"success": false,
"message": "لم يتم العثور على السجل",
"data": null,
"statusCode": 404
}
Invalid Session Status (422)
{
"success": false,
"message": "تم (قبول-رفض) تغيير الموعد مسبقآ",
"data": null,
"statusCode": 422
}

Postpone session details.

Endpoint

  • Method: GET
  • URL: /v1/coach/postpone-session/{id}

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes
AuthorizationBearer tokenYes

Success Response

{
"success": true,
"message": "تم قبول تغيير الموعد",
"data": {
"id": "uuid",
"startedAt": "2025-03-25 11:00:00",
"endedAt": "2025-03-25 12:00:00",
"status": "accept"
},
"statusCode": 200
}

Error Response

Order Not Found (404)
{
"success": false,
"message": "لم يتم العثور على السجل",
"data": null,
"statusCode": 404
}

Accept Postpone Session

Accept a session postponement request.

Endpoint

  • Method: POST
  • URL: /v1/customer/orders/accept-postpone-session/{id}

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes
AuthorizationBearer tokenYes

Path Parameters

ParameterTypeDescriptionRequired
idstringPostpone Session Request IDYes

Success Response

{
"success": true,
"message": "تم قبول تغيير الموعد",
"data": {
"id": "uuid",
"startedAt": "2025-03-27 12:00:00",
"endedAt": "2025-03-27 13:00:00",
"status": "accept"
},
"statusCode": 200
}

Error Response

Postpone Request Not Found (404)
{
"success": false,
"message": "لم يتم العثور على السجل",
"data": [],
"statusCode": 404
}
Unauthorized (401)
{
"success": false,
"message": "غير مصرح",
"data": null,
"statusCode": 401
}

Overview

Postpone Session Statuses

  • PENDING: Request has been submitted and is waiting for approval
  • ACCEPTED: Request has been approved and session is rescheduled
  • REJECTED: Request has been rejected
  • CANCELLED: Request has been cancelled

Important Notes

  • Only sessions in specific statuses can be postponed
  • Postponement requests require a valid reason
  • New date and time must be within allowed range
  • Only the session owner can request postponement
  • Postponement requests must be approved by the coach
  • Multiple postponement requests may be restricted
  • Session duration remains unchanged after postponement
  • Calendar events are automatically updated after acceptance