Bing Maps SOAP Services Addresses

 

This documentation is no longer available on MSDN. It is available as a CHM or PDF download. For the newest Geocoding, Imagery, Routing and Traffic services, see Bing Maps REST Services. 

The Bing Maps SOAP Services are built using Windows Communication Foundation (WCF). The Bing Maps SOAP Services conform to WS-Basic Profile 1.1. The four services are Geocode Service, Imagery Service, Route Service, and Search Service.

To use one of the Bing Maps SOAP Services, you need to generate a proxy class on your client. This is described in detail in the Generating Client Proxy Classes topic.

Bing Maps SOAP Services Addresses

The following table lists the service addresses for each of the Bing Maps SOAP Services.

Note

If you an existing customer using tokens, the Bing Maps Token Service will be retired on March 30, 2012. For information about upgrading your application to use Bing Maps Keys, see Migrating from Tokens to Keys.

Information about staging and production environments for tokens can be found in the Requesting a Bing Maps Token topic.

Service Name

Production Service Metadata URL

Geocode Service

https://dev.virtualearth.net/webservices/v1/geocodeservice/geocodeservice.svc

Imagery Service

https://dev.virtualearth.net/webservices/v1/imageryservice/imageryservice.svc

Route Service

https://dev.virtualearth.net/webservices/v1/routeservice/routeservice.svc

Search Service

https://dev.virtualearth.net/webservices/v1/searchservice/searchservice.svc

Using HTTPS Secure Socket Layer (SSL) Protocol

You can also use the HTTPS Secure Sockets Layer (SSL) protocol to call the Bing Maps SOAP Services. Note that using the SSL protocol adds latency for each call to the Bing Maps SOAP Services. The latency duration depends on how the SSL infrastructure is implemented on your servers; the minimum additional latency is five milliseconds. If you want to send and receive Bing Maps SOAP Services requests using Secure Socket Layer (SSL), follow the steps below.

  1. Generate proxy classes using the service addresses listed above by adding a service reference using the Visual Studio User Interface or by using the svcutil.exe tool. More information about this is found in the Generating Client Proxy Classes topic.

  2. Edit the service endpoint address URLs found in your Visual Studio configuration file to begin with "https" instead of "http".

  3. If you are using Visual Studio 2008 and the .NET Framework 3.0, you also need to change the BasicHttpSecurityMode to Transport. To do this, either set the mode of the security tag in your Visual Studio 2008 configuration file to Transport or set the mode when you initialize the service client. Examples of both methods are provided below.

The following example shows how to set the mode of the security tag to Transport in your Visual Studio configuration file.

<!-- Visual Studio 2008 configuration settings for SSL -->
<system.serviceModel>
   <bindings>
      <basicHttpBinding>
         <binding name="BasicHttpBinding_IImageryService" closeTimeout="00:01:00"
            openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
            allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
            maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
            messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
            useDefaultWebProxy="true">
            <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
            maxBytesPerRead="4096" maxNameTableCharCount="16384" />
            <security mode="Transport">
               <transport clientCredentialType="None" proxyCredentialType="None" realm="" />
               <message clientCredentialType="UserName" algorithmSuite="Default" />
            </security>
         </binding>
      </basicHttpBinding>
   </bindings>
   <client>
      <endpoint address="https://dev.virtualearth.net/WebServices/v1/ImageryService/ImageryService.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IImageryService" contract="IImageryService" name="BasicHttpBinding_IImageryService" />
   </client>
</system.serviceModel>

The following example shows how to set the security mode to Transport when you initialize the service client.

//    Initialize the service client variable with the Transport
//    security mode.
SearchServiceClient client = new SearchServiceClient(new BasicHttpBinding(BasicHttpSecurityMode.Transport), new EndpointAddress("https://dev.virtualearth.net/webservices/v1/searchservice/searchservice.svc");

See Also

Generating Client Proxy Classes