Tracking Virtual Earth Tile Usage

For those of you who are accessing the Virtual Earth tile system directly for integration into a Silverlight, WPF or Flash interface we now have a way for you to legitimize yourselves. First off, we recognize that without a Flash control for the Flex development environment or a Silverlight control we have a bit of a shortcoming for you creating some extremely innovative and scalable sites; however, we've worked to overcome contract and technical hurdles so you can use a Flash, WPF or Silverlight interface by accessing our tile servers directly - meaning, you're pulling the URLs for the tiles and stitching them together yourselves effectively creating your own Silverlight, WPF of Flash map controls. Short of pulling your IPs from the logs we haven't had a good way of showing you usage for your application (nor could we effectively track how many tiles were getting pulled into your application...until now! Now, to be clear, it's still not kosher for users without a valid contract to access our tiles directly so if you have a Silverlight, Flash, WPF or whatever app that your pulling tiles for directly (and you know who you are) you need to get a contract in place or your in violation of the terms of use. For those of you with a contract, here's the information you need to implement tile tracking (and you should get cracking on this asap).

First, you'll want to authenticate using our tokening system. This requires a SOAP request to authenticate (HTTP Digest Authentication) and get a token back in the response which you can the stick in your URL for the Virtual Earth Map Control. There's a MSDN Technical Article on Implementing Customer Identification which you should review. There is even a version for Virtual Earth Supporting Files for Java to Implement Customer Identification.

Now the articles show you how to drop the token into the URL string, but you're hitting the image server URL directly, so you'll need to add the token id as a parameter in the image URL string like this:

token=tokenid

Where tokenid is the token returned from Virtual Earth's authentication system.

So, let's say you get back the tokenID, 1234567. Your final image URL string for every image you're requesting would look something like this:

https://h0.ortho.tiles.virtualearth.net/tiles/h023131022213211200.jpeg?g=131&token=1234567

By adding this, you begin to conform to the terms of your contract, allow us to accurately track your usage (which could benefit your contract negotiations!) and allow you to accurately report on just how much traffic your site is REALLY getting and thus justify more budget to develop even cooler apps, Now, go make it happen.

CP