Pushpin API Blog
API Documentation
API Blog Archives
Latest Posts
Oct – Dec 2007
Jul – Sep 2007
Apr – Jun 2007
Jan – Mar 2007
Oct – Dec 2006
Jul – Sep 2006
Apr – Jun 2006
Contact us


(c) 2008 Placebase, Inc.
The Pushpin API Blog was created to help track new releases, updates and features, bug fixes, and upcoming developments to the Pushpin API. As well, common API and JavaScript / AJAX problems and techniques will be discussed. All posts will be submitted by our development team. Feel free to send feedback or questions to our support team.


New Map Type and Layers from Public Data

Posted by Rorie Overby - 05/22/08 16:39:03

We've released a map type with the same style and map layers as our ProView maps that is built from public datasets that we've enhanced. You can check it out and compare with our standard maps here. The map type to use is PMapType.NORMAL_TG.

PolicyMap Launched!

Posted by Jaron Waldman - 05/20/08 15:50:28

We're extremely proud to present PolicyMap, that we officially launched today with The Reinvestment Fund. This is probably the most sophisticated website built on the Pushpin API to date, and includes rich content and analytics with more than 4,000 indicators related to demographics, real estate markets, money and income, education, crime and more. Free registration lets you save and print maps, and a paid subscription gets access to the commercial datasets including home sales data from Boxwood Means/First American, current year and 5-year demographic projections from Claritas, and more. Enjoy!

New Location REST API

Posted by John Leslie - 05/13/08 18:15:04

We've released a beta version of our Location REST API that we showed off at Where 2.0. It supports human-readable URLs like http://rest.beta.pushpin.com/CA/zipcodes/90013, with GeoJSON and KML formats too.

Smooth Continuous Zooming

Posted by I Wei Lai - 04/22/08 11:01:52

Smooth continuous zooming is now part of the standard API. You'll see these new functions to control that using the PMap object.
  • enableContinuousZoom() enables continuous zoom.
  • disableContinuousZoom() disables continuous zoom.
  • continuousZoomEnabled() returns true if continuous zoom is enabled.
Note that the continuous animation only occurs when zooming in or out one level and is disabled by default.

Filtering Pins with Icons

Posted by I Wei Lai - 04/01/08 17:48:43

You're probably familiar with the filtering capabilities for markers in the API. Now, there is a way to associate filters to icons, so you can see all your pins on the map at once with different icons! Here's an example that color codes different types of community centers. The following methods in POverlaySet make this happen:
  • setFiltersByIcons() sets filters by icons.
  • clearFiltersByIcons() removes filters by icons.
This is only currently supported for pre-defined server side markers and is not integrated into the overlay filter widget.

Custom Thematic Ranges

Posted by I Wei Lai - 04/01/08 16:26:12

We've exposed some functionality in the API that allows you to set custom thematic ranges (breaks) when shading thematic maps. Here is an example. The following methods were added to PIndicator:
  • getBreaks() returns a list of comma delimited breaks.
  • setCustomBreaks() sets custom breaks with a comma delimited list.
  • restoreBreaks() restores the default breaks (based on quantile calculations).

Pushpin Map Layers in Major Mapping Platforms

Posted by John Leslie - 01/15/08 15:37:28

Various Pushpin map layers will soon be available via other mapping platforms. Here's an example of the parcel layer being used in Microsoft Virtual Earth. To access the parcel layer (limited coverage at certain zoom levels, with over 55 million parcels nationwide) in the API, you can use PMapLayer.PARCEL.

Welcome 2008!

Posted by I Wei Lai - 01/07/08 18:41:15

We're excited about all the projects lined up for this year. To start things off, here's a preview of PolicyMap which should officially launch in the coming months. It's a powerful online mapping tool for the whole US with the ability to easily create, save and print maps, tables, charts and reports. PolicyMap was almost entirely built with the API, but a lot of it has not yet been documented. It'll give you a good idea of what's to come later, but in the meantime, feel free to dig into the functionalities like charts and tables.

In terms of new features in the API, there's a small addition to the printImage() function that allows you to include a client-side marker. The example for this has been updated.

Urban Mapping Neighborhoods

Posted by Rorie Overby - 11/21/07 19:22:21

We're excited to announce, through our partnership with Urban Mapping, that we will be adding a new neighborhoods layer to the API. The neighborhoods include city areas such as the boroughs of New York City, city sub-regions like the Lower East Side, and smaller neighborhoods including Hell's Kitchen and Greenwich Village. The neighborhoods layer will show labels based on neighborhood hierarchy, showing larger sub-regional areas when zoomed out and smaller neighborhoods when zoomed in. The Urban Mapping neighborhoods cover all major metropolitan areas in the US and Canada, in addition to mid-sized urban areas.

For a sneak peek, here's a demo page with the neighborhoods layer (only in New York City). Full coverage and inclusion in API to come soon. Happy Thanksgiving!

Various methods and objects

Posted by I Wei Lai - 11/06/07 15:42:55

We've been busy with a couple of projects (will post them when they are released), all involving use of the API. As a result, we've included a few more convenience functions and new place types.
  • More PEvent methods to help with event handling as well as a new PEventListener object for tracking event handlers. It is advised that PEvent be used for event handling so that all events can be tracked in one place.
  • New PUnload method for minimizing various browser memory leaks.
  • New functions in PMap for enabling and disabling keyboard controls on the map.
  • New place types for US School and Congressional Districts.

New Pushpin ProView Maps!

Posted by Rorie Overby - 09/18/07 18:36:41

We've come up with a new set of stylish maps that we're calling ProView! Check it out fully here. These new layers will be part of the default maps in the API from now on, so as a result, we've incremented the API version to 1.3. To access the old styles, you can use the renamed map types and layers in the catalog. You'll also see that there are new default map controls that look and work better than before. New key signups will automatically get version 1.3 and the new maps, but as always, developers can choose to use the version they want (example).


PIndicator functions

Posted by I Wei Lai - 08/27/07 19:12:15

PIndicator properties have been replaced by methods, due to the new support for time periods for indicators. Certain indicators are available for different time periods and you can display data for the different periods by using setPeriod(), which will also automatically refreshes the map. This impacts a few properties such as description, since they sometimes vary across different periods. Using getDescription() will ensure you retrieve the correct description for the current period the indicator is set to. Methods getPeriods() and getPlaceTypes() return the periods and place types available for the indicator.

Pushpin 1.2 and Geographic Breadcrumbs

Posted by I Wei Lai - 07/27/07 16:50:23

Some of you may have noticed the new version of the Pushpin API that we snuck in last week. The biggest feature is the addition of what we call "geographic breadcrumbs" or "geo-breadcrumbs" and the ability to query place containments. Geo-breadcrumbs work in similar fashion to "breadcrumb" trails that are often used in applications to keep track of your location or path. Check out the example and notice how the breadcrumbs update as you pan or zoom! We've also got some preliminary charting capabilities in there but we still need to finalize the documentation. Stay tuned...

To summarize, here are all the new features in this release:
  • Find the closest PPlace given a point and place type and return a list of places that contain that place using getPlaceContainment() in PClientGeocoder.
  • Use the PPlaceContainmentWidget to display and control geo-breadcrumbs at different zoom levels. Control for what place type to use per zoom level is done by using the new class PPlaceTypeConfig.
  • Introduction of absolute zoom levels, to alleviate customizing zooms. Here are the additional methods that support this:
    • Get absolute zoom of current map with getAbsoluteZoom() in PMap.
    • Set absolute zoom of current map with setAbsoluteZoom() in PMap.
    • Enable absolute zoom levels in map types with enableAbsoluteZooms() in PMapType. This was previously done by setting scales with setScales() which required knowing what scales were available.
    • Get enabled absolute zoom levels for map types with getEnabledAbsoluteZooms() in PMapType.
    • Get all available zoom levels for map types with getAbsoluteZooms() in PMapType.

PPlace Enhancements

Posted by I Wei Lai - 07/16/07 16:39:41

A few more functions have been added to the PPlace object:
  • getVertices() returns an array of PLatLng arrays that contain the points for the place. These points can then be used with PPolyline or PPolygon to highlight or shade these places.
  • getPopulation() returns the population of the place.
  • getState() returns the abbreviated US state for the place.
The example in the previous post has been updated to show off these new functions.

Pushpin the Return

Posted by I Wei Lai - 06/21/07 18:59:23

Wow, it's been 2 months since a blog update! We've been busy working on a bunch of projects and finally found some time to expose new functionality in the API. We're also getting close to a version 1.2 release, which will include the ability to draw charts with the data in Pushpin Collections.

For now, the major feature included is the exposure of our geographic boundaries, e.g. zip codes, states, counties, etc. We're calling these boundaries "places" and they are represented by the PPlace object. There's also a new function getPlace() in PClientGeocoder that lets you search these places. Click here to see a list of the different types of places that we currently support. We'll be constantly adding more types, the next ones being world countries and cities. Click here to see an example for searching places.

Other features included in this release:
  • The ability to set the opacity for map layers, using setOpacity() in PMapLayer.
  • The ability to enable zooming with the mouse scroll wheel, using enableScrollWheelZoom() in PMap.

Pushpin Collections, new Pushpin.com and more!

Posted by I Wei Lai - 04/17/07 11:32:23

We've been busy trying to get out a slew of features for the Location Intelligence conference.

For starters, we've released a new look and redesign for Pushpin.com that shows off the different types of maps that we can support. As well, there's a link on there for developers to easily sign up for a 30-day free trial API key.

Next, we've loaded over 10,000 variables and indicators into a massive catalog that we're calling Pushpin Collections from sources including ESRI and Claritas. All of the variables can be shaded by state, county, zip, census tract and all the way down to the block group level. These thematic variables can be added to maps the same way as before, e.g. using PMap.setIndicatorById(). Browse Collections or check out the demo page to see some of these variables.

As well, we've included more predefined map layers in the API Catalog.

Enjoy!