Using WordPress? Every integration here is also available as a plugin. Browse the plugin store →

Coming soon — in testing, not yet released

Maps

Maps plots the rows of a SharePoint list or an Excel workbook as pins on an interactive map, with clustering, a category filter and a location list beside it — built and in testing, not yet released to customers.

Maps is built, and is being tested against real tenants before it is released. Nothing on this page can be bought or embedded yet, and what people ask for is what sets the order things are released in.

harbourline.example/stations
harbourline
Stations Rows of a SharePoint list as pins
  • Harbour CentralInterchange
  • Fenwick StreetStep-free
  • Old QuaySeasonal

A drawing of Maps on a fictional site, in our own tokens rather than a customer’s brand. It is a drawing of the arrangement, not a screenshot and not a running widget.

Putting it on the page

The pattern it follows.

Maps is not released, so there is no embed key to hand out and nothing here to paste yet. It is built on the same script-plus-custom-element pattern as every released component, described below.

There is no embed snippet yet

Embed keys are issued when a component is released, and this one has not been. The three parts beside this note are the pattern it already shares with the released components.

  1. The script tag

    One bundle for one component. It defines the custom element and does nothing else — no framework, no build step, and no change to how the rest of the page is built.

  2. The element

    An ordinary HTML tag, placed wherever the component should appear — including inside a page builder’s raw-HTML block, a shortcode, or a template partial.

  3. The embed key

    The key resolves to one configured instance — the Microsoft 365 source, the arrangement, the theme, and the domains allowed to render it. Change any of those and the page itself never has to be edited again.

What it does

How it works

The Maps component reads a SharePoint list, or an Excel workbook held in SharePoint or OneDrive, and renders each row as a pin. The list’s own columns are mapped to the name, address, coordinates, description, category, link and image the pin carries, so adding a location is a new row rather than a code change. It is built and being exercised against real tenants; it has not been released to customers, so no customer can create one yet.

Why it exists

Location data is nearly always already in a list or a spreadsheet somebody maintains. The work is everything around it — geocoding, markers, popups, and keeping a second copy of the same addresses in step. This reads the list as it stands and does the rest.

Element
<wpi-maps>
Reads from
SharePoint lists, Excel workbooks in SharePoint or OneDrive, Azure Maps, Google Maps or OpenStreetMap for rendering
Arrangements
3 in the builder
Graph access
managed or proxy — the tenant chooses

Arrangements in the builder

  • Full-width map
  • Map with a location list to the left or right
  • Map with the location list below

Where it runs

Anywhere you can paste two lines of HTML

A custom element needs no build step and no framework, so where your site is built is not a question you have to answer before this one.

  • WordPress
  • Webflow
  • Squarespace
  • Shopify
  • Wix
  • Astro
  • Next.js
  • Drupal
  • SharePoint pages
  • Plain HTML

Named as examples of places HTML can be pasted. No partnership is implied and none of these are customers. WordPress is the one that gets more than an embed — the same Microsoft 365 jobs also ship as plugins with a Gutenberg block.

In detail

Everything Maps does.

7 capabilities, every one of them resolved from the embed key rather than written into the page — once the keys are issued.

  1. Rows become pins

    Each row of the SharePoint list, or of the Excel table, becomes a marker. Field mapping ties the source’s own column names to the pin’s name, address, latitude, longitude, description, category, link and image. A named Excel table is preferred over a bare worksheet, because inserting rows or columns cannot shift it.

  2. Addresses or coordinates, either way

    A row carrying a latitude and longitude is placed directly. A row carrying only a street address is geocoded on our servers and the result cached — never in the browser, so the geocoding key is never exposed to a site the component sits on.

  3. Three map renderers

    Azure Maps is the default, because it authenticates against the same Entra tenant as the rest of your Microsoft 365 components. Google Maps and OpenStreetMap are there for customers who already hold a key. Road, satellite, hybrid, terrain and grayscale styles.

  4. Clustering, search and a category filter

    Nearby markers cluster by default. An optional search box and a category filter narrow a long list, so one source can serve a map of every location and a map of a single region.

  5. A location list beside the map

    A scrollable list can sit to the left, to the right or below the map, or be left off. Map height runs from 200 to 1,200 pixels, with a fixed centre and zoom or bounds fitted to the pins actually loaded.

  6. What the pin popup carries

    Image, description and category are individually switchable, marker colour is a setting, and a “Get directions” link can be shown on each pin. Scroll-wheel zoom is off by default, so the map does not swallow a page scroll.

  7. The platform settings every component gets

    A cap of up to 2,000 rows, a domain allowlist, a Google Tag Manager container id, the shared theme tokens and custom CSS, and the same script-plus-custom-element embed pattern as the released components.

Tell us you are waiting on this one.

Maps is in testing and no release date is announced. What people ask for is what sets the order things are released in, so a sentence about your case is worth more here than a waiting list.

Reaching your tenant

Two ways for us to reach Graph. One of them never lets us.

Every tenant runs in one mode or the other, and the choice belongs to your IT rather than to us. It is the reason this works inside organisations that will not delegate Graph access to a vendor.

managed

We hold the credentials

WPIntegrate runs the client-credentials flow for your tenant. Your administrator grants consent once and is not asked again.

proxy

You hold the credentials

You supply a base URL and an API key for your own gateway. We store that key encrypted at rest and never hold a Graph token at all.

Questions

What people ask about this one.

If yours is not here, ask it — the answers come back from a person rather than a form.

Can we use Maps yet?

Not yet. It is built and is being exercised against real tenants by our own team, and it has not been released to customers — so it cannot be created in a customer dashboard or embedded on a site. Tell us through the contact page if this is the one you are waiting on.

Where do the locations come from?

Microsoft 365: a SharePoint list, or an Excel workbook stored in SharePoint or OneDrive, with one row per pin. Columns are mapped in the builder, so the list keeps whatever names it already had.

Does it need a maps API key?

Not for the default renderer. Azure Maps authenticates against the same Entra tenant as your other Microsoft 365 components. Google Maps and OpenStreetMap take a browser SDK key of your own, which has to be domain-restricted in that provider’s console — the builder says so beside the field.

What happens to rows that have an address but no coordinates?

They are geocoded server-side and the result is cached. Geocoding never runs in the browser, so the key doing it never reaches an embedding site.