> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tangoanalytics.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Put locationslocators and structures

> Updates the Locator Nodes and Locator Structures identified in the provided arrays. In
cases where new Locator Nodes or Locator Structures are inserted in their respective hierarchies
(i.e. new values are included in the **children** array field of a Locator Node or Locator
Structure being updated), new Locator Nodes or Locator Structures will be created in the System. Likewise,
in cases where Locator Nodes or Locator Structures have been removed from their respective hierarchies, those
missing Nodes and Structures will be marked as deleted in the System.

Locator Nodes are used to define and describe location information in a tree
hierarchy. Parent locator nodes represent 'areas' which 'contain' the locations
represented by child locator nodes.

Locations and Location Structures are updated as **sets** of data. When a Location set is updated, any locations that are removed
from the original set created will be deleted from the System. Any Locator Nodes added to the set as part of the Update operation
will be added to the System. Likewise, Locator Structures are added and removed as they are present in the update set.

*Note: If a Locator Node has a Venue Node within its tree, that Locator Node cannot be deleted from the set.
Locator Structures which are associated with existing Locator Nodes also cannot be deleted.*

The requesting User must have the following rights to perform this task:

This operation requires an **Update Locations Request** argument. The request has the following attributes:



This operation returns a **Locator Node Wrapper** with the following attributes:



## OpenAPI

````yaml /tango_reserve/integrations/guides/aq-api.yaml put /locations/locators-and-structures
openapi: 3.1.0
info:
  description: phoenix-restful
  version: '2.0'
  title: Reserve Rest API
servers:
  - url: /aq-api/
security: []
tags:
  - name: AccountService
    description: |-
      Account Service

      The Accounts service provides an interface for business customer accounts
      whose intent includes creating resources which may be reserved in a public
      or private space.
  - name: AnalyticsGatewayService
    description: |-
      Provides gateway interface into analytic reports generated from Phoenix
      data.
  - name: ApplicationService
    description: >-
      Application Service


      Provides operations for creating and managing external applications which
      may interact with

      the Agilquest Forums platform.
  - name: ApprovalsService
    description: Base class for RESTful services.
  - name: AvailabilityService
    description: >-
      Availability Service


      Exposes operations which provide availability information for Assets
      within Agilquest Forums.
  - name: CacheReadinessService
  - name: ChargeCodeService
    description: |-
      Charge Code Service

      The Charge Code Service provides the RESTful end points for interacting
      with Charge Codes in the Agilquest.
  - name: ForumService
    description: Base class for RESTful services.
  - name: LanguageService
    description: |-
      Provides a RESTful interface to the Language services for language
      tags and, language bundles, and language data for Agilquest.
  - name: LocaleService
    description: >-
      The Locale Service provides TimeZone and LanguageData information about
      the

      Agilquest.
  - name: LocationService
    description: |-
      The Location Service provides an interface for interacting with Locations
      and Locator Structures in the Agilquest.
  - name: LookupService
    description: |-
      The lookup service exposes the code table lookup functionality of the
      Agilquest.
  - name: PropertiesService
    description: Retrieves the properties associated with a given account.
  - name: ReservationEventViewsService
    description: >-
      The Reservation Event View Service provides views of Reservation events
      (ReservationGroup).
  - name: ReservationService
    description: |-
      The Reservation Service handles creating, changing, and retrieving
      reservations through the ReservationServiceBusiness interface.
  - name: ReservationViewsService
    description: |-
      The Reservation View Service provides views into the existing reservation
      information maintained by the Agilquest.
  - name: ResourceGroupService
    description: |-
      The Resource Group service provides an interface into manipulating
      the resource groups in the Agilquest.
  - name: ResourceService
    description: Base class for RESTful services.
  - name: ResourceViewsService
    description: |-
      The Resource Views service provides views into existing resources in
      the Agilquest.
  - name: ReviewsService
    description: Base class for RESTful services.
  - name: RoomConfigurationService
    description: Base class for RESTful services.
  - name: SplashPageService
    description: Base class for RESTful services.
  - name: SystemService
    description: System Service.
  - name: UserGroupService
    description: Base class for RESTful services.
  - name: UserService
    description: |-
      The User Service provides an interface for adding, editing, and removing
      users in the Agilquest.
  - name: UserViewsService
    description: |-
      The User Views service provides views into the existing User information
      maintained by the Agilquest.
  - name: VisitorService
    description: >-
      The Visitor Service provides an interface for adding, editing, and
      removing

      visitors in the Agilquest.
paths:
  /locations/locators-and-structures:
    put:
      tags:
        - LocationService
      description: >-
        Updates the Locator Nodes and Locator Structures identified in the
        provided arrays. In

        cases where new Locator Nodes or Locator Structures are inserted in
        their respective hierarchies

        (i.e. new values are included in the **children** array field of a
        Locator Node or Locator

        Structure being updated), new Locator Nodes or Locator Structures will
        be created in the System. Likewise,

        in cases where Locator Nodes or Locator Structures have been removed
        from their respective hierarchies, those

        missing Nodes and Structures will be marked as deleted in the System.


        Locator Nodes are used to define and describe location information in a
        tree

        hierarchy. Parent locator nodes represent 'areas' which 'contain' the
        locations

        represented by child locator nodes.


        Locations and Location Structures are updated as **sets** of data. When
        a Location set is updated, any locations that are removed

        from the original set created will be deleted from the System. Any
        Locator Nodes added to the set as part of the Update operation

        will be added to the System. Likewise, Locator Structures are added and
        removed as they are present in the update set.


        *Note: If a Locator Node has a Venue Node within its tree, that Locator
        Node cannot be deleted from the set.

        Locator Structures which are associated with existing Locator Nodes also
        cannot be deleted.*


        The requesting User must have the following rights to perform this task:


        This operation requires an **Update Locations Request** argument. The
        request has the following attributes:




        This operation returns a **Locator Node Wrapper** with the following
        attributes:
      operationId: updateLocations
      parameters: []
      requestBody:
        description: >-
          A wrapper class with a list of LocatorNode elements

          and a list of LocatorStructure elements. The locator

          structure defines how locator nodes are to be organized

          and at what level a node must have a Venue.

          The LocatorNode is a user-defined, self referencing

          data object that will be used to drill down to Containers with
          Resources
        required: false
        content:
          application/json:
            examples:
              example:
                value:
                  structures:
                    - venueLevel: true
                      name: ...
                      languageTagKey: ...
                      sysidLocatorStructure: 12345
                    - venueLevel: true
                      name: ...
                      languageTagKey: ...
                      sysidLocatorStructure: 12345
                  locators:
                    - discriminator: LOC
                      sysidParentNode: 12345
                      sysidLocatorNode: 12345
                      locationMapImages:
                        - name: ...
                          sysidLocationMapImage: 12345
                          displayOrder: 12345
                          thumbnailSource: ...
                          imageSource: ...
                          description: ...
                          defaultImage: true
                          height: 12345
                          width: 12345
                        - name: ...
                          sysidLocationMapImage: 12345
                          displayOrder: 12345
                          thumbnailSource: ...
                          imageSource: ...
                          description: ...
                          defaultImage: true
                          height: 12345
                          width: 12345
                      displayOrder: 12345
                      locationImages:
                        - width: 12345
                          name: ...
                          description: ...
                          displayOrder: 12345
                          imageSource: ...
                          height: 12345
                          defaultImage: true
                          sysidLocationImage: 12345
                          thumbnailSource: ...
                        - width: 12345
                          name: ...
                          description: ...
                          displayOrder: 12345
                          imageSource: ...
                          height: 12345
                          defaultImage: true
                          sysidLocationImage: 12345
                          thumbnailSource: ...
                      name: ...
                      children:
                        - {}
                        - {}
                      locationLevel: 12345
                    - discriminator: LOC
                      sysidParentNode: 12345
                      sysidLocatorNode: 12345
                      locationMapImages:
                        - name: ...
                          sysidLocationMapImage: 12345
                          displayOrder: 12345
                          thumbnailSource: ...
                          imageSource: ...
                          description: ...
                          defaultImage: true
                          height: 12345
                          width: 12345
                        - name: ...
                          sysidLocationMapImage: 12345
                          displayOrder: 12345
                          thumbnailSource: ...
                          imageSource: ...
                          description: ...
                          defaultImage: true
                          height: 12345
                          width: 12345
                      displayOrder: 12345
                      locationImages:
                        - width: 12345
                          name: ...
                          description: ...
                          displayOrder: 12345
                          imageSource: ...
                          height: 12345
                          defaultImage: true
                          sysidLocationImage: 12345
                          thumbnailSource: ...
                        - width: 12345
                          name: ...
                          description: ...
                          displayOrder: 12345
                          imageSource: ...
                          height: 12345
                          defaultImage: true
                          sysidLocationImage: 12345
                          thumbnailSource: ...
                      name: ...
                      children:
                        - {}
                        - {}
                      locationLevel: 12345
            schema:
              $ref: '#/components/schemas/UpdateLocationsRequest'
      responses:
        '204':
          content:
            application/json:
              examples:
                example:
                  value:
                    locators:
                      - discriminator: LOC
                        sysidParentNode: 12345
                        sysidLocatorNode: 12345
                        locationMapImages:
                          - name: ...
                            sysidLocationMapImage: 12345
                            displayOrder: 12345
                            thumbnailSource: ...
                            imageSource: ...
                            description: ...
                            defaultImage: true
                            height: 12345
                            width: 12345
                          - name: ...
                            sysidLocationMapImage: 12345
                            displayOrder: 12345
                            thumbnailSource: ...
                            imageSource: ...
                            description: ...
                            defaultImage: true
                            height: 12345
                            width: 12345
                        displayOrder: 12345
                        locationImages:
                          - width: 12345
                            name: ...
                            description: ...
                            displayOrder: 12345
                            imageSource: ...
                            height: 12345
                            defaultImage: true
                            sysidLocationImage: 12345
                            thumbnailSource: ...
                          - width: 12345
                            name: ...
                            description: ...
                            displayOrder: 12345
                            imageSource: ...
                            height: 12345
                            defaultImage: true
                            sysidLocationImage: 12345
                            thumbnailSource: ...
                        name: ...
                        children:
                          - {}
                          - {}
                        locationLevel: 12345
                      - discriminator: LOC
                        sysidParentNode: 12345
                        sysidLocatorNode: 12345
                        locationMapImages:
                          - name: ...
                            sysidLocationMapImage: 12345
                            displayOrder: 12345
                            thumbnailSource: ...
                            imageSource: ...
                            description: ...
                            defaultImage: true
                            height: 12345
                            width: 12345
                          - name: ...
                            sysidLocationMapImage: 12345
                            displayOrder: 12345
                            thumbnailSource: ...
                            imageSource: ...
                            description: ...
                            defaultImage: true
                            height: 12345
                            width: 12345
                        displayOrder: 12345
                        locationImages:
                          - width: 12345
                            name: ...
                            description: ...
                            displayOrder: 12345
                            imageSource: ...
                            height: 12345
                            defaultImage: true
                            sysidLocationImage: 12345
                            thumbnailSource: ...
                          - width: 12345
                            name: ...
                            description: ...
                            displayOrder: 12345
                            imageSource: ...
                            height: 12345
                            defaultImage: true
                            sysidLocationImage: 12345
                            thumbnailSource: ...
                        name: ...
                        children:
                          - {}
                          - {}
                        locationLevel: 12345
              schema:
                $ref: '#/components/schemas/LocatorNodeWrapper'
          description: >-
            List of updated Locator Node elements or
            Response(AgilquestExceptionData)

            com.agilquest.phoenix.shared.data.rest.wrapper.LocatorNodeWrapper
components:
  schemas:
    UpdateLocationsRequest:
      type: object
      title: UpdateLocationsRequest
      allOf:
        - $ref: '#/components/schemas/DependentData'
        - properties:
            structures:
              type: array
              items:
                $ref: '#/components/schemas/LocatorStructure'
            locators:
              type: array
              items:
                $ref: '#/components/schemas/LocatorNode'
      example:
        structures:
          - venueLevel: true
            name: ...
            languageTagKey: ...
            sysidLocatorStructure: 12345
          - venueLevel: true
            name: ...
            languageTagKey: ...
            sysidLocatorStructure: 12345
        locators:
          - discriminator: LOC
            sysidParentNode: 12345
            sysidLocatorNode: 12345
            locationMapImages:
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
            displayOrder: 12345
            locationImages:
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
            name: ...
            children:
              - {}
              - {}
            locationLevel: 12345
          - discriminator: LOC
            sysidParentNode: 12345
            sysidLocatorNode: 12345
            locationMapImages:
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
            displayOrder: 12345
            locationImages:
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
            name: ...
            children:
              - {}
              - {}
            locationLevel: 12345
    LocatorNodeWrapper:
      type: object
      title: LocatorNodeWrapper
      allOf:
        - $ref: '#/components/schemas/DependentData'
        - properties:
            locators:
              type: array
              items:
                $ref: '#/components/schemas/LocatorNode'
      example:
        locators:
          - discriminator: LOC
            sysidParentNode: 12345
            sysidLocatorNode: 12345
            locationMapImages:
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
            displayOrder: 12345
            locationImages:
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
            name: ...
            children:
              - {}
              - {}
            locationLevel: 12345
          - discriminator: LOC
            sysidParentNode: 12345
            sysidLocatorNode: 12345
            locationMapImages:
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
            displayOrder: 12345
            locationImages:
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
            name: ...
            children:
              - {}
              - {}
            locationLevel: 12345
    DependentData:
      type: object
      title: DependentData
      example: {}
    LocatorStructure:
      type: object
      title: LocatorStructure
      required:
        - venueLevel
      allOf:
        - $ref: '#/components/schemas/DependentData'
        - properties:
            venueLevel:
              type: boolean
            name:
              type: string
            languageTagKey:
              type: string
            sysidLocatorStructure:
              type: integer
              format: int32
      example:
        venueLevel: true
        name: ...
        languageTagKey: ...
        sysidLocatorStructure: 12345
    LocatorNode:
      discriminator: discriminator
      type: object
      title: LocatorNode
      required:
        - locationLevel
      allOf:
        - $ref: '#/components/schemas/DependentData'
        - properties:
            discriminator:
              description: The JSON object type.
              type: string
            sysidParentNode:
              type: integer
              format: int32
            sysidLocatorNode:
              type: integer
              format: int32
            locationMapImages:
              type: array
              items:
                $ref: '#/components/schemas/LocationMapImage'
            displayOrder:
              type: integer
              format: int32
            locationImages:
              type: array
              items:
                $ref: '#/components/schemas/LocationImage'
            name:
              type: string
            children:
              type: array
              items:
                $ref: '#/components/schemas/LocatorNode'
            locationLevel:
              type: integer
              format: int32
      example:
        discriminator: LOC
        sysidParentNode: 12345
        sysidLocatorNode: 12345
        locationMapImages:
          - name: ...
            sysidLocationMapImage: 12345
            displayOrder: 12345
            thumbnailSource: ...
            imageSource: ...
            description: ...
            defaultImage: true
            height: 12345
            width: 12345
          - name: ...
            sysidLocationMapImage: 12345
            displayOrder: 12345
            thumbnailSource: ...
            imageSource: ...
            description: ...
            defaultImage: true
            height: 12345
            width: 12345
        displayOrder: 12345
        locationImages:
          - width: 12345
            name: ...
            description: ...
            displayOrder: 12345
            imageSource: ...
            height: 12345
            defaultImage: true
            sysidLocationImage: 12345
            thumbnailSource: ...
          - width: 12345
            name: ...
            description: ...
            displayOrder: 12345
            imageSource: ...
            height: 12345
            defaultImage: true
            sysidLocationImage: 12345
            thumbnailSource: ...
        name: ...
        children:
          - discriminator: LOC
            sysidParentNode: 12345
            sysidLocatorNode: 12345
            locationMapImages:
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
            displayOrder: 12345
            locationImages:
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
            name: ...
            children:
              - {}
              - {}
            locationLevel: 12345
          - discriminator: LOC
            sysidParentNode: 12345
            sysidLocatorNode: 12345
            locationMapImages:
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
              - name: ...
                sysidLocationMapImage: 12345
                displayOrder: 12345
                thumbnailSource: ...
                imageSource: ...
                description: ...
                defaultImage: true
                height: 12345
                width: 12345
            displayOrder: 12345
            locationImages:
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
              - width: 12345
                name: ...
                description: ...
                displayOrder: 12345
                imageSource: ...
                height: 12345
                defaultImage: true
                sysidLocationImage: 12345
                thumbnailSource: ...
            name: ...
            children:
              - {}
              - {}
            locationLevel: 12345
        locationLevel: 12345
    LocationMapImage:
      type: object
      title: LocationMapImage
      required:
        - defaultImage
        - height
        - width
      allOf:
        - $ref: '#/components/schemas/DependentData'
        - properties:
            name:
              type: string
            sysidLocationMapImage:
              type: integer
              format: int32
            displayOrder:
              type: integer
              format: int32
            thumbnailSource:
              type: string
            imageSource:
              type: string
            description:
              type: string
            defaultImage:
              type: boolean
            height:
              type: integer
              format: int32
            width:
              type: integer
              format: int32
      example:
        name: ...
        sysidLocationMapImage: 12345
        displayOrder: 12345
        thumbnailSource: ...
        imageSource: ...
        description: ...
        defaultImage: true
        height: 12345
        width: 12345
    LocationImage:
      type: object
      title: LocationImage
      required:
        - width
        - height
        - defaultImage
      allOf:
        - $ref: '#/components/schemas/DependentData'
        - properties:
            width:
              type: integer
              format: int32
            name:
              type: string
            description:
              type: string
            displayOrder:
              type: integer
              format: int32
            imageSource:
              type: string
            height:
              type: integer
              format: int32
            defaultImage:
              type: boolean
            sysidLocationImage:
              type: integer
              format: int32
            thumbnailSource:
              type: string
      example:
        width: 12345
        name: ...
        description: ...
        displayOrder: 12345
        imageSource: ...
        height: 12345
        defaultImage: true
        sysidLocationImage: 12345
        thumbnailSource: ...

````