Online ora  

/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).

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplan_ID int Sì — Floorplan to fetch.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/floorplan/get_by_id' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_get_by_id_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.floorplan Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocation_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATLocationEvent_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Creator-ATUser_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Creator-ATUser_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ATDiscussionPosts_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].URLSlug Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].URLSlug.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].URLSlug.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Statusstring ["Draft","Submitted","Active","Superseded","Rejected"] Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].PublishedDate Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].PublishedDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].PublishedDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].ReviewedBy-ATUser_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Cache-EarnedTraderPointsDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].Cache-EarnedTraderPoints.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationName Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationName.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationName.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationAlias Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationAlias.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].LocationAlias.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventName Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventName.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventName.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventURLSlug Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventURLSlug.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].EventURLSlug.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[0].ATLocation_IDinteger Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[0].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[0].Aliasstring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].location.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[0].ATLocationEvent_IDinteger Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[0].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[0].URLSlugstring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].event.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floorsarray Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[]object No
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ATFloorplan_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ATFloorplan_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].FloorOrderDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].FloorOrder.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxWidthDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxWidth.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxHeightDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ViewBoxHeight.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ArchitectureSVG Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ArchitectureSVG.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].ArchitectureSVG.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].BackgroundImageURL Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].BackgroundImageURL.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].BackgroundImageURL.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layoutsarray Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[]object No
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].ATFloorplanFloor_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].ATFloorplanFloor_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Statusstring ["Draft","Active","Historical"] Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveStartDate Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveStartDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveStartDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveEndDate Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveEndDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].EffectiveEndDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].Creator-ATUser_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areasarray Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[]object No
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Labelstring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Category Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Category.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Category.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SVGGeometrystring Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].DesirabilityScore.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].Capacity.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SortOrderDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[0].floors[].layouts[].areas[].SortOrder.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplan.anyOf[1]null Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "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": []
        }
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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`.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplanFloor_ID int Sì — Floor row ID.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/floorplan/get_floor' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplanFloor_ID={{ATFloorplanFloor_ID}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_get_floor_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.floor Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ATFloorplan_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ATFloorplan_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].Namestring Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrderDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrder.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrder.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidthDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidth.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidth.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeightDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeight.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeight.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layoutsarray Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[]object No
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ATFloorplanFloor_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ATFloorplanFloor_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Statusstring ["Draft","Active","Historical"] Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areasarray Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[]object No
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Labelstring Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SVGGeometrystring Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SortOrderDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SortOrder.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floor.anyOf[1]null Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "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": []
        }
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATLocationEvent_ID int Sì — Event to fetch floorplans for.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/floorplan/get_for_event' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATLocationEvent_ID={{ATLocationEvent_ID}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_get_for_event_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.floorplansarray Sì
$.oneOf[0].allOf[1].Payload.floorplans[]object No
$.oneOf[0].allOf[1].Payload.floorplans[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug Sì
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Statusstring ["Draft","Submitted","Active","Superseded","Rejected"] Sì
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPointsDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPoints.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPoints.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventName Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventName.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventName.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].ATLocation_IDinteger Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].Aliasstring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].ATLocationEvent_IDinteger Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].URLSlugstring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floorsarray Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[]object No
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrderDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrder.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrder.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidthDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidth.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidth.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeightDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeight.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeight.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layoutsarray Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[]object No
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Statusstring ["Draft","Active","Historical"] Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areasarray Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[]object No
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Labelstring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SVGGeometrystring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrderDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrder.oneOf[1]string Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_for_event",
    "RequestUserAlias": "example-user",
    "Payload": {
        "floorplans": []
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATLocation_ID int Sì — Location to fetch floorplans for.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/floorplan/get_for_location' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATLocation_ID={{ATLocation_ID}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_get_for_location_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.floorplansarray Sì
$.oneOf[0].allOf[1].Payload.floorplans[]object No
$.oneOf[0].allOf[1].Payload.floorplans[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocation_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATLocationEvent_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Creator-ATUser_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ATDiscussionPosts_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug Sì
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].URLSlug.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Statusstring ["Draft","Submitted","Active","Superseded","Rejected"] Sì
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].PublishedDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].ReviewedBy-ATUser_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPointsDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPoints.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].Cache-EarnedTraderPoints.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationName.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].LocationAlias.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventName Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventName.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventName.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].EventURLSlug.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].ATLocation_IDinteger Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[0].Aliasstring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].location.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].ATLocationEvent_IDinteger Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[0].URLSlugstring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].event.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floorsarray Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[]object No
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ATFloorplan_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrderDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrder.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].FloorOrder.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidthDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidth.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxWidth.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeightDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeight.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ViewBoxHeight.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].ArchitectureSVG.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].BackgroundImageURL.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layoutsarray Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[]object No
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].ATFloorplanFloor_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Namestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Statusstring ["Draft","Active","Historical"] Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveStartDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].EffectiveEndDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].Creator-ATUser_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areasarray Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[]object No
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DeletedDate = null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Labelstring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Category.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SVGGeometrystring Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].DesirabilityScore.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].Capacity.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrderDatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.floorplans[].floors[].layouts[].areas[].SortOrder.oneOf[1]string Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_for_location",
    "RequestUserAlias": "example-user",
    "Payload": {
        "floorplans": []
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplan_ID int Sì — Floorplan to look up.
ATApps_ID int No 0 App requesting the data; pass 0 for first-party.
Esempio di richiesta (cURL)
curl --get \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_get_license_for_app_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.royaltyPctnumber Sì
$.oneOf[0].allOf[1].Payload.flatFeeCentsinteger Sì
$.oneOf[0].allOf[1].Payload.sourcestring ["app","wildcard","default"] Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "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"
    }
}
Documentazione dell’endpoint leggibile dalle macchine
GET

/v1/floorplan/get_pending_review_list

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

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
resultLimit int No 50 Max rows to return.
resultOffset int No 0 Pagination offset.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/floorplan/get_pending_review_list' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'resultLimit={{resultLimit}}' \
  --data-urlencode 'resultOffset={{resultOffset}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_get_pending_review_list_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.itemsarray Sì
$.oneOf[0].allOf[1].Payload.items[]object No
$.oneOf[0].allOf[1].Payload.items[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.items[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.items[].Namestring Sì
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID Sì
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID Sì
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[0]DatabaseInteger Sì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 Sì
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.items[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate Sì
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias Sì
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.items[].LocationName Sì
$.oneOf[0].allOf[1].Payload.items[].LocationName.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.items[].LocationName.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.items[].EventName Sì
$.oneOf[0].allOf[1].Payload.items[].EventName.anyOf[0]string Sì
$.oneOf[0].allOf[1].Payload.items[].EventName.anyOf[1]null Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_pending_review_list",
    "RequestUserAlias": "example-user",
    "Payload": {
        "items": []
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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`.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplan_ID int Sì — Floorplan to approve.
isWritingRequest bool No false Set true to actually transition.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.appointmenttrader.com/v1/floorplan/set_approved' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_approved_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.Status = "Active" Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_approved",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Active"
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplanLayout_ID int Sì — Layout to replace areas on.
areas array Sì — 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 No false Set true to actually persist.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Parametri: areas
CampoTipoObbligatorioDescrizione
areasstring (application/json) SìPass a JSON-encoded string, not nested form fields.
areasarray (JSON decodificato) Sì
areas[]object No
areas[].labelstring Sì
areas[].svgShapestring ["rect","polygon","circle","path"] No
areas[].svgGeometrystring Sì
areas[].categorystring No
areas[].desirabilityScore No
areas[].desirabilityScore.anyOf[0]integer No
areas[].desirabilityScore.anyOf[1]null No
areas[].capacity No
areas[].capacity.anyOf[0]integer No
areas[].capacity.anyOf[1]null No
areas[].sortOrderinteger No
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_areas_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.areaIDsarray Sì
$.oneOf[0].allOf[1].Payload.areaIDs[]integer No
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_areas",
    "RequestUserAlias": "example-user",
    "Payload": {
        "areaIDs": []
    }
}
Documentazione dell’endpoint leggibile dalle macchine
POST

/v1/floorplan/set_event_area

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

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATLocationEvent_ID int Sì — Event to tag.
ATFloorplanArea_ID int Sì — Area to bind (0 to clear).
isWritingRequest bool No false Set true to actually persist.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_event_area_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payload = true Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_event_area",
    "RequestUserAlias": "example-user",
    "Payload": true
}
Documentazione dell’endpoint leggibile dalle macchine
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.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplan_ID int Sì — Owner floorplan; required when creating.
ATFloorplanFloor_ID int Sì — 0 to create, or existing row ID to update.
name string Sì — Floor display name.
floorOrder int No 0 -2..N ordering hint (-2 = sub-basement, 0 = ground).
viewBoxWidth int No 1000 SVG viewbox width.
viewBoxHeight int No 1000 SVG viewbox height.
architectureSVG string No "" Raw SVG fragment for the building shell; sanitised server-side.
backgroundImageURL string No "" Optional traced reference photo URL.
isWritingRequest bool No false Set true to actually persist.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_floor_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_floor",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATFloorplanFloor_ID": 0
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplanFloor_ID int Sì — Floor to land the architecture on.
svgFragment string Sì — The SVG text. May or may not have an outer svg element.
autoExtractAreas bool No false True to also create draft areas from titled shapes.
isWritingRequest bool No false Set true to actually persist.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_imported_svg_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger Sì
$.oneOf[0].allOf[1].Payload.architectureSVGstring Sì
$.oneOf[0].allOf[1].Payload.extractedAreaCountinteger Sì
$.oneOf[0].allOf[1].Payload.sanitisedBytesinteger Sì
$.oneOf[0].allOf[1].Payload.sanitizedBytesinteger Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "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
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplanFloor_ID int Sì — Owner floor; required when creating.
ATFloorplanLayout_ID int Sì — 0 to create, or existing row ID to update.
name string Sì — Layout display name.
statusValue string No "Draft" One of Draft, Active, Historical.
effectiveStartDate string No "" Optional ISO datetime.
effectiveEndDate string No "" Optional ISO datetime.
isWritingRequest bool No false Set true to actually persist.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_layout_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.ATFloorplanLayout_IDinteger Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_layout",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATFloorplanLayout_ID": 0
    }
}
Documentazione dell’endpoint leggibile dalle macchine
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`.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATLocation_ID int Sì — Venue to tag.
ATFloorplanArea_ID int Sì — Area to bind to this venue (0 to clear).
isWritingRequest bool No false Set true to actually persist.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_location_area_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payload = true Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_location_area",
    "RequestUserAlias": "example-user",
    "Payload": true
}
Documentazione dell’endpoint leggibile dalle macchine
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.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
name string Sì — Display name for the floorplan.
ATLocation_ID int No 0 Optional venue link.
ATLocationEvent_ID int No 0 Optional event link.
isWritingRequest bool No false Set true to actually create. Defaults false (dry-run).
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_new_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.ATFloorplan_IDinteger Sì
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger Sì
$.oneOf[0].allOf[1].Payload.ATFloorplanLayout_IDinteger Sì
$.oneOf[0].allOf[1].Payload.editorURLstring Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "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"
    }
}
Documentazione dell’endpoint leggibile dalle macchine
POST

/v1/floorplan/set_rejected

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

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplan_ID int Sì — Floorplan to reject.
reason string No "" Short note for the originator.
isWritingRequest bool No false Set true to actually transition.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.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}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_rejected_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.Status = "Rejected" Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_rejected",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Rejected"
    }
}
Documentazione dell’endpoint leggibile dalle macchine
POST

/v1/floorplan/set_submitted_for_review

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

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
ATFloorplan_ID int Sì — Floorplan to submit.
isWritingRequest bool No false Set true to actually transition.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.appointmenttrader.com/v1/floorplan/set_submitted_for_review' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$floorplan_set_submitted_for_review_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.Status = "Submitted" Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_submitted_for_review",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Submitted"
    }
}
Documentazione dell’endpoint leggibile dalle macchine