متصلون الآن  

/v1/floorplan/

Community-built floorplan layer. A floorplan is a venue/event interior map (`ATFloorplans` -> `ATFloorplanFloors` -> `ATFloorplanLayouts` -> `ATFloorplanAreas`). Community members draw the walls and furniture in-browser; the resulting areas can be tagged on `ATLocation.ATFloorplanArea_ID` or `ATLocationEvents.ATFloorplanArea_ID`, and trades that settle against tagged venues pay the floorplan creator a royalty (handled in `events/ontransactionstatechange/commission.php`). Architecture vs. furniture: each floor stores an `ArchitectureSVG` text blob for the bits that don't change (walls, columns, restrooms) and one or more `ATFloorplanLayouts` rows for the bits that DO (tables, sections, patio seating). Exactly one layout per floor is `Status='Active'` at any given moment; older Active layouts flip to `Historical` when a new one goes live, so attribution still resolves for past appointments. Composer integration is intentionally deferred to a follow-up; v1 ships with a direct creation entry point (`set_new`) callable from the gallery page or any other surface. Every new floorplan links directly to an `ATLocation_ID`, an `ATLocationEvent_ID`, or both. Auth: `set_*` writes require `Permission::CanCreateFloorplan`, ownership, or `Permission::CanReviewFloorplanSubmissions` depending on the action. Reads of an Active floorplan are public so consuming surfaces can render it without auth.
GET

/v1/floorplan/get_by_id

#
Returns one floorplan by ID with all floors, layouts, and areas hydrated. Used by the editor JS to refresh state after a write. Public-by-design: the floorplan tree itself isn't sensitive (the editor surface gates its own write actions via permissions).

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplan_ID int نعم — Floorplan to fetch.
مثال طلب (cURL)
curl --get \
  'https://ar.appointmenttrader.com/v1/floorplan/get_by_id' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_get_by_id_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.floorplan نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0]object نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Creator-ATUser_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Creator-ATUser_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Creator-ATUser_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].URLSlug نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].URLSlug.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].URLSlug.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Statusstring ["Draft","Submitted","Active","Superseded","Rejected"] نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].PublishedDate نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].PublishedDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].PublishedDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Cache-EarnedTraderPointsDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Cache-EarnedTraderPoints.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Cache-EarnedTraderPoints.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationName نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationName.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationName.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationAlias نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationAlias.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationAlias.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventName نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventName.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventName.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventURLSlug نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventURLSlug.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventURLSlug.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[0]object نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[0].ATLocation_IDinteger نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[0].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[0].Aliasstring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[0]object نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[0].ATLocationEvent_IDinteger نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[0].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[0].URLSlugstring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floorsarray نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[]object لا
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ATFloorplan_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ATFloorplan_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ATFloorplan_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].FloorOrderDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].FloorOrder.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].FloorOrder.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxWidthDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxWidth.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxWidth.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxHeightDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxHeight.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxHeight.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ArchitectureSVG نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ArchitectureSVG.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ArchitectureSVG.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].BackgroundImageURL نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].BackgroundImageURL.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].BackgroundImageURL.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layoutsarray نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[]object لا
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].ATFloorplanFloor_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].ATFloorplanFloor_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].ATFloorplanFloor_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Statusstring ["Draft","Active","Historical"] نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveStartDate نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveStartDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveStartDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveEndDate نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveEndDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveEndDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areasarray نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[]object لا
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Labelstring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Category نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Category.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Category.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SVGGeometrystring نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SortOrderDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SortOrder.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SortOrder.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[1]null نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_by_id",
    "RequestUserAlias": "example-user",
    "Payload": {
        "floorplan": {
            "ID": 0,
            "CreatedDate": "synthetic-example",
            "LastUpdateDate": "synthetic-example",
            "DeletedDate": null,
            "ATLocation_ID": 0,
            "ATLocationEvent_ID": 0,
            "Creator-ATUser_ID": 0,
            "ATDiscussionPosts_ID": 0,
            "Name": "synthetic-example",
            "URLSlug": "synthetic-example",
            "Status": "Draft",
            "PublishedDate": "synthetic-example",
            "ReviewedBy-ATUser_ID": 0,
            "Cache-EarnedTraderPoints": 0,
            "LocationName": "synthetic-example",
            "LocationAlias": "synthetic-example",
            "EventName": "synthetic-example",
            "EventURLSlug": "synthetic-example",
            "location": {
                "ATLocation_ID": 0,
                "Name": "synthetic-example",
                "Alias": "synthetic-example"
            },
            "event": {
                "ATLocationEvent_ID": 0,
                "Name": "synthetic-example",
                "URLSlug": "synthetic-example"
            },
            "floors": []
        }
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
GET

/v1/floorplan/get_floor

#
Single-floor detail (architecture SVG + the floor's Active layout with all areas). Used by the editor when switching between floors. Public-by-design: same rationale as `get_for_location`.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplanFloor_ID int نعم — Floor row ID.
مثال طلب (cURL)
curl --get \
  'https://ar.appointmenttrader.com/v1/floorplan/get_floor' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplanFloor_ID={{ATFloorplanFloor_ID}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_get_floor_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.floor نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0]object نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ATFloorplan_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ATFloorplan_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ATFloorplan_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].Namestring نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrderDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrder.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrder.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidthDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidth.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidth.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeightDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeight.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeight.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layoutsarray نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[]object لا
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ATFloorplanFloor_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ATFloorplanFloor_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ATFloorplanFloor_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Statusstring ["Draft","Active","Historical"] نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areasarray نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[]object لا
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ATFloorplanLayout_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Labelstring نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SVGGeometrystring نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SortOrderDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SortOrder.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SortOrder.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floor.anyOf[1]null نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_floor",
    "RequestUserAlias": "example-user",
    "Payload": {
        "floor": {
            "ID": 0,
            "CreatedDate": "synthetic-example",
            "LastUpdateDate": "synthetic-example",
            "DeletedDate": null,
            "ATFloorplan_ID": 0,
            "Name": "synthetic-example",
            "FloorOrder": 0,
            "ViewBoxWidth": 0,
            "ViewBoxHeight": 0,
            "ArchitectureSVG": "synthetic-example",
            "BackgroundImageURL": "synthetic-example",
            "layouts": []
        }
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
GET

/v1/floorplan/get_for_event

#
Returns Active floorplans linked to an `ATLocationEvents` row via `ATFloorplans.ATLocationEvent_ID`. Public-by-design: floorplans are reused across modules and apps; no sensitive content lives on this surface.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATLocationEvent_ID int نعم — Event to fetch floorplans for.
مثال طلب (cURL)
curl --get \
  'https://ar.appointmenttrader.com/v1/floorplan/get_for_event' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATLocationEvent_ID={{ATLocationEvent_ID}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_get_for_event_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.floorplansarray نعم
$.oneOf[0].allOf[1].Payload.floorplans[]object لا
$.oneOf[0].allOf[1].Payload.floorplans[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug نعم
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Statusstring ["Draft","Submitted","Active","Superseded","Rejected"] نعم
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPointsDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPoints.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPoints.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventName نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventName.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventName.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0]object نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].ATLocation_IDinteger نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].Aliasstring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0]object نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].ATLocationEvent_IDinteger نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].URLSlugstring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floorsarray نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[]object لا
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrderDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrder.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrder.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidthDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidth.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidth.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeightDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeight.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeight.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layoutsarray نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[]object لا
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Statusstring ["Draft","Active","Historical"] نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areasarray نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[]object لا
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Labelstring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SVGGeometrystring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrderDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrder.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrder.oneOf[1]string نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_for_event",
    "RequestUserAlias": "example-user",
    "Payload": {
        "floorplans": []
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
GET

/v1/floorplan/get_for_location

#
Returns the Active floorplans linked to an `ATLocation` via the direct `ATFloorplans.ATLocation_ID` column, with all floors, the currently- Active layout per floor, and every area on that layout. Returns an empty list (still wrapped in Success) when no Active floorplan covers the venue. Multiple floorplans may cover the same venue (different creators, different perspectives). Consuming surfaces typically render the first Active result; finer attribution comes via the area-level tag `ATLocation.ATFloorplanArea_ID`. Public-by-design: floorplans are reused across modules and apps; no sensitive content lives on this surface.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATLocation_ID int نعم — Location to fetch floorplans for.
مثال طلب (cURL)
curl --get \
  'https://ar.appointmenttrader.com/v1/floorplan/get_for_location' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATLocation_ID={{ATLocation_ID}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_get_for_location_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.floorplansarray نعم
$.oneOf[0].allOf[1].Payload.floorplans[]object لا
$.oneOf[0].allOf[1].Payload.floorplans[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug نعم
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Statusstring ["Draft","Submitted","Active","Superseded","Rejected"] نعم
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPointsDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPoints.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPoints.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventName نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventName.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventName.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0]object نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].ATLocation_IDinteger نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].Aliasstring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0]object نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].ATLocationEvent_IDinteger نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].URLSlugstring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floorsarray نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[]object لا
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrderDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrder.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrder.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidthDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidth.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidth.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeightDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeight.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeight.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layoutsarray نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[]object لا
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Namestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Statusstring ["Draft","Active","Historical"] نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areasarray نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[]object لا
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DeletedDate = null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Labelstring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SVGGeometrystring نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrderDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrder.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrder.oneOf[1]string نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_for_location",
    "RequestUserAlias": "example-user",
    "Payload": {
        "floorplans": []
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
GET

/v1/floorplan/get_license_for_app

#
License lookup for a (floorplan, app) pair. Resolution order: 1. Per-app override row in `ATFloorplanLicenses` (Status='Active'). 2. Wildcard row (`ATApps_ID IS NULL`, Status='Active'). 3. Fall through to the `Permission::FloorplanAreaTradeRoyaltyPct` default for the floorplan originator. Public-by-design: app renderers can inspect published floorplan terms.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplan_ID int نعم — Floorplan to look up.
ATApps_ID int لا 0 App requesting the data; pass 0 for first-party.
مثال طلب (cURL)
curl --get \
  'https://ar.appointmenttrader.com/v1/floorplan/get_license_for_app' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'ATApps_ID={{ATApps_ID}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_get_license_for_app_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.royaltyPctnumber نعم
$.oneOf[0].allOf[1].Payload.flatFeeCentsinteger نعم
$.oneOf[0].allOf[1].Payload.sourcestring ["app","wildcard","default"] نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_license_for_app",
    "RequestUserAlias": "example-user",
    "Payload": {
        "royaltyPct": 0,
        "flatFeeCents": 0,
        "source": "app"
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
GET

/v1/floorplan/get_pending_review_list

#
Moderation queue: floorplans waiting for review. Gated by `Permission::CanReviewFloorplanSubmissions`.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
resultLimit int لا 50 Max rows to return.
resultOffset int لا 0 Pagination offset.
مثال طلب (cURL)
curl --get \
  'https://ar.appointmenttrader.com/v1/floorplan/get_pending_review_list' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'resultLimit={{resultLimit}}' \
  --data-urlencode 'resultOffset={{resultOffset}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_get_pending_review_list_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.itemsarray نعم
$.oneOf[0].allOf[1].Payload.items[]object لا
$.oneOf[0].allOf[1].Payload.items[].IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.items[].ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.items[].Namestring نعم
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_IDDatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_ID.oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_ID.oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID نعم
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID نعم
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[0]DatabaseInteger نعمInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[0].oneOf[0]integer نعم
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[0].oneOf[1]string نعم
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.items[].CreatedDatestring نعم
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate نعم
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias نعم
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.items[].LocationName نعم
$.oneOf[0].allOf[1].Payload.items[].LocationName.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.items[].LocationName.anyOf[1]null نعم
$.oneOf[0].allOf[1].Payload.items[].EventName نعم
$.oneOf[0].allOf[1].Payload.items[].EventName.anyOf[0]string نعم
$.oneOf[0].allOf[1].Payload.items[].EventName.anyOf[1]null نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_pending_review_list",
    "RequestUserAlias": "example-user",
    "Payload": {
        "items": []
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_approved

#
Approve a Submitted floorplan, promoting it to Active. Floorplans are not exclusive per venue/event -- multiple Active floorplans may share the same direct link -- so no supersede pass runs at this layer; the moderator can manually mark an older floorplan as Superseded if a true replacement is intended. Gated by `Permission::CanReviewFloorplanSubmissions`.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplan_ID int نعم — Floorplan to approve.
isWritingRequest bool لا false Set true to actually transition.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_approved' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_approved_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.Status = "Active" نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_approved",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Active"
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_areas

#
Replace every area on a layout with the supplied list. The whole-list replace is intentional: the editor sends its current state, the server is the single source of truth on disk. Existing areas are soft-deleted (`DeletedDate=NOW()`) and the supplied rows are inserted fresh; this preserves historical attribution because the old area IDs aren't reused, but tagged ATLocation/ATLocationEvent rows pointing at deleted areas will need re-tagging by the operator.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplanLayout_ID int نعم — Layout to replace areas on.
areas array نعم — Array of {label, category, svgShape, svgGeometry, capacity?, desirabilityScore?, sortOrder?} objects. The dispatcher accepts a JSON-encoded array on the wire (e.g. via the `areas` POST field) and auto-decodes it.
isWritingRequest bool لا false Set true to actually persist.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_areas' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplanLayout_ID={{ATFloorplanLayout_ID}}' \
  --data-urlencode 'areas={{areas}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
المعلمات: areas
الحقلالنوعمطلوبالوصف
areasstring (application/json) نعمPass a JSON-encoded string, not nested form fields.
areasarray (JSON بعد فك الترميز) نعم
areas[]object لا
areas[].labelstring نعم
areas[].svgShapestring ["rect","polygon","circle","path"] لا
areas[].svgGeometrystring نعم
areas[].categorystring لا
areas[].desirabilityScore لا
areas[].desirabilityScore.anyOf[0]integer لا
areas[].desirabilityScore.anyOf[1]null لا
areas[].capacity لا
areas[].capacity.anyOf[0]integer لا
areas[].capacity.anyOf[1]null لا
areas[].sortOrderinteger لا
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_areas_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.areaIDsarray نعم
$.oneOf[0].allOf[1].Payload.areaIDs[]integer لا
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_areas",
    "RequestUserAlias": "example-user",
    "Payload": {
        "areaIDs": []
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_event_area

#
Tag an `ATLocationEvent` with a floorplan area. Same gate as `set_location_area`.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATLocationEvent_ID int نعم — Event to tag.
ATFloorplanArea_ID int نعم — Area to bind (0 to clear).
isWritingRequest bool لا false Set true to actually persist.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_event_area' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATLocationEvent_ID={{ATLocationEvent_ID}}' \
  --data-urlencode 'ATFloorplanArea_ID={{ATFloorplanArea_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_event_area_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payload = true نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_event_area",
    "RequestUserAlias": "example-user",
    "Payload": true
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_floor

#
Upsert a floor (architecture SVG, viewbox, name, order). Pass ATFloorplanFloor_ID = 0 to create a new floor under the supplied floorplan; non-zero updates the existing row. Architecture SVG is sanitised before write so user-pasted blobs can't smuggle scripts.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplan_ID int نعم — Owner floorplan; required when creating.
ATFloorplanFloor_ID int نعم — 0 to create, or existing row ID to update.
name string نعم — Floor display name.
floorOrder int لا 0 -2..N ordering hint (-2 = sub-basement, 0 = ground).
viewBoxWidth int لا 1000 SVG viewbox width.
viewBoxHeight int لا 1000 SVG viewbox height.
architectureSVG string لا "" Raw SVG fragment for the building shell; sanitised server-side.
backgroundImageURL string لا "" Optional traced reference photo URL.
isWritingRequest bool لا false Set true to actually persist.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_floor' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'ATFloorplanFloor_ID={{ATFloorplanFloor_ID}}' \
  --data-urlencode 'name={{name}}' \
  --data-urlencode 'floorOrder={{floorOrder}}' \
  --data-urlencode 'viewBoxWidth={{viewBoxWidth}}' \
  --data-urlencode 'viewBoxHeight={{viewBoxHeight}}' \
  --data-urlencode 'architectureSVG={{architectureSVG}}' \
  --data-urlencode 'backgroundImageURL={{backgroundImageURL}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_floor_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_floor",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATFloorplanFloor_ID": 0
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_imported_svg

#
Import a pasted/uploaded SVG fragment as the architecture layer of a floor. The fragment is sanitised server-side: script elements, event handlers (onload, onclick, ...), foreignObject elements, external references, and unsafe URL schemes are stripped before write. Optional autoExtractAreas mode walks the cleaned tree for rect, polygon, circle, and path elements that carry either a title child or a data-atv2-label attribute, and inserts each into the floor's currently-Active layout as a draft area, ready for the creator to assign categories to.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplanFloor_ID int نعم — Floor to land the architecture on.
svgFragment string نعم — The SVG text. May or may not have an outer svg element.
autoExtractAreas bool لا false True to also create draft areas from titled shapes.
isWritingRequest bool لا false Set true to actually persist.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_imported_svg' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplanFloor_ID={{ATFloorplanFloor_ID}}' \
  --data-urlencode 'svgFragment={{svgFragment}}' \
  --data-urlencode 'autoExtractAreas={{autoExtractAreas}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_imported_svg_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger نعم
$.oneOf[0].allOf[1].Payload.architectureSVGstring نعم
$.oneOf[0].allOf[1].Payload.extractedAreaCountinteger نعم
$.oneOf[0].allOf[1].Payload.sanitisedBytesinteger نعم
$.oneOf[0].allOf[1].Payload.sanitizedBytesinteger نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_imported_svg",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATFloorplanFloor_ID": 0,
        "architectureSVG": "synthetic-example",
        "extractedAreaCount": 0,
        "sanitisedBytes": 0,
        "sanitizedBytes": 0
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_layout

#
Upsert a layout. Pass `ATFloorplanLayout_ID = 0` to create a new layout under the supplied floor; non-zero updates the existing row. When the resulting status is `Active`, ANY other Active layout on the same floor flips to `Historical` in the same write -- there can be exactly one Active layout per floor at a time.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplanFloor_ID int نعم — Owner floor; required when creating.
ATFloorplanLayout_ID int نعم — 0 to create, or existing row ID to update.
name string نعم — Layout display name.
statusValue string لا "Draft" One of Draft, Active, Historical.
effectiveStartDate string لا "" Optional ISO datetime.
effectiveEndDate string لا "" Optional ISO datetime.
isWritingRequest bool لا false Set true to actually persist.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_layout' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplanFloor_ID={{ATFloorplanFloor_ID}}' \
  --data-urlencode 'ATFloorplanLayout_ID={{ATFloorplanLayout_ID}}' \
  --data-urlencode 'name={{name}}' \
  --data-urlencode 'statusValue={{statusValue}}' \
  --data-urlencode 'effectiveStartDate={{effectiveStartDate}}' \
  --data-urlencode 'effectiveEndDate={{effectiveEndDate}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_layout_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.ATFloorplanLayout_IDinteger نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_layout",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATFloorplanLayout_ID": 0
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_location_area

#
Tag an `ATLocation` with a floorplan area so trades against that venue inherit area attribution for royalty purposes. Gated either by floorplan ownership OR `Permission::LocationAdministration`.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATLocation_ID int نعم — Venue to tag.
ATFloorplanArea_ID int نعم — Area to bind to this venue (0 to clear).
isWritingRequest bool لا false Set true to actually persist.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_location_area' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATLocation_ID={{ATLocation_ID}}' \
  --data-urlencode 'ATFloorplanArea_ID={{ATFloorplanArea_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_location_area_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payload = true نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_location_area",
    "RequestUserAlias": "example-user",
    "Payload": true
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_new

#
Direct creation entry point. Transactionally creates an ATFloorplans row (Draft), plus an initial ATFloorplanFloor ("Ground") and an initial ATFloorplanLayout ("Default", Active) so the editor has somewhere to draw immediately. Gated by `Permission::CanCreateFloorplan`. At least one of `ATLocation_ID` or `ATLocationEvent_ID` is required. Both may be supplied.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
name string نعم — Display name for the floorplan.
ATLocation_ID int لا 0 Optional venue link.
ATLocationEvent_ID int لا 0 Optional event link.
isWritingRequest bool لا false Set true to actually create. Defaults false (dry-run).
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_new' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'name={{name}}' \
  --data-urlencode 'ATLocation_ID={{ATLocation_ID}}' \
  --data-urlencode 'ATLocationEvent_ID={{ATLocationEvent_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_new_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.ATFloorplan_IDinteger نعم
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger نعم
$.oneOf[0].allOf[1].Payload.ATFloorplanLayout_IDinteger نعم
$.oneOf[0].allOf[1].Payload.editorURLstring نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_new",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATFloorplan_ID": 0,
        "ATFloorplanFloor_ID": 0,
        "ATFloorplanLayout_ID": 0,
        "editorURL": "synthetic-example"
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_rejected

#
Reject a Submitted floorplan with a reviewer note. Gated by `Permission::CanReviewFloorplanSubmissions`.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplan_ID int نعم — Floorplan to reject.
reason string لا "" Short note for the originator.
isWritingRequest bool لا false Set true to actually transition.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_rejected' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'reason={{reason}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_rejected_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.Status = "Rejected" نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_rejected",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Rejected"
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا
POST

/v1/floorplan/set_submitted_for_review

#
Move a Draft floorplan into the moderation queue. Owner-only.

المعلمات

الاسمالنوعمطلوبالافتراضيالوصف
ATFloorplan_ID int نعم — Floorplan to submit.
isWritingRequest bool لا false Set true to actually transition.
مثال طلب (cURL)
curl --request POST \
  'https://ar.appointmenttrader.com/v1/floorplan/set_submitted_for_review' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

القيمة المُرجعة

JSON
See the shared response schema and synthetic example.
حقول الاستجابة
الحقلالنوعمطلوبالوصف
$floorplan_set_submitted_for_review_Response نعم
$.oneOf[0] نعم
$.oneOf[0].allOf[0]object نعم
$.oneOf[0].allOf[0].RequestUserAliasstring نعم
$.oneOf[0].allOf[0].RequestPathstring | null نعم
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" نعم
$.oneOf[0].allOf[0].ResponseCodeinteger نعم
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object نعم
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring لا
$.oneOf[0].allOf[1]object نعم
$.oneOf[0].allOf[1].Payloadobject نعم
$.oneOf[0].allOf[1].Payload.Status = "Submitted" نعم
$.oneOf[1]object نعم
$.oneOf[1].RequestUserAliasstring نعم
$.oneOf[1].RequestPathstring | null نعم
$.oneOf[1].RequestStatus = "Failed" نعم
$.oneOf[1].ResponseCodeinteger نعم
$.oneOf[1].ResponseMessageAPIResponseMessage نعم
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null نعم
$.oneOf[1].ResponseMessage.oneOf[1]array نعم
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage لا
$.oneOf[1].ResponseMessage.oneOf[2]object نعم
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage لا
$.oneOf[1].RequestImpersonatedByUserAliasstring لا
مثال استجابة
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_submitted_for_review",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Submitted"
    }
}
توثيق نقطة النهاية القابل للقراءة آليًا