En ligne  

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

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplan_ID int Oui — Floorplan to fetch.
Exemple de requête (cURL)
curl --get \
  'https://fr.appointmenttrader.com/v1/floorplan/get_by_id' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}'

Retour

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

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplanFloor_ID int Oui — Floor row ID.
Exemple de requête (cURL)
curl --get \
  'https://fr.appointmenttrader.com/v1/floorplan/get_floor' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplanFloor_ID={{ATFloorplanFloor_ID}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_get_floor_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.floor Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0]object Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].IDDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ID.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ID.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].CreatedDatestring Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].LastUpdateDate.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].DeletedDate = null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ATFloorplan_IDDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ATFloorplan_ID.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ATFloorplan_ID.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].Namestring Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrderDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrder.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].FloorOrder.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidthDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidth.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxWidth.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeightDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeight.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ViewBoxHeight.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].ArchitectureSVG.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].BackgroundImageURL.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layoutsarray Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[]object Non
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].IDDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ID.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ID.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].CreatedDatestring Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].LastUpdateDate.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].DeletedDate = null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ATFloorplanFloor_IDDatabaseInteger OuiInteger 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 Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].ATFloorplanFloor_ID.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Namestring Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Statusstring ["Draft","Active","Historical"] Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveStartDate.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].EffectiveEndDate.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[0]DatabaseInteger OuiInteger 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 Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[0].oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].Creator-ATUser_ID.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areasarray Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[]object Non
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].IDDatabaseInteger OuiInteger 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 Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ID.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].CreatedDatestring Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].LastUpdateDate.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DeletedDate = null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ATFloorplanLayout_IDDatabaseInteger OuiInteger 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 Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].ATFloorplanLayout_ID.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Labelstring Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Category.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SVGShapestring ["rect","polygon","circle","path"] Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SVGGeometrystring Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[0]DatabaseInteger OuiInteger 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 Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[0].oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].DesirabilityScore.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[0]DatabaseInteger OuiInteger 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 Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[0].oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].Capacity.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SortOrderDatabaseInteger OuiInteger 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 Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[0].layouts[].areas[].SortOrder.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.floor.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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": []
        }
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
ATLocationEvent_ID int Oui — Event to fetch floorplans for.
Exemple de requête (cURL)
curl --get \
  'https://fr.appointmenttrader.com/v1/floorplan/get_for_event' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATLocationEvent_ID={{ATLocationEvent_ID}}'

Retour

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

Paramètres

NomTypeObligatoireValeur par défautDescription
ATLocation_ID int Oui — Location to fetch floorplans for.
Exemple de requête (cURL)
curl --get \
  'https://fr.appointmenttrader.com/v1/floorplan/get_for_location' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATLocation_ID={{ATLocation_ID}}'

Retour

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

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplan_ID int Oui — Floorplan to look up.
ATApps_ID int Non 0 App requesting the data; pass 0 for first-party.
Exemple de requête (cURL)
curl --get \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_get_license_for_app_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.royaltyPctnumber Oui
$.oneOf[0].allOf[1].Payload.flatFeeCentsinteger Oui
$.oneOf[0].allOf[1].Payload.sourcestring ["app","wildcard","default"] Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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"
    }
}
Documentation du point de terminaison lisible par machine
GET

/v1/floorplan/get_pending_review_list

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

Paramètres

NomTypeObligatoireValeur par défautDescription
resultLimit int Non 50 Max rows to return.
resultOffset int Non 0 Pagination offset.
Exemple de requête (cURL)
curl --get \
  'https://fr.appointmenttrader.com/v1/floorplan/get_pending_review_list' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'resultLimit={{resultLimit}}' \
  --data-urlencode 'resultOffset={{resultOffset}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_get_pending_review_list_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.itemsarray Oui
$.oneOf[0].allOf[1].Payload.items[]object Non
$.oneOf[0].allOf[1].Payload.items[].IDDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].ID.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.items[].ID.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.items[].Namestring Oui
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_IDDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_ID.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.items[].Creator-ATUser_ID.oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID Oui
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[0]DatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[0].oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[0].oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.items[].ATLocation_ID.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID Oui
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[0]DatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[0].oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[0].oneOf[1]string Oui
$.oneOf[0].allOf[1].Payload.items[].ATLocationEvent_ID.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.items[].CreatedDatestring Oui
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate Oui
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.items[].LastUpdateDate.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias Oui
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.items[].CreatorAlias.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.items[].LocationName Oui
$.oneOf[0].allOf[1].Payload.items[].LocationName.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.items[].LocationName.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.items[].EventName Oui
$.oneOf[0].allOf[1].Payload.items[].EventName.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.items[].EventName.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/get_pending_review_list",
    "RequestUserAlias": "example-user",
    "Payload": {
        "items": []
    }
}
Documentation du point de terminaison lisible par machine
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`.

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplan_ID int Oui — Floorplan to approve.
isWritingRequest bool Non false Set true to actually transition.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.appointmenttrader.com/v1/floorplan/set_approved' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_approved_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.Status = "Active" Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_approved",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Active"
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplanLayout_ID int Oui — Layout to replace areas on.
areas array Oui — 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 Non false Set true to actually persist.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Paramètres: areas
ChampTypeObligatoireDescription
areasstring (application/json) OuiPass a JSON-encoded string, not nested form fields.
areasarray (JSON décodé) Oui
areas[]object Non
areas[].labelstring Oui
areas[].svgShapestring ["rect","polygon","circle","path"] Non
areas[].svgGeometrystring Oui
areas[].categorystring Non
areas[].desirabilityScore Non
areas[].desirabilityScore.anyOf[0]integer Non
areas[].desirabilityScore.anyOf[1]null Non
areas[].capacity Non
areas[].capacity.anyOf[0]integer Non
areas[].capacity.anyOf[1]null Non
areas[].sortOrderinteger Non
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_areas_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.areaIDsarray Oui
$.oneOf[0].allOf[1].Payload.areaIDs[]integer Non
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_areas",
    "RequestUserAlias": "example-user",
    "Payload": {
        "areaIDs": []
    }
}
Documentation du point de terminaison lisible par machine
POST

/v1/floorplan/set_event_area

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

Paramètres

NomTypeObligatoireValeur par défautDescription
ATLocationEvent_ID int Oui — Event to tag.
ATFloorplanArea_ID int Oui — Area to bind (0 to clear).
isWritingRequest bool Non false Set true to actually persist.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_event_area_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payload = true Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_event_area",
    "RequestUserAlias": "example-user",
    "Payload": true
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

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

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_floor_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_floor",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATFloorplanFloor_ID": 0
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplanFloor_ID int Oui — Floor to land the architecture on.
svgFragment string Oui — The SVG text. May or may not have an outer svg element.
autoExtractAreas bool Non false True to also create draft areas from titled shapes.
isWritingRequest bool Non false Set true to actually persist.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_imported_svg_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger Oui
$.oneOf[0].allOf[1].Payload.architectureSVGstring Oui
$.oneOf[0].allOf[1].Payload.extractedAreaCountinteger Oui
$.oneOf[0].allOf[1].Payload.sanitisedBytesinteger Oui
$.oneOf[0].allOf[1].Payload.sanitizedBytesinteger Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplanFloor_ID int Oui — Owner floor; required when creating.
ATFloorplanLayout_ID int Oui — 0 to create, or existing row ID to update.
name string Oui — Layout display name.
statusValue string Non "Draft" One of Draft, Active, Historical.
effectiveStartDate string Non "" Optional ISO datetime.
effectiveEndDate string Non "" Optional ISO datetime.
isWritingRequest bool Non false Set true to actually persist.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_layout_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.ATFloorplanLayout_IDinteger Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_layout",
    "RequestUserAlias": "example-user",
    "Payload": {
        "ATFloorplanLayout_ID": 0
    }
}
Documentation du point de terminaison lisible par machine
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`.

Paramètres

NomTypeObligatoireValeur par défautDescription
ATLocation_ID int Oui — Venue to tag.
ATFloorplanArea_ID int Oui — Area to bind to this venue (0 to clear).
isWritingRequest bool Non false Set true to actually persist.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_location_area_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payload = true Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_location_area",
    "RequestUserAlias": "example-user",
    "Payload": true
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
name string Oui — Display name for the floorplan.
ATLocation_ID int Non 0 Optional venue link.
ATLocationEvent_ID int Non 0 Optional event link.
isWritingRequest bool Non false Set true to actually create. Defaults false (dry-run).
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_new_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.ATFloorplan_IDinteger Oui
$.oneOf[0].allOf[1].Payload.ATFloorplanFloor_IDinteger Oui
$.oneOf[0].allOf[1].Payload.ATFloorplanLayout_IDinteger Oui
$.oneOf[0].allOf[1].Payload.editorURLstring Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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"
    }
}
Documentation du point de terminaison lisible par machine
POST

/v1/floorplan/set_rejected

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

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplan_ID int Oui — Floorplan to reject.
reason string Non "" Short note for the originator.
isWritingRequest bool Non false Set true to actually transition.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_rejected_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.Status = "Rejected" Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_rejected",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Rejected"
    }
}
Documentation du point de terminaison lisible par machine
POST

/v1/floorplan/set_submitted_for_review

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

Paramètres

NomTypeObligatoireValeur par défautDescription
ATFloorplan_ID int Oui — Floorplan to submit.
isWritingRequest bool Non false Set true to actually transition.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.appointmenttrader.com/v1/floorplan/set_submitted_for_review' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'ATFloorplan_ID={{ATFloorplan_ID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$floorplan_set_submitted_for_review_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.Status = "Submitted" Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/floorplan/set_submitted_for_review",
    "RequestUserAlias": "example-user",
    "Payload": {
        "Status": "Submitted"
    }
}
Documentation du point de terminaison lisible par machine