MapQuest Developer Blog

  • MapQuest Opens Tiles and Style; Enables Rapid Data Updates

    When we launched the open.mapquest.co.uk during the State of the Map conference, we received some immediate feedback that we've already taken steps to address.  I figured we've now made enough updates to warrant blog post - so here goes:

    Will we add footpaths & cycle paths to the MQ style?

    Done!  Our biggest piece of feedback on the map style was the missing footpaths & bicycle paths.  We're now picking those tags up for styling. Tiles are updated with the new style and several other changes have been made too as we continue to refine the style.

    Will we open-source the style files?

    Why, yes! If you are interested in using our map style in your application, we've uploaded the style files to GitHub and released it under the MIT License.   As we've updated & improved the style, we've uploaded the changes to Github. Follow this link to find the repository for our map style files.

    Can you use MapQuest tiles in your application?

    Yes! Please feel free to do so!  And feel free to let us know at open@mapquest.com. we love it when people use our stuff. Our MapQuest tiles are available for use for free under the following conditions:
    • OpenStreetMap must be given credit for the data - see this section of their legal FAQ for details.
    • Please place "tiles courtesy of MapQuest" on your page, or in the copyright area of the map and please link the word "MapQuest" to http://open.mapquest.co.uk or http://www.mapquest.com.
    • If your application will get heavy usage (currently defined as more than 4,000 tiles per second) please let us know by sending us an email at open@mapquest.com. Please include the estimate of your expected usage so that we will be aware and accommodate the extra traffic.
    • If there will be an announcement (ex - a press release or a corporate announcement) please contact MapQuest at open@mapquest.com to let us know of the good news and any expected jumps in map tile usage.
    • Usage of these tiles are at your own risk.
    • Usage of these tiles are governed by paragraph 9, section (a) of the MapQuest Developer Network Terms of Use.

    How do you use the MapQuest-hosted map tiles?

    You can learn more about how to use OpenStreetMap tiles in general, here on the OpenStreetMap wiki.  Once you know how OSM tiles work, then it is very straightforward to use. The tile URLs are very similar to regular OSM tiles, with only the front of the URL being different. OpenStreetMap tile URL http://a.tile.openstreetmap.org/8/126/87.png MapQuest tile URL http://otile1.mqcdn.com/tiles/1.0.0/osm/8/126/87.png Just replace the "http://a.tile.openstreetmap.org" bit with "http://otile1.mqcdn.com/tiles/1.0.0/osm." [caption id="" align="alignleft" width="256" caption="OSM tile: http://a.tile.openstreetmap.org/8/126/87.png"]OSM tile[/caption] [caption id="" align="alignright" width="256" caption="MapQuest tile: http://otile1.mqcdn.com/tiles/1.0.0/osm/8/126/87.png"]MapQuest tile: http://otile1.mqcdn.com/tiles/1.0.0/osm/8/126/87.png[/caption]
    Note: There are 4 subdomains set up for the MapQuest-hosted tiles: otile1 to otile4.  All subdomains point to the same CDN. Just like with OSM's a.tile to c.tile subdomains, the MapQuest subdomains are provided to work around browser limitations on the number of simultaneous HTTP connections to each "host". Browser-based applications can request multiple map tiles from multiple subdomains faster than requesting map tiles from just one subdomain. More information can be found on the wiki at OpenStreetMap.org and here on the wiki page for MapQuest.

    When do we update our data?

    Well, when we were at the conference, it was a static load.  Getting automated updates in place was our top priority when we returned.  I am happy to say that we now have the map tiles updating within approximately 15 minutes of any edits to the data being made, and the search data updating within 2 hours to a day, depending on traffic load at the time.  We're still working on getting routing data updated automatically (our first goal is daily updates) but I understand we are periodically refreshing it manually while we build that process. More news to follow soon.
  • JavaScript v6 launched, MapQuest Platform v6 complete!

    The JavaScript SDK v6 is live! This completes our revamp of the MapQuest Platform from the ground up. MapQuest Platform v6 features new Web Services to easily implement mapping, routing, geocoding, geographic search and traffic using a REST-like API. On top of our new Web Services, we've rebuilt the JavaScript and ActionScript SDKs, streamlining our object model. We have also added new features such as enhanced wireless support, draggable routes and a custom object to quickly add a business locator.
    Draggable Routes

    Here is an overview of the platform, with details and links to more information below.
    MapQuest Platform v6

    Web Services - Overview Documentation

    -Pass name/value, JSON or XML in, get JSON or XML out
    Directions Web Service - Documentation -Easily access our patented routing algorithms -Calculate alternate routes -Display road shields in narrative -Tweak narrative to show border crossings, landmarks and side of street information -Let MapQuest optimize a multi-stop route, re-ordering the stops for a faster overall trip -Do one-to-many or many-to-many route matrix calculations -Add turn maps -Avoid highways, tolls, ferries, border crossings
    Geocoding Web Service - Documentation -Get accurate address resolution using both NAVTEQ and Tele Atlas street data, as well as address points -MapQuest's precise 5 character result code tells you exactly how your address geocoded -Pass a bounding box to bias the results to addresses within that area -Get both a street lat/lng and a parcel centroid for point geocodes -Retrieve side of street information -Easily add thumbnail maps for ambiguities -Batch geocode up to 100 locations in one call -Reverse geocode Static Map Web Service - Documentation -Easily create map images with overlays, icons, declutter and traffic -Utilize different map styles -JPG, PNG or GIF at customizable sizes -Easy-to-use wizard to create map URLs Geographic Search Web Service - Documentation -Search by lat/lng, address or IP address -Search by radius, rectangle, polygon or corridor -Search by drive time/distance or walking time -Mix and match data sources, including hosted data, remote data and NAVTEQ mapping data -Utilize multiple POI tables to add restaurants, bars, airports, train stations and more Traffic Web Service - Documentation -Retrieve a list of incidents in a given area, both construction and traffic incidents -Retrieve flow overlay -Retrieve available markets
    New Overview Control

    SDKs - JavaScript and ActionScript (AS3/Flex)

    JavaScript SDK Documentation AS3 SDK Documentation -Wireless (including iPhone) support for draggable maps through the JS SDK -Draggable routes -No more proxy! -Overview control -Mouse wheel support -New declutter styles -Automatically add routes and search results to the map -Removes many of the separate calls for geocodes, record details and more
  • New Link to Route Planner Service

    We just launched an enhanced version of MapQuest Route Planner that includes a new web service, enabling you to integrate Route Planner into your own external websites/applications.  If you're unfamiliar with Route Planner, it's a feature that takes a route of up to 26 25 stops and reorders them to give you the fastest or shortest route.  Here's a quick video that demos the feature. This integration is ideal for websites and apps for Sales People, Delivery Reps, Realtors, and any others that route users to multiple stops.  As of today (July 19) we've saved our users 374,500 miles and now you can help your users save time and mileage too! The Link to Route Planner Web Service enables you to connect to the Route Planner tool using address fields pre-populated directly from your website/application. This service supports multiple formats that you can use to send the addresses to the Route Planner tool: •    JSON •    XML •    Key/Value pairs You simply create forms in your application/website and POST to the Route Planner application with the address details in any of the above formats. Check out our API documentation for details on using each of these formats to connect to Route Planner. Stay tuned for the next version of Route Planner that will have the new MapQuest look and feel!
  • MapQuest Style File for Mapnik Open Sourced

    Today we placed our style files for the open.MapQuest.co.uk site up on GitHub. The source is available at http://github.com/MapQuest/MapQuest-Mapnik-Style and is available under the MIT License. There are some changes in there that haven't gone live yet, mainly around adding in the bike and foot paths. We're also working on highlighting the Kibera Project data better than we had originally. If anyone out there has any advice on which key/value pairs to focus on, please let us know at Open@MapQuest.com. Anyway, the style is currently built to work against Mapnik 0.6.1+. It is not directly compatible with Mapnik 2 yet. We were moving so fast that we figured it was best to isolate Cartifact from having a constantly changing renderer during the project, and just run it thru Artem's converter for production.  It is a to do item on our list to get it properly converted to Mapnik 2, but as I write I realize it probably gets a wider audience right now if we leave it as is. The style updates are not yet live on open.MapQuest.co.uk, we haven't finished them, but since so much of the feedback since launch has been around tweaks to the style, we figured we'd just get it up now and start the ball rolling! Hopefully I'll be back soon with news of some more changes, enhancements, etc.
  • MapQuest Opens Up - in the UK

    As I write, we are in the final few days of work left to us on the new Beta site open.mapquest.co.uk.  It's an experimental site that uses the free open source OpenStreetMap data, as well as various open source tools, software and utilities to bring it all together.  We then added some of our own special sauce - our best-in-class routing algorithms, and our new user interface (a full experience of which can be found at new.mapquest.com). If you are unfamiliar with OpenStreetMap, it is mapping data gathered by volunteers, for free - over a quarter million of us by now! - across the entire world with the express purpose of this data being available to anyone for (almost) any use, and not locked in high-priced commercial vaults.  There is a great benefit to this - If you find something wrong or missing, you can go fix it or add it! if you go to openstreetmap.org, find the place on the map, and click the edit tab at the top, you can fix the roads, add the businesses, and edit the map.  There is also an OSM (OpenStreetMap) Wiki that tells you more about the OpenStreetMap foundation, the data, and how to get involved. It is truly amazing what they have accomplished. Randy Meech, our Head of Engineering, summed up why we are doing this project more succinctly than I ever could - so here's what he said: "We believe that open source is ultimately the future for AOL's local and mapping applications. And we're very excited about supporting OpenStreetMap, which powers the maps behind Patch, our local news and information platform. We believe community generated maps that are of high quality and accuracy will end up ultimately being the better mapping product for users. Allowing users to improve the areas they know and care about like streets in their neighborhood, in addition to hiking trails, parks and bike paths, we believe will lead to the best mapping experience for all users.” To prove we are serious, we announced today at the SotM conference with a $1 million fund to support the growth of open-source mapping in the United States.  This first website is also proof that this is not lip-service.  We are engaged, and actively working on integrating, using, and improving these tools and we wanted to be able to demonstrate that at the conference. The goal was to create a MapQuest experience for the United Kingdom using only OpenStreetMap data.  As much as possible we tried to use the open source software used by the OSM community, so anything we did to these tools could be contributed back.  We picked the UK first because we felt we had the best shot of getting use-able routes from the data without having to worry about a language barrier at the same time. We started out, as anyone else would, with the latest dump of the OSM Planet data. We grabbed OSM2PGSQL, a python script used for data conversion, and set ourselves up with PostgreSQL with postGIS extensions (a library that adds a lot of geographical functions and datatypes to PostgreSQL). After successful import, we needed to render and cache the tiles.  For rendering we use Mapnik and for caching, TileCache.  We turned to our good friends at Cartifact to help us re-create our MapQuest style as Mapnik style files.  At this point, we discovered there were some features that Mapnik didnt have that we could really use.  Fortunately, we were able to hire Artem Pavlenko, the very awesome chappie who created Mapnik, to improve it with the features we needed, and then release it back to the community. They included such things as SVG Symbolizer, label offsets, improved connection management, and multistyle rendering based on polygonal regions. The last one we needed because we have 3 different styles (US, Europe, Rest of World) we needed to apply. [caption id="attachment_281" align="aligncenter" width="443" caption="OSM Style of Oxford."]OSM Style of Oxford[/caption] [caption id="attachment_279" align="aligncenter" width="443" caption="MQ style of Oxford."]MQ style of Oxford[/caption] For directions and routing, we started with the raw OSM data and converted it into our own format that works with our routing engine.  Along the way, we found much duplicate data and other little issues that sometimes caused problems.  For example, we were initially unable to make directions to York in England, because the city center is surrounded by pedestrian walkways.  For a while, we could only get the Channel Tunnel going one-way, and no-one could get into, or leave France.  However, once we overcame the issue, we were remarkably impressed by how well it all worked. [caption id="attachment_277" align="aligncenter" width="620" caption="From Scotland to Istanbul, stopping in Girona along the way."]Directions from Scotland to Istanbul[/caption] Geocoding & Search turned out to be our biggest challenge when using OSM data, and is probably the area we will focus on the most in the next phase.  Normally we make a distinction between Ambiguities (Did you mean Brentwood, England or Brentwood, Alabama?) and Searches (Pubs in Brentwood) and we provide a different UI flow for search results than we do for ambiguities. The Open Source finders have only a single set of results to any query, with no distinction.  Most of the Ways (what OSM calls lines, or streets) and Nodes (OSM-speak for Points) do not have house numbers or addresses on them, which makes geocoding to a numbered street address very unlikely. Most of the businesses do not have the info that a commercial data set brings - phone numbers, hours of operation, etc.  So be prepared! The search results are not yet what you would expect from a full blown MapQuest site - but we'll get there...oh yes, we will.  To that end, we also tracked down Twain, the excellent creator of Nominatim, the search engine that OSM uses, and have shanghai'd him to make improvements he's wanted to do for a while, and contribute back, as well. This droning monologue has gone on far too long already! For anyone who has stuck with me through this post, and who happens to be at the SotM conference, feel free to accost me with advice, suggestions and frosty beverages. This project has been a very valuable lesson in all the little things that go into MapQuest that as both an employee and a user, I take for granted.  The most amazing thing to me is the incredible effort that has been put into OpenStreetMap and its tools by such a large number of dedicated volunteers - a movement that will continue to grow. I look forward to providing more details as we continue to work on this exciting new path for MapQuest after the conference and am very excited to be participating in the OSM community. Note: For a more concise post, I suggest you check the blog post of my co-conspirator, Deb Tankersley, over on our consumer blog.
  • Reboot

    There's a lot of change going on at MapQuest. Our Consumer application has been completely rewritten to reflect ways users are using and sharing location information. You can read more about "Redefining the User Experience" on our sister blog for MapQuest.com and check out this video about the brand, our mission, and the new site. MapQuest Primary LogoFor developers, we've been addressing these same issues. Over the past few years, we've completely rewritten many of our APIs, developed a robust AS3 SDK for Flash and Flex developers, and launched 6 Web Services. All of this is making it easier for developers to easily add location features to their applications for desktops and mobile devices -- from small start-ups to large corporations. Our goal for the MapQuest Platform is: Developer Easy; Developer Friendly. There's always more work to do, but today we've rebooted MapQuest to better reflect that mission with an updated vision and an upgraded new look. Let us know what you think.
  • ButtonQuest: A Chance to Win an iPad!

    Earlier this week we announced a way for people attending SXSW to win an Apple® iPad™, it's called ButtonQuest. Wanna play? Here's how: The 15 Different Versions of the MapQuest ButtonQuest Buttons YOUR MISSION?: Find as many MapQuest Star buttons as you can. WHAT IS IT?: Play MapQuest ButtonQuest and earn entries to win one of three Apple iPads! HOW DO YOU ENTER?: MapQuest will be handing out 15 unique MapQuest star buttons over the three days of the SXSW Interactive Festival. Once you have five different buttons, go to our booth (Booth #401) and fill out an entry form. If you get 10 different buttons, we'll give you two entries. Find all 15 buttons and you'll get three entries! WHEN IS IT?: During the SXSW Interactive Conference from Saturday, March 13 - Monday, March 15. Drawing will be held for all three iPads at 3:00 pm on Monday, March 15. As a heads-up, you must be an attendee of the SXSW Interactive conference in order to play. WHERE ARE THE BUTTONS?: They're everywhere! Find the MapQuest team, dressed in red shirts and red hats, at various locations around Austin throughout the three days of the Interactive conference. To get you going, we'll have a different button offered each day in the MapQuest booth - so stop by! HOW DO I FIND THE MAPQUEST TEAM?: We'll be tweeting real time letting you know where we'll be next. To help you out we've created a schedule and map of our button handout locations but there will be SEVERAL other handouts you'll only find out about via Twitter. We also have secret button carriers - so make sure to keep tuned in by following us: @MapQuestTech and @MapQuest. We'll be using the hashtag #buttonquest to announce all the locations throughout the Interactive Festival.
  • ButtonQuest: Secret Button Carriers - Announced!

    Earlier we told you about the contest we're doing at SXSW – ButtonQuest – where you can enter to win one of three Apple® iPads™. While we've already announced several locations of where the MapQuest team will be at handing out buttons, we have also enlisted "Secret Button Carriers" who are attending SXSW and will be distributing buttons during the Interactive Festival as well as at evening events. We're going to blow their cover though – perhaps we should dub them "The Not so Secret Button Carriers". Regardless, we wanted to tell you who they are to help maximize your chances of winning. These guys will tweet out when and where they will be handing out different buttons for ButtonQuest so make sure to follow them on Twitter. Robert Scoble (@scobleizer) Erik Boles (@ErikBoles) David Stanley (@KiwiGate) This list may grow, so stayed tuned...
  • MapQuest Officially Announces Launch of Platform V6 At SXSW

    It must be official, we have a Press Release! It has a very catchy title: MapQuest Engages Developer Community with Presence at SXSW; Shows Easy-to-Use, Developer Friendly Tools.

    Over the last eight months we have overhauled the MapQuest Platform from top to bottom. We have re-written every key component, and exposed our core functionality through sane, modern, easy-to-use Web Services. We are now finishing up overhauling our main SDKs for AS3 / Flex and Javascript to use these new services as their foundation.

    As a reward, MapQuest is now sending us to SXSW Interactive to show it all off. We are also hosting a BBQ Party at the Salt Lick. I, for one, intend to celebrate the launch of something that has been a definite labour of love. I truly love what I do, am passionate about MapQuest, and work with some of the most truly awesome people around - which makes me very grateful to have been afforded the oppportunity to bring this new vision of what the MapQuest Developer Services should be, to fruition. It has been a great journey so far, and as I look back over what we have accomplished in such a short time, I am proud of the hard work we have done, and look forward to what we do next.

    Ok, enough of that. If you truly want to see our enthusiasm for what we have built, stop by our booth (#401) at SXSW and we'll talk your ear off, offer you some beer at the Block Party, and even help you with some implementation at our little Genius Bar we've set up. My compadre-in-chaose, Josh Babetski, is also hosting a panel you might find interesting.

    Until then, here's a quick(ish) summary of links to previous posts about the different parts of the platform as we released them to production:

    MapQuest Directions Web Service And Long URL Web Service Released - October 12th.

    Web 2.0 Geocoding Service Launched - November 12th.

    Static Map Service Launched - December 4th.

    Address Point geocoding, New Map Styles, & Free Edition Geocode Data Upgrade - January 20th.

    Search Service And Static Map Wizard Launched - February 25th.

    MapQuest Traffic Service Goes Live - March 4th.

    MapQuest AS3 / Flex SDK V6.0 Launched - March 9th.

    I am pretty sure that, not even counting the beta rollouts, we have managed an average of more than one new product or release per month, over the last 6 months. I am just absolutely blown away by how much work we've done in such a short period of time.

    Alright. Enough from me. Texas, here we come!

  • MapQuest AS3 / Flex SDK V6.0 Launched

    I am extremely happy to announce that we have launched the version 6.0 of the MapQuest Actionscript / Flex SDK for mapping, geocoding, directions, geo search, and traffic! Before I go any further, here are the important links: You can download the AS3 / Flex SDK here. You can view the Samples here. You can view the documentation here. You can access the AS3 / Flex section of the Developer Network here. And if you don't have one already, you can get an appKey here. During the course of the project we have touched pretty much every line of code to overhaul, upgrade, enhance, optimize and improve the SDK. We also re-wrote several main sections of the SDK from the ground up to use the new MapQuest Web Services. What follows is by no means a complete list of the things we have done to the SDK, but should give a nice overview of the main enhancements.
    FlashBuilder 4 (beta) Support
    The SDK works with both FlexBuilder 3 and FlashBuilder 4. The SDK also works with both Flash Player 9 and Flash Player 10.
    Single .swc, Smaller Compiled App
    We've consolidated all the different files into one single .swc. We also removed dependencies from the core TileMap object wherever possible, typically resulting in a smaller final SWF size .
    Object model Overhaul, Removed Getter/Setters
    Most explicit object.setProperty(value) functions have been removed from the SDK, in favor of a more AS3-friendly object.property = value. Returning these values has also been changed to object.property. Not only does this make the SDk more intuitive, it also removed quite a lot of weight!
    Shapes And Drawing Engine Overhaul
    The core shape objects have been overhauled to be simpler, and use a new internal drawing engine. As a result we have been able to add a couple of other new cool features. One example is that you can now add child overlays to a main overlay, which then act as clipping masks to punch holes in your polygons, rectangles, ellipses, and circles. So now you can do donut polygons! Yay!
    Overlay Cutouts You can use any shape overlay to cut holes.
    Directions, Search, and Geocoding completely re-written
    This is a complete overhaul and upgrade to the object model and how you use it - it is now MUCH MUCH simpler and saner - and smaller! Create the appropriate service object, pass in your parameters, provide your map object, and watch the results appear on the map automagically. Provide an event handler to receive the results. Done!. If you are a power-user type, you can dive under the covers to provide all the different options available from the underlying services.
    Draggable Routes!
    If you want your users to be able to drag the route, then just add dir.ribbonIsDraggable = true; on the directions object before asking for the route. At the end of each drag, your directions success event handler is called again so you can handle the updated narrative. That's it. Done!
    New Map Style with a Draggable Route added and in mid-drag New Map Style with a Draggable Route added and in mid-drag.
    New Controls
    There's a new carousel control that looks like the MapQuest.com Biz Locator control. this tool lets you easily add ShapeCollections to the map, with a pre-built UI for users to turn these collections off and on, on top of the map. There's also an overview map control you can place in the corner of the main map, as well as other controls to enable mouse scroll wheel zooming, and keyboard map interaction.
    DefaultTileMap Component
    The new DefaultTileMap object and drag and drop component sets up the map UI to work just like MapQuest.com, making it even quicker to set up all the controls and mouse interactions.
    New Declutter Modes
    Decluttering was also overhauled, providing new ways to declutter the map. My personal favourite is the new ForceDeclutter which animates the POIs moving away from each other until they are decluttered. It makes me giggle every time.
    The new map style with Globe View turned on in the AS3 map toolkit The new map style with Globe View turned on in the AS3 SDK.
    There are so many things we have done to the SDK, I am sure I've missed a few big items. I could mention the Globe View changes (you can now set the globe size, and freeze either axis, or make it auto-rotate to be vertical again when someone stops spinning it); I could also mention the spiffy new documentation that includes sections on how to make your own infowindows, POIs, and custom controls; But, unfortunately, I am out of time for now, as I must go prepare for SXSW later this week. If you are going to the conference, please do stop by the booth (#401) and say "Hi" to us, check out the new Platform and, if there is room left, come to our BBQ party!