Locations API Endpoint

This article describes the uses of the top-level Locations API endpoint.

The Locations Endpoint

The Locations endpoint is used as the top-level endpoint for the Placemarks, Maps, and Asset-beacons endpoints.

The Locations endpoint will return data for the locations to which your token has access, but you may find it more useful to use a specific location ID.

   /api/locations/{location_id}

The Locations endpoint is the top level endpoint for the following endpoints:

  • beacons
  • campaigns
  • pages
  • events
  • feeds
  • maps
  • placemarks
  • search

Locations Detail

Making a request to the Locations endpoint will return details about the location and the location's organization.

Organization Detail

The organization detail information includes the organization name and ID, when it was created, when it was last modified, and other organization-specific information.

Location Detail

The location detail information includes the location name and ID, when it was created, when it was last modified, and other location-specific information.

It also includes a list of the features that are enabled for the location.

Location detail also includes mapping information, such as the location's latitude and longitude, its time zone, and the default language.

Locations /search Endpoint

You can use the Locations /search endpoint to search any field in a location or to search on a specific field. If you have an API token, the Search endpoint will return data for all locations for which your account has access.

To search on any field, use:

    /locations/search?q={search string}

To search on a specific field, use:

    /locations/search?q={field name}:{search string}

Locations /beacons Endpoint

You can use the Locations endpoint to get all of the Beacons for a specific location ID.

    /api/locations/{location_id}/beacons

You can get information on a specific Beacon using its MAC.

    /api/locations/{location_id}/beacons/{MAC}

With a specific Beacon's MAC, you can update or delete specific Beacon information.

Beacon Changesets

Changes made to a Beacon's state in the Meridian Editor's Beacons Management tool are sent as changesets to observers that are capable of modifying those Beacons, such as Aruba Sensors and Aruba APs.

Changes are limited to Beacon type (Proximity or Location) and Proximity Beacon power level. All other changes live entirely on the Meridian Editor.

    /api/locations/{location_id}/beacons/{MAC}/changesets

Beacons Field Reference

Here are descriptions of the Beacons API endpoint fields.

created and modified Timestamps for when a Beacon was deployed to a map and when a Beacon's state was last changed.

mac A Beacon's MAC.

type Whether a Beacon is location or proximity.

map The map where a Beacon is deployed.

x and y The specific x/y coordinates of the Beacon on a map.

major and minor The Beacon's major/minor values.

UUID The Beacon's universal unique identifier.

name The Beacon name. Defined in the Aruba Beacons app.

firmware_a_version and firmware_b_version The Beacon firmware version. Some Beacon hardware has a second bank for use when the Beacon firmware is being upgraded.

rssi The Beacon received signal strength indication. One indicator of the Beacon's transmitting power.

battery_level The Beacon battery level.

txpower Beacon transmission power. See also: rssi.

timestamp The last time the Beacon was observed.

observer The ID of the Beacon's observer for the most recent timestamp.

managed True or False. Is the Meridian Editor's Beacons Management feature in use for this Beacon?

location The Beacon's location ID.

Locations /campaigns Endpoint

You can use the Locations endpoint to get all of the Campaigns for a specific location ID.

    /api/locations/{location_id}/campaigns

Campaigns Field Reference

Here are descriptions of the Campaigns API endpoint fields.

created and modified Timestamps for when a campaign was created and when it was last modified.

always_broadcast True or False. When True, the campaign will always trigger. When False, it will be limited by date and time.

allday True or False. When always_broadcast is False, you can limit the campaign to specific dates. If you do, you can set the campaign to trigger for the entire 24 hours on the specified dates.

dtstart and dtend When always_broadcast is False, these are the starting and ending dates when the campaign will be active.

message The text of the campaign sent to end users of a Meridian-powered app.

link A link to a page or placemark within the app. Links can also be created for web URLs.

type A campaign can be active or passive. An active campaign provides greater control over the distance when a campaign triggers based on its RSSI.

active True or False. Whether a campaign is enabled or disabled.

target_url For campaigns notifying a 3rd-party endpoint, the URL for that endpoint.

Locations /pages Endpoint

You can use the Locations endpoint to get all of the Pages for a specific location ID.

    /api/locations/{location_id}/pages

Pages Field Reference

Here are descriptions of the Pages API endpoint fields.

modified Timestamp for when a Page was last edited and saved.

name The Page's name. Corresponds to the NAME field in the Editor.

created Timestamp for when a Page was created.

id The Page's unique ID.

app_link_domain A link to another Meridian-powered app. Corresponds to the APP LINK DOMAIN field in the Editor.

app_link_title The app link text. Corresponds to the APP LINK TITLE field in the Editor.

layout For Image+Text Pages, this is either page_layout_1, page_layout_2, or page_layout_3. Corresponds to the LAYOUT dropdown menu in the Editor.

links A field that includes link and title for creating external links. Corresponds to the EXTERNAL LINKS fields in the Editor.

There's a Page limit of six external links.

placemarks One or more placemarks related to the Page.

"link": "placemark/{placemark_id}"

style For List Pages, the style of the list. This corresponds to the CELL STYLE dropdown on List Page types. The values are Slim and Fat.

logo_size On the Featured Page, the pixel size of the uploaded logo image. This corresponds to the Theme's LOGO upload widget.

filters For List Pages, filters limit the items that appear on a list. Corresponds to the FILTERS field on the List Page type.

Includes the fields property and value. Property is a category or custom value. Value is the string filtering the list that matches an existing category or custom value.

group_by For List Pages, items can be grouped by categories and custom values before sorting.

object_kind For List Pages, the type of object in the list, whether Pages, Events, or placemarks.

sort_by For List Pages, the sorting value, which is either Name or a custom value. Corresponds to the List Page's SORT BY field.

mode For Web Pages, determines how a web page looks in the app. Corresponds to the Web Page MODE dropdown menu. Browser includes a navigation bar, while Hosted doesn't show the navigation bar.

slides For Slideshow Pages, URLs to the images shown in the slideshow.

tabs For Tabbed View Pages, the links and titles for each tab. The Tabbed View is a collection of List Pages.

type The Page type. Corresponds to the TYPE dropdown menu. Includes Image+Text, List, Calendar, Tabbed View, Slideshow, and Web Page.

description For Image+Text Pages, the text on the Page. Corresponds to the DESCRIPTION field.

keywords For Image+Text Pages, non-displaying search terms. Corresponds to the KEYWORDS field.

phone For Image+Text Pages, a relevant phone number. Corresponds to the CONTACT INFO PHONE field.

email For Image+Text Pages, a relevant email address. Corresponds to the CONTACT EMAIL field.

url For Image+Text Pages, a relevant phone number. Corresponds to the CONTACT URL field.

custom_1, custom_2, custom_3, custom_4 For Image+Text Pages, user-defined values used to group and sort List Pages. Corresponds to the CUSTOM VALUES VALUE 1-4 fields.

feed If the Page was created by a feed, the URL of its feed.

uid The ID of an imported Page.

image_url For Image+Text Pages, the URL to the Page's image.

category_ids For Image+Text Pages, the unique IDs of Categories assigned to the Page. This ID isn't visible in the Editor UI.

categories For Image+Text Pages, the Categories assigned to the Page.

Locations /events Endpoint

You can use the Locations endpoint to get all of the events for a specific location ID.

    /api/locations/{location_id}/events?page_size=100

Events Field Reference

Here are descriptions of the Events API endpoint fields.

created and modified Timestamps for when an event was created and when it was last modified.

id The event's unique ID.

name The event name.

description The event description.

allday True or False. Is the event an all day event?

dtstart and dtend The starting and ending dates for the event.

placemark and placemark_name The placemark ID and placemark name associated with the event, if any.

image_url If the event has an image, it's here.

feed If the event was created by a feed, this is its URL.

Locations /feeds Endpoint

You can use the Locations endpoint to get all of the feeds for a specific location ID.

    /api/locations/{location_id}/feeds

You can get information on a specific feed using its ID:

    /api/locations/{location_id}/feeds/{feed id}

Feeds Field Reference

created and modified Timestamps for when a feed was created in the Meridian Editor and when it was last modified.

id The unique feed ID.

url The feed URL.

name The feed name.

kind Feeds can be used for pages, placemarks, and events.

This field can be used as a filter.

type Feed types can be Meridian or custom.

This field can be used as a filter.

format For Meridian feed types, format can be JSON or XML. For custom feeds, you can use iCal, RSS, JSON, XML, or HTML.

auth_type This field is null if HTTP Basic Authentication isn't used.

mapping When using a custom type, this maps feed fields to Meridian fields.

updated The date of the last feed import.

imported_entities_count The number of items in the feed on the last import.

Use the API to Batch Upload Data

You can use the Meridian API to batch upload data using the API for the following endpoints:

  • /locations/{location_id}/placemarks
  • /locations/{location_id}/pages
  • /locations/{location_id}/events

To create a batch job, post a list of regular POST data to one of these endpoints.

When you do, the API will return a batch_status_url you can use to check the progress of your batch task.

    {
    "batch_status_url": ".../api/v1/locations/{location_id}/batch/{batch_id}"
    }

The batch_status_url will only return a list of object keys in the return_data field, instead of all of the uploaded data. The object keys are the unique IDs for the data being uploaded. For example, placemark, page, or event IDs. The objects are returned in the order they were uploaded.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.