MVFv3 API Documentation
    Preparing search index...

    A locationInstance is a particular instance of an Enterprise Location that has some properties different from the parent. Eg, it may have siblingGroups, or state. Other differences like name and, in particular, geometryAnchors, will be handled in the parent LocationInstance.

    An Enterprise Location Instance:

    • MUST have a parent, referring to an Enterprise Location.
    • MUST have a locationInstanceId, referring to a LocationInstance.
    • MUST NOT have a locationId.
    • MUST have a unique ID, for localization to work.
    • SHOULD have AT LEAST ONE other Enterprise Location property set.

    It is otherwise a Partial.

    This implies that for an EntepriseLocationInstance to exist, there must also be a LocationInstance for it. Only one EnterpriseLocationInstance should exist for a given LocationInstance. That LocationInstance then MAY only differ from it's parent on the geometryAnchors property, relying on the EnterpriseLocationInstance to provide a unique property such as state.

    If a Location that has an EnterpriseLocation differs only in something covered by Location (say, name and geometryAnchor), there will NOT be an EnterpriseLocationInstance for it.

    Usage example:

    • An EnterpriseLocation representing a kiosk in several places. One of them is new, and has an EnterpriseLocationInstance with the new location state.
    type EnterpriseLocationInstance = {
        id: `eli_${string}`;
        parentId: `el_${string}`;
        locationInstanceId: `loci_${string}`;
        cmsId?: string;
        type?: string;
        sortOrder?: number;
        tags?: string[];
        picture?: string;
        states?: {
            type:
                | "closed-temporarily"
                | "new"
                | "pop-up"
                | "coming-soon"
                | "relocated"
                | "unknown";
            end?: string;
            start?: string;
        }[];
        siblingGroups?: { label: string; siblings: `loc_${string}`[] }[];
        gallery?: { image: string; caption?: string; embeddedUrl?: string }[];
        showFloatingLabelWhenImagePresent?: boolean;
        amenity?: string;
        showLogo?: boolean;
        primaryCategory?: `lcat_${string}`;
    }
    Index

    Properties

    id: `eli_${string}`

    The unique ID for this Enterprise Location Instance. This ID might be ephemeral and is really only for localization.

    parentId: `el_${string}`

    The parent Enterprise Location for this Enterprise Location Instance.

    locationInstanceId: `loci_${string}`

    The LocationInstance that will have any Location instance properties set, in particular geometryAnchors.

    cmsId?: string

    The original CMS ID of the EnterpriseLocation

    type?: string

    The type of the location, like amenity, tenant, etc.

    sortOrder?: number
    tags?: string[]

    Tags are used primarily as keywords to match against when searching. They are typically not used for display.

    picture?: string

    A photograph of the location, used as a visual aid during navigation.

    uri

    states?: {
        type:
            | "closed-temporarily"
            | "new"
            | "pop-up"
            | "coming-soon"
            | "relocated"
            | "unknown";
        end?: string;
        start?: string;
    }[]

    The location's state. No more than one state should be active at a time, and all but at most one should have dates set

    Type declaration

    • type:
          | "closed-temporarily"
          | "new"
          | "pop-up"
          | "coming-soon"
          | "relocated"
          | "unknown"

      The type of the location state. Technically not limited, but should be one of the following:

      • closed-temporarily
      • new
      • pop-up
      • coming-soon
      • relocated
    • Optionalend?: string

      The end date of the state

      date

    • Optionalstart?: string

      The start date of the state

      date

    siblingGroups?: { label: string; siblings: `loc_${string}`[] }[]

    Locations that are related to this location in some manner (described by the label).

    In airports, locations will typically get SiblingGroups with a label of "REFERENCE_POINT" linking to locations like "Terminal 1" and "Airside" to indicate which zone they are in, but SiblingGroups can be used for any type of relationship between locations.

    Note this links to the LocationId, not the EnterpriseLocationId.

    gallery?: { image: string; caption?: string; embeddedUrl?: string }[]

    A gallery of images for a location. May be a mix of promotional images, or images of the location itself. Caption should be supplied for accessibility purposes, since it will not be clear from context what the image represents.

    Type declaration

    • image: string
    • Optionalcaption?: string
    • OptionalembeddedUrl?: string

      The URL to link from the image

      uri

    showFloatingLabelWhenImagePresent?: boolean

    Whether to show the flat label when an image is present on the polygon a location is anchored to. This is often set to false for anchor stores in malls, since they often have a large logo image placed directly on their polygon.

    amenity?: string

    The location's amenity type. Only set if the location is an amenity

    showLogo?: boolean

    Whether to show the logo of the location

    primaryCategory?: `lcat_${string}`

    The main category of the location. It must be one of the categories in the Location's categories array