Table of Contents

Class GoogleMapsClient

Namespace
GoogleMapsApi
Assembly
GoogleMapsApi.dll

Instance-based Google Maps client driven by an injected HttpClient. It is friendly to IHttpClientFactory, supports per-instance event handlers, and avoids the testability problems of static state.

public sealed class GoogleMapsClient : IGoogleMapsClient
Inheritance
GoogleMapsClient
Implements
Inherited Members

Constructors

GoogleMapsClient(HttpClient)

Creates a client that uses the supplied HttpClient with default options (no ambient API key — callers must set ApiKey on each request).

public GoogleMapsClient(HttpClient httpClient)

Parameters

httpClient HttpClient

GoogleMapsClient(HttpClient, GoogleMapsClientOptions)

Creates a client that uses the supplied HttpClient and options.

public GoogleMapsClient(HttpClient httpClient, GoogleMapsClientOptions options)

Parameters

httpClient HttpClient

The HTTP client used for every API call. Typically obtained from IHttpClientFactory.

options GoogleMapsClientOptions

Ambient options applied to every request (e.g. default API key).

Properties

AddressValidation

Validate a postal address (Address Validation API). Supports USPS CASS for US/PR addresses.

public IEngineFacade<AddressValidationRequest, AddressValidationResponse> AddressValidation { get; }

Property Value

IEngineFacade<AddressValidationRequest, AddressValidationResponse>

Directions

Perform directions operations.

public IEngineFacade<DirectionsRequest, DirectionsResponse> Directions { get; }

Property Value

IEngineFacade<DirectionsRequest, DirectionsResponse>

DistanceMatrix

Retrieve duration and distance values based on the recommended route between start and end points.

public IEngineFacade<DistanceMatrixRequest, DistanceMatrixResponse> DistanceMatrix { get; }

Property Value

IEngineFacade<DistanceMatrixRequest, DistanceMatrixResponse>

Elevation

Perform elevation operations.

public IEngineFacade<ElevationRequest, ElevationResponse> Elevation { get; }

Property Value

IEngineFacade<ElevationRequest, ElevationResponse>

Geocode

Perform geocoding operations.

public IEngineFacade<GeocodingRequest, GeocodingResponse> Geocode { get; }

Property Value

IEngineFacade<GeocodingRequest, GeocodingResponse>

PlaceDetailsNew

Fetch rich details about a single place via the Places API (New).

public IEngineFacade<PlaceDetailsRequest, Place> PlaceDetailsNew { get; }

Property Value

IEngineFacade<PlaceDetailsRequest, Place>

PlacePhoto

Resolve a place photo reference to an image URI via the Places API (New).

public IEngineFacade<PlacePhotoRequest, PlacePhotoResponse> PlacePhoto { get; }

Property Value

IEngineFacade<PlacePhotoRequest, PlacePhotoResponse>

PlacesAutocompleteNew

Get place/query predictions for typed input via the Places API (New).

public IEngineFacade<AutocompleteRequest, AutocompleteResponse> PlacesAutocompleteNew { get; }

Property Value

IEngineFacade<AutocompleteRequest, AutocompleteResponse>

PlacesSearchNearby

Search for places near a location via the Places API (New).

public IEngineFacade<SearchNearbyRequest, SearchNearbyResponse> PlacesSearchNearby { get; }

Property Value

IEngineFacade<SearchNearbyRequest, SearchNearbyResponse>

PlacesSearchText

Search for places by free-text query via the Places API (New).

public IEngineFacade<SearchTextRequest, SearchTextResponse> PlacesSearchText { get; }

Property Value

IEngineFacade<SearchTextRequest, SearchTextResponse>

Routes

Compute routes via the Routes API — the modern replacement for the Directions API.

public IEngineFacade<RoutesRequest, RoutesResponse> Routes { get; }

Property Value

IEngineFacade<RoutesRequest, RoutesResponse>

TimeZone

Retrieve time zone data for a coordinate.

public IEngineFacade<TimeZoneRequest, TimeZoneResponse> TimeZone { get; }

Property Value

IEngineFacade<TimeZoneRequest, TimeZoneResponse>