Tutorial | 03/09/20 | #WeTalkTech
What3Words and the ArcGIS Platform
By now, I suspect most people have now stumbled upon at least one success story detailing a rescue in a remote location where the victim’s location has been pinpointed thanks to a What3Words address. If you are one of the few who have missed this, the testimonials are worth a read.
The team at What3Words have divided up the world into 3m squares and given each a unique, random, three word address (often referred to using ‘///’). The result is a global addressing solution which makes ‘the un-addressable’ accessible. For example, the “Big Fish” (in Belfast) can be located using the what3words address: ///large.vibrate.notice
In this post I hope to show how you can quickly integrate What3Words into your existing ArcGIS use cases. I have included examples which showcase how easy this integration can be for desktop, web, mobile and development workflows.
Now, this post is not aimed at outlining every benefit of What3Words. /// addresses are being used the world over to great effect, across a wide range of industries. If you want to read more on this topic then please check out the business section of the What3Words website and select your industry of interest.
Instead I am going to focus on how Esri customers can use /// addresses straight away within the ArcGIS Platform. Whilst what3words integration can bring benefits to all ArcGIS users, in this blog I have chosen to focus on blue light scenarios.
Anyone who has ever had to contact the emergency services can tell you how hard it can be to quickly pass on the information needed to locate you quickly. Your mind jumps between various known locations that you can offer to help the call handler find you. It is not uncommon to start by describing a nearby location, and then attempting to give directions to your location from there. Talking about location in this way can be hard when you know where you are, and incredibly challenging when you are unfamiliar with your surroundings, or if your location is away from any distinctive landmarks.
If a caller is in a position to offer a /// address, call handlers and emergency responders can use this to locate the caller’s precise location without need for any additional details.
I am a visual person, so I will attempt to demonstrate this with two generic scenarios where I have included maps to illustrate the point.
Scenario 1 : Caller: “I have come across a car crash on the Hillhall Road, Lisburn”
The description offers a location, but the precise location lies somewhere along a 2.7mile stretch of road.
Using What3Words limited this to a 3m grid square: ///send.sample.farms
Scenario 2: “We are hiking in the Mournes, and my friend has fallen and hit their head.”
Without knowledge of where the user is coming from and going to, you could be facing a very large search area.
Again, using a What3Words address, the user’s location can be pinpointed to a 3m grid square: ///zoom.elections.nearly
It seems to me that for many people using a What3Words address removes a barrier to talking about location. With this in mind, the onus is now firmly on me to demonstrate how you can easily integrate these addresses into your existing workflows.
Firstly, members of the public can use What3Words entirely free through the What3Words app or website, so whether ready or not, you may already be receiving addresses in this format.
You need to register with What3Words to use their API. For the demos in this blog I have used a free license which entitles me to make 1,000 three-word address to coordinate requests per/month (converting coordinates to a three-word address is always free and is not subject to a usage cap). To use the API as an organisation, you need to contact What3Words to discuss your use cases and they will be happy to outline the license you require.
Access to the What3Words API is handled through what is known as an “API key”. For those not familiar with working with API’s (Application Programming Interface), think of this key as a unique ID which can be used to gain access to /// addresses.
You can register for a What3Words account on the website, and use this to generate an API key.
The fastest way to show the location of a What3Words address on a map within the ArcGIS Platform is to use the ‘What3Words Locator’ which can be requested for free from the ArcGIS Marketplace here.
This locator facilitates both forward (entering a /// address and returning coordinates) and reverse (entering coordinates and returning a /// address) geocoding.
Adding the What3Words locator to ArcGIS Online/ArcGIS Enterprise
Once you have requested access to the What3Words locator, and have an API key, you are ready to add the locator to ArcGIS Online/ArcGIS Enterprise. From here you will be able to use across the ArcGIS Platform.
To do this you simply need to follow the “How to add the What3Words Locator to ArcGIS Online” tutorial provided by What3Words.
For those of you who like visuals, I have walked through parts of the tutorial in the image below.
When registering the service please note that your “Username” is the email you have used to register with What3Words, and the password is your API key. You can store the credentials so that users within your business are not challenged for credentials when they use the What3Words Locator.
Finding a location using a /// address
Once the locator is registered with your organisation you can use it to find locations using What3Words addresses straight away. Address searching can be done in all ArcGIS Platform products.
If your organisation is not using ArcGIS Online or ArcGIS Enterprise, the locator can still be used directly within ArcMap or ArcGIS Pro by making a connection to a standalone ArcGIS Server (w3w tutorial available here).
For those of you looking to see how What3Words addresses can be searched within the ArcGIS platform, please watch the following video.
You can also use a known location to return a What3Word address if needed. The image below demonstrates both forward (What3Word address to coordinates) and reverse (coordinates to What3Words address) geocoding using ArcGIS Survey123.
The QR code scan example is designed to showcase how What3Word integration can form part of a wider, more in-depth workflow. In this case, the QR code has been read using a barcode question within Survey123, a pulldata request has been used to pass the address to the What3Words API and return a set of coordinates, and these coordinates have then been passed to a geopoint question.
What about developers?
Now, I appreciate that some of you may be reading this blog at the request of a colleague or manager who is sold on the benefits of integration, and now wants you to integrate with ArcGIS or the What3Words API, or both…This section is for you!
Both the ArcGIS Platform and the What3Words API are ready for developers to start interacting with using the tools that you know and love. This section is equally beneficial to GIS professionals and data scientists who want to interact with the What3Words API through scripting.
In my demonstration I will be using python as my language of choice but there are a range of help for other languages at;
If you have watched the previous video it will come as no surprise that the What3Words team have us covered with a great ‘How-to’ guide.
In the video below, you will see that I have installed the What3Words library for use within ArcGIS Notebooks using a simple pip install command, and then started working with it right away.
What are my next steps?
If you want to discuss the ArcGIS Platform in general, or how you can integrate the What3Words API into your ArcGIS workflows, please send us an email at firstname.lastname@example.org.
If you want to learn more about using What3Words in emergency scenarios, discuss use cases or learn which command and control solutions now support What3Words addresses, please reach out to Joshua Rayner (email@example.com) who is only too happy to respond to your questions.
Adam is a solution architect with Esri Ireland, and all round tinkerer of GIS technology. Adam is based in our Holywood office and is responsible for turning it into a real-time observation station reporting on boat (AIS) and plane (ADSB) locations. Over the past 13 years he has shared his expertise across a wide range of sectors including Local and Central Government, Utilities, Public Safety, Charity and Education. Adam is a lover of all board sports and when disconnected from technology can be found on, over or under the water.