Azure

Hands-On With The HERE Mapping And Location APIs as Azure Functions

By Ashutosh Badwe | 09 May 2019

Today we are excited to share with all of you the launch of HERE’s location services solution templates on the Azure Marketplace. These Azure Resource Manager (ARM) templates make easy for Azure IT professionals and developers to invoke our enterprise class, SLA backed REST services like Map Image, Map Tiles, Geocoder, Positioning, Routing, Places and Fleet Telematics as Azure functions in their Azure applications and solutions.  

These services solve a range of problems like map visualization, navigation & routing, geocoding, time zone lookups, geofencing, custom locations & routing, route matching GPS traces, geospatial, sequencing multiple waypoints, truck routing and lat/lon positioning based on Wi-Fi and Cell coverage.

There are three HERE location services ARM templates that are now available on the Azure Marketplace: 

  1. HERE Maps & Location Services serverless functions - This ARM template deploys HERE serverless functions that can be invoked directly within Azure applications and solutions. 
  2. HERE Maps & Location Services for WebApp backends - This template deploys the HERE serverless functions and Azure Services like Service Bus and Cosmos DB necessary to utilize the functions in a Web Application backend 
  3. HERE Maps & Location Services for Data Streams - This template deploys the HERE serverless functions and Azure services like Event Hub and Cosmos DB necessary to utilize the functions in a real time streaming application 
Why did we do this?  

Time and again we have heard from Azure developers that they would like to get self-service access to our location services in the development environment of their choice with minimal friction between trying, buying and using our services. Not only that, we have been receiving feedback asking us how we could seamlessly integrate our APIs with other Azure services, so that developers spend more time building applications and solution rather than integrating APIs

How do our three solution templates enable that? 

  • HERE Maps & Location Services serverless functions template deploys our serverless location functions directly from the Azure marketplace. These functions can be invoked as http end points that can be invoked from Azure applications and solution that need location intelligence.  
  • HERE Maps & Location Services for WebApp backends template is meant to get web application developers setup with everything they need to utilize our APIs in their backends. This could be any web application that requires Maps to be displayed or implements features like directions, address lookup etc. In addition to the serverless functions, this template deploys Service Bus and Cosmos DB in the developer account configured and ready to go. Just send your web application requests to the service bus and invoke our functions. The functions also store API responses in Cosmos DB for logging or further processing.  The diagram below shows this in more detail.  
Screenshot 2019-05-10 13.47.13

  • HERE Maps & Location Services for Data Streams template is ideal for real time streaming applications like an IoT application with a fleet of devices that are streaming data to the cloud. In such data stream application, you will most likely need to add location context in real time, for ex: if you have lat/lon coordinates of the delivery truck you most likely need Geocoding functionality to get the address or vice-versa. In addition to the serverless functions, this template also deploys the Azure EventHub and Cosmos DB all configured and ready to go. As your data stream is ingested into the Event Hub, HERE location functions can be invoked in real time and the output can be store for logging or further processing. 

The diagram below shows this in more detail.

Screenshot 2019-05-10 13.47.28

We would like to show you how simple it is to get started with our services from the Azure Marketplace with the HERE Maps and Location Services for Web Application backends ARM template as an example.  

It is quite easy and involves the following steps: 

  1. Get Started for FREE at developer.here.com and save your HERE APPID and APPCODE. This is the same Freemium plan that gives you 250K transactions for FREE per month. 
  2. View the template on the Azure Marketplace by clicking this link Screenshot 2019-05-10 13.47.57Click the “GET IT NOW” button and select Continue.  
  3. Specify the APPID and APPCODE from step 1 in the HERE Configuration screen 

Screenshot 2019-05-10 13.48.12

Select defaults and Click “Create” on the last screen. 

Once the template is deployed in your Azure account, you are ready to invoke our serverless functions and bring location intelligence to your Web Applications. 

You can always get more details about the APIs from our developer portal and as always technical support from HERE’s location experts and fellow developers like you is available on stackoverflow.

There are many great benefits of using our APIs as serverless functions including 

  1. Better security by storing the API credentials in a secure centralized cloud location instead of client applications 
  2. Ability to customize the functions with business logic to create custom location microservices  
  3. Seamless integration with Azure services like EventHub, Service Bus, CosmosDB and many others. You can also work with these functions in conveniently in your development environment. All this means lower development time and faster time to market from start to deploy. 
In summary, we have now brought our popular Freemium developer offering many steps closer to your Azure environment with many added benefits. 

More deployment and technical details and all documentation links for the templates are available in the “Learn more” sections on the Azure marketplace listing pages for the three templates. 

Screenshot 2019-05-10 13.48.18

To really bring home the power of this offerings, my colleagues in the HERE developer evangelism team will shortly be posting a blog and sample code which will show you how to get started with a real time fleet telematics application in 15 minutes using the HERE Maps & Location Services for Data Streams template. So, keep your eye out for this and other great information at our developer blog

Many of you have already noticed that when you sign up for Freemium on our developer portal you get access to all of our APIs, mobile SDKs as well as our XYZ product. Many of these APIs are not yet available as Azure serverless functions in this release. But we have noted your feedback and will be adding more services to our Azure marketplace offerings. In the meantime, your APPID and APPCODE will work for your Azure templates in addition to all the other services available to you as part of Freemium.

As of writing this blog, the REST APIs available as Azure functions are as follows: 

  • Map Tile: Shows fresh day-time map tiles in multiple styles with rendered live-traffic tiles. 
  • Map Image: Access pre-rendered map images optimized for desktop and mobile devices. 
  • Routing: Get precise instructions to a destination using various transport modes, leveraging different algorithms. 
  • Geocoder: Convert street addresses to coordinates and vice-versa with batch, auto-correction processing. 
  • Places: Allow your users to search, discover and interact with Points of Interest. 
  • Positioning: Provide positioning estimates based on global Wi-Fi and cell coverage. 
  • Fleet Telematics: Access advanced location algorithms for fleet management use cases like geofencing, route matching, toll costs, custom Locations & Routes