Data Manager API

Overview

Data Manager has been completely re-written and exposed as a RESTful web service to MapQuest API developers. There are a number of differences between the previous version of Data Manager and the Data Manager API: GUI interface vs web service, addition of polygon support, ability to create custom Data Manager functions like tiered login.

Introduction

The MapQuest Data Manager v2.0 API allows you to store custom datasets in a spatially-aware database that resides on MapQuest servers. Tables that contain points, lines, and polygons can be easily manipulated and maintained through simple HTTP GET and POST requests. Data Manager also offers security settings to ensure that your custom datasets private and protected -- unless, of course, you want to share data with other developers who are using MapQuest APIs.

Data Manager v2.0 offers developers who use MapQuest APIs a number of benefits:

  • Data is hosted on MapQuest infrastructure, so there is no need for external data hosting.
  • Data Manager is tightly integrated with other MapQuest APIs, such as the Search API (v2).
  • Points, lines, and polygons are stored as geographies, which allows Data Manager v2.0 to support spatial queries.
  • Data Manager v2.0 is included in the service-level agreement (SLA) available to MapQuest Enterprise Solutions developers.

It is recommended that new data be appended to tables rather than removing current data and uploading an entire new data set. The upload of data, geocoding of records, and creation of new tables is asynchronous, so it will take a moment before data is available via search or other web services.

Managing Tables

Data Manager tables must be created prior to uploading data. This section of the Data Manager API documentation describes how to create, copy, and delete tables. It also describes the data types supported by the Data Manager API as well as table visibility; meaning, tables can be made public to all MapQuest developers or private and viewable only by the table owner.

Managing Data

This section of the Data Manager API documentation describes how to view, upload, edit, and delete data in data tables after a table has been created.

Supported file types for upload

File Types: CSV KML Zipped SHP files

Getting started

An API Key is needed for Data Manager API requests.

  • If you do not have an account on the MapQuest Developer Network, sign up now by visiting the homepage and clicking the Sign Up link.
  • If you have an account on the MapQuest Developer Network, sign in, click on your username, and choose Keys & Reporting from the left menu. Select your app to see information about your AppKey, which includes your legacy ClientID and registry password.

Getting data into Data Manager

Getting data into Data Manager is a simple two-step process:

  1. Create a table that includes fields for all of the data you want to store in Data Manager, along with a geography field.
    See the create-table documentation for more specifics.
  2. Upload data to your newly-created table.
    See the upload-data documentation for more specifics.

Address geocoding

Automatic batch address geocoding is available in Data Manager v2.0. Simply create a table and include both an empty geography field and a FullAddress field. Single-line addresses in the FullAddress field will be geocoded and the Geography field will be populated for each record uploaded to Data Manager.

Tools

Although the Data Manager API offers more flexibility for developers by allowing interaction with Data Manager v2.0 through HTTP requests, there is no official tool that is part of the MapQuest Developer Network. An unofficial sample tool that can be used to create tables, upload data, and manage tables in Data Manager is available for download.

Limitations

Enterprise Edition users can create up to 10 tables.
Enterprise Editions users can have up to 150 columns per table.
Enterprise Edition users have a limit of 250MB of data per table.

Response

This response is displayed at the end of each executed request. It notifies the user of the status of the request and if there were any errors in processing the request. Status codes are returned for all Data Manager functions and are helpful when troubleshooting errors.

{
    "info": {
        "statusCode": "...",
        "copyright": {
            "text": "...",
            "imageUrl": "...",
            "imageAltText": "..."
        },
        "messages": [
            "..."
        ]
    }
}
<response>
  <info>
    <statusCode>...</statusCode>
    <messages>
      <message>...</message>
    </messages>
    <copyright>
      <imageUrl>...</imageUrl>
      <imageAltText>...</imageAltText>
      <text>...</text>
    </copyright>
  </info>
</response>

Supporting Documentation