Skip to content
Developer

BaseLocationPlan

Locations and bookings6 EndpointsEvent / BaseLocationPlan

Returns a list of BaseLocationPlan objects

GET/api/event/base_location_plan

Query parameters

idinteger
deletedbooleanThis property is used to mark an entity as deleted / archived | Default value: false
namestring
tokenstring
baseLocationstring
floorLevelstringFree text floor label, matches BaseBookable::getFloorLevel()
planModestring
sortOrderstringOrder of the floor tabs within one location
createdstring
updatedstring
searchStringstringtext to search for in the list
orderFieldNamestringname of the order field
orderFieldSortstringsorting modeAllowed: DESCASC
pageintegerpage of the list
pageSizeintegernumber of entries for each page
withMaxPageNumberstringreturns the number of pages available as a header if this is set

Responses

200Returns a list of BaseLocationPlan objectsarray<BaseLocationPlan>

Show fields (18)
  • aspectRationumber (float)

    Aspect ratio of the background image, null when the dimensions are unknown.

  • idinteger

    Primary key of the location plan. Internal ID.

  • tokenstring

    Public token of the location plan. Used in links instead of the ID.

  • floor_levelstring

    Free text floor label, matches BaseBookable::getFloorLevel()

  • sort_orderinteger

    Order of the floor tabs within one location

  • plan_modestring

    Mode of the plan, for example grid or image.

  • image_widthinteger

    Pixel width of the background image. Only used for the aspect ratio, the item coordinates themselves are normalized and therefore resolution independent.

  • image_heightinteger

    Height of the plan image in pixels.

  • grid_columnsinteger

    Number of columns of the grid.

  • grid_rowsinteger

    Number of rows of the grid.

  • default_horizon_hoursinteger

    How far ahead the status endpoint looks for the next booking, in hours.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • image_urlstring

    URL of the image of the entity.

  • colorstring

    Background color as hex value.

  • fg_colorstring

    Foreground color as hex value.

Request
curl --request GET \
  --url https://your-instance.iw-erp.de/api/event/base_location_plan \
  --header 'x-iw-jwt-token: <TOKEN>'
Response 200 application/json
[
  {
    "id": 42,
    "name": "Beispiel",
    "image_url": "https://vynst.de",
    "color": "#3f5efb",
    "fg_color": "#3f5efb",
    "aspectRatio": 1.5,
    "token": "string",
    "floor_level": "string",
    "sort_order": 1,
    "plan_mode": "string"
  }
]

Add a new BaseLocationPlan

POST/api/event/base_location_plan

Request body application/json

  • dataBaseLocationPlan2
    Show fields (10)
    • floor_levelstring

      Free text floor label, matches BaseBookable::getFloorLevel()

    • sort_orderinteger

      Order of the floor tabs within one location

    • plan_modestring

      Mode of the plan, for example grid or image.

    • image_widthinteger

      Pixel width of the background image. Only used for the aspect ratio, the item coordinates themselves are normalized and therefore resolution independent.

    • image_heightinteger

      Height of the plan image in pixels.

    • grid_columnsinteger

      Number of columns of the grid.

    • grid_rowsinteger

      Number of rows of the grid.

    • default_horizon_hoursinteger

      How far ahead the status endpoint looks for the next booking, in hours.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • image_urlstring

      URL of the image of the entity.

Responses

200Add a new BaseLocationPlanBaseLocationPlan

Show fields (18)
  • aspectRationumber (float)

    Aspect ratio of the background image, null when the dimensions are unknown.

  • idinteger

    Primary key of the location plan. Internal ID.

  • tokenstring

    Public token of the location plan. Used in links instead of the ID.

  • floor_levelstring

    Free text floor label, matches BaseBookable::getFloorLevel()

  • sort_orderinteger

    Order of the floor tabs within one location

  • plan_modestring

    Mode of the plan, for example grid or image.

  • image_widthinteger

    Pixel width of the background image. Only used for the aspect ratio, the item coordinates themselves are normalized and therefore resolution independent.

  • image_heightinteger

    Height of the plan image in pixels.

  • grid_columnsinteger

    Number of columns of the grid.

  • grid_rowsinteger

    Number of rows of the grid.

  • default_horizon_hoursinteger

    How far ahead the status endpoint looks for the next booking, in hours.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • image_urlstring

    URL of the image of the entity.

  • colorstring

    Background color as hex value.

  • fg_colorstring

    Foreground color as hex value.

Request
curl --request POST \
  --url https://your-instance.iw-erp.de/api/event/base_location_plan \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "image_url": "https://vynst.de",
    "floor_level": "string",
    "sort_order": 1,
    "plan_mode": "string",
    "image_width": 1,
    "image_height": 1
  }
}
'
Response 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "image_url": "https://vynst.de",
  "color": "#3f5efb",
  "fg_color": "#3f5efb",
  "aspectRatio": 1.5,
  "token": "string",
  "floor_level": "string",
  "sort_order": 1,
  "plan_mode": "string"
}

Returns a single BaseLocationPlan

GET/api/event/base_location_plan/{identifier}

Path parameters

identifierrequiredstring

Responses

200Returns a single BaseLocationPlanBaseLocationPlan

Show fields (18)
  • aspectRationumber (float)

    Aspect ratio of the background image, null when the dimensions are unknown.

  • idinteger

    Primary key of the location plan. Internal ID.

  • tokenstring

    Public token of the location plan. Used in links instead of the ID.

  • floor_levelstring

    Free text floor label, matches BaseBookable::getFloorLevel()

  • sort_orderinteger

    Order of the floor tabs within one location

  • plan_modestring

    Mode of the plan, for example grid or image.

  • image_widthinteger

    Pixel width of the background image. Only used for the aspect ratio, the item coordinates themselves are normalized and therefore resolution independent.

  • image_heightinteger

    Height of the plan image in pixels.

  • grid_columnsinteger

    Number of columns of the grid.

  • grid_rowsinteger

    Number of rows of the grid.

  • default_horizon_hoursinteger

    How far ahead the status endpoint looks for the next booking, in hours.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • image_urlstring

    URL of the image of the entity.

  • colorstring

    Background color as hex value.

  • fg_colorstring

    Foreground color as hex value.

Request
curl --request GET \
  --url https://your-instance.iw-erp.de/api/event/base_location_plan/42 \
  --header 'x-iw-jwt-token: <TOKEN>'
Response 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "image_url": "https://vynst.de",
  "color": "#3f5efb",
  "fg_color": "#3f5efb",
  "aspectRatio": 1.5,
  "token": "string",
  "floor_level": "string",
  "sort_order": 1,
  "plan_mode": "string"
}

Update a BaseLocationPlan

PUT/api/event/base_location_plan/{identifier}

Path parameters

identifierrequiredstring

Request body application/json

  • dataBaseLocationPlan2
    Show fields (10)
    • floor_levelstring

      Free text floor label, matches BaseBookable::getFloorLevel()

    • sort_orderinteger

      Order of the floor tabs within one location

    • plan_modestring

      Mode of the plan, for example grid or image.

    • image_widthinteger

      Pixel width of the background image. Only used for the aspect ratio, the item coordinates themselves are normalized and therefore resolution independent.

    • image_heightinteger

      Height of the plan image in pixels.

    • grid_columnsinteger

      Number of columns of the grid.

    • grid_rowsinteger

      Number of rows of the grid.

    • default_horizon_hoursinteger

      How far ahead the status endpoint looks for the next booking, in hours.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • image_urlstring

      URL of the image of the entity.

Responses

200Update a BaseLocationPlanBaseLocationPlan

Show fields (18)
  • aspectRationumber (float)

    Aspect ratio of the background image, null when the dimensions are unknown.

  • idinteger

    Primary key of the location plan. Internal ID.

  • tokenstring

    Public token of the location plan. Used in links instead of the ID.

  • floor_levelstring

    Free text floor label, matches BaseBookable::getFloorLevel()

  • sort_orderinteger

    Order of the floor tabs within one location

  • plan_modestring

    Mode of the plan, for example grid or image.

  • image_widthinteger

    Pixel width of the background image. Only used for the aspect ratio, the item coordinates themselves are normalized and therefore resolution independent.

  • image_heightinteger

    Height of the plan image in pixels.

  • grid_columnsinteger

    Number of columns of the grid.

  • grid_rowsinteger

    Number of rows of the grid.

  • default_horizon_hoursinteger

    How far ahead the status endpoint looks for the next booking, in hours.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • image_urlstring

    URL of the image of the entity.

  • colorstring

    Background color as hex value.

  • fg_colorstring

    Foreground color as hex value.

Request
curl --request PUT \
  --url https://your-instance.iw-erp.de/api/event/base_location_plan/42 \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "image_url": "https://vynst.de",
    "floor_level": "string",
    "sort_order": 1,
    "plan_mode": "string",
    "image_width": 1,
    "image_height": 1
  }
}
'
Response 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "image_url": "https://vynst.de",
  "color": "#3f5efb",
  "fg_color": "#3f5efb",
  "aspectRatio": 1.5,
  "token": "string",
  "floor_level": "string",
  "sort_order": 1,
  "plan_mode": "string"
}

Update a BaseLocationPlan

PATCH/api/event/base_location_plan/{identifier}

Path parameters

identifierrequiredstring

Request body application/json

  • dataBaseLocationPlan2
    Show fields (10)
    • floor_levelstring

      Free text floor label, matches BaseBookable::getFloorLevel()

    • sort_orderinteger

      Order of the floor tabs within one location

    • plan_modestring

      Mode of the plan, for example grid or image.

    • image_widthinteger

      Pixel width of the background image. Only used for the aspect ratio, the item coordinates themselves are normalized and therefore resolution independent.

    • image_heightinteger

      Height of the plan image in pixels.

    • grid_columnsinteger

      Number of columns of the grid.

    • grid_rowsinteger

      Number of rows of the grid.

    • default_horizon_hoursinteger

      How far ahead the status endpoint looks for the next booking, in hours.

    • deletedboolean

      This property is used to mark an entity as deleted / archived

    • image_urlstring

      URL of the image of the entity.

Responses

200Update a BaseLocationPlanBaseLocationPlan

Show fields (18)
  • aspectRationumber (float)

    Aspect ratio of the background image, null when the dimensions are unknown.

  • idinteger

    Primary key of the location plan. Internal ID.

  • tokenstring

    Public token of the location plan. Used in links instead of the ID.

  • floor_levelstring

    Free text floor label, matches BaseBookable::getFloorLevel()

  • sort_orderinteger

    Order of the floor tabs within one location

  • plan_modestring

    Mode of the plan, for example grid or image.

  • image_widthinteger

    Pixel width of the background image. Only used for the aspect ratio, the item coordinates themselves are normalized and therefore resolution independent.

  • image_heightinteger

    Height of the plan image in pixels.

  • grid_columnsinteger

    Number of columns of the grid.

  • grid_rowsinteger

    Number of rows of the grid.

  • default_horizon_hoursinteger

    How far ahead the status endpoint looks for the next booking, in hours.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • namestring

    Name of the entity.

  • image_urlstring

    URL of the image of the entity.

  • colorstring

    Background color as hex value.

  • fg_colorstring

    Foreground color as hex value.

Request
curl --request PATCH \
  --url https://your-instance.iw-erp.de/api/event/base_location_plan/42 \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "data": {
    "image_url": "https://vynst.de",
    "floor_level": "string",
    "sort_order": 1,
    "plan_mode": "string",
    "image_width": 1,
    "image_height": 1
  }
}
'
Response 200 application/json
{
  "id": 42,
  "name": "Beispiel",
  "image_url": "https://vynst.de",
  "color": "#3f5efb",
  "fg_color": "#3f5efb",
  "aspectRatio": 1.5,
  "token": "string",
  "floor_level": "string",
  "sort_order": 1,
  "plan_mode": "string"
}

Replaces the placed items of a plan in one request.

POST/api/event/base_location_plan/{identifier}/items_bulk

The editor holds the full item state locally and sends it back as a whole, so this is a replace, not a merge: every item in the payload is created or updated, and every item of the plan that is missing from the payload is soft deleted. The payload is validated as a whole and written in one transaction, so a half saved plan is impossible. With planUpdated the save is refused (error code 409) when the plan was saved by someone else since the client loaded it.

Path parameters

identifierrequiredstring

Query parameters

idinteger
deletedbooleanThis property is used to mark an entity as deleted / archived | Default value: false
tokenstring
planstring
baseBookablestring
itemTypestring
shapestring
createdstring
updatedstring
searchStringstringtext to search for in the list
orderFieldNamestringname of the order field
orderFieldSortstringsorting modeAllowed: DESCASC
pageintegerpage of the list
pageSizeintegernumber of entries for each page
withMaxPageNumberstringreturns the number of pages available as a header if this is set

Request body application/json

  • planUpdatedstring (date-time)

    updated timestamp of the plan as the client loaded it; when it no longer matches, the save fails with error code 409

  • itemsarray<object>required

    Full item state of the plan. Items missing from this list are soft deleted. At most 2000 items.

    Show fields (18)
    • idinteger

      id of an existing item of this plan; missing or foreign ids create a new item

    • baseBookableinteger

      id of the placed object (not archived), null for decoration items

    • itemTypestring

      Allowed: bookable label area icon legend

    • shapestring

      Allowed: rect circle polygon

    • posXnumber

      left edge, 0..1 of the plan width

    • posYnumber

      top edge, 0..1 of the plan height

    • widthnumber

      0..1 of the plan width

    • heightnumber

      0..1 of the plan height

    • rotationnumber

      degrees

    • polygonPointsarray<array<number>>

      [[x, y], ...] normalized, only for shape polygon

    • zIndexinteger
    • labelstring
    • iconstring
    • colorstring
    • fgColorstring
    • showLabelboolean
    • showStatusboolean
    • showNextboolean

Responses

200Returns the stored items of the planarray<BaseLocationPlanItem>

Show fields (25)
  • planinteger
  • displayLabelstring

    Label actually shown on the plan: the manual label wins, otherwise the cached bookable name.

  • idinteger

    Primary key of the plan item. Internal ID.

  • tokenstring

    Public token of the plan item. Used instead of the ID.

  • item_typestring

    Type of the item, for example seat, table or label.

  • shapestring

    Shape of the item on the plan.

  • pos_xnumber (float)

    Left edge, normalized 0.0 - 1.0

  • pos_ynumber (float)

    Top edge, normalized 0.0 - 1.0

  • widthnumber (float)

    Width of the item in plan units.

  • heightnumber (float)

    Height of the item in plan units.

  • rotationnumber (float)

    Rotation of the item in degrees.

  • z_indexinteger

    Stacking order of the item on the plan.

  • labelstring

    Overrides the bookable name on the plan.

  • iconstring

    Icon shown on the item.

  • show_labelboolean

    Show the label of the item.

  • show_statusboolean

    Show the status of the item.

  • show_nextboolean

    Show the next booking of the item.

  • seat_rowstring

    Seat: row ("5", "B") as printed on the ticket.

  • seat_numberstring

    Seat: number within the row.

  • seat_zonestring

    Seat: price zone ("A", "Loge"). An event's ticket category with the same PredefinedBillingItem::ticketSeatZone may be booked on it; without a zone every category may.

  • createdstring (date-time)

    Point in time the entity was created.

  • updatedstring (date-time)

    Point in time the entity was last updated.

  • deletedboolean

    This property is used to mark an entity as deleted / archived

  • colorstring

    Background color as hex value.

  • fg_colorstring

    Foreground color as hex value.

Request
curl --request POST \
  --url https://your-instance.iw-erp.de/api/event/base_location_plan/42/items_bulk \
  --header 'content-type: application/json' \
  --header 'x-iw-jwt-token: <TOKEN>' \
  --data '
{
  "items": [
    {
      "id": 42,
      "color": "#3f5efb",
      "baseBookable": 1,
      "itemType": "bookable",
      "shape": "rect",
      "posX": 1.5
    }
  ],
  "planUpdated": "2026-10-15T09:30:00+02:00"
}
'
Response 200 application/json
[
  {
    "id": 42,
    "color": "#3f5efb",
    "fg_color": "#3f5efb",
    "plan": 1,
    "displayLabel": "string",
    "token": "string",
    "item_type": "string",
    "shape": "string",
    "pos_x": 1.5,
    "pos_y": 1.5
  }
]