> This page is for Documentation, version Integration guides (default).
> For other versions, use one of these documentation indexes:
> - Integration guides (default): https://avalara.ferndocs.com/docs/integration-guides/llms.txt
> - Refactor guides: https://avalara.ferndocs.com/docs/refactor-guides/llms.txt
> - Get certified: https://avalara.ferndocs.com/docs/get-certified/llms.txt
> - Agent to Agent (A2A): https://avalara.ferndocs.com/docs/agent-to-agent-a2a/llms.txt
> - AI use cases: https://avalara.ferndocs.com/docs/ai-use-cases/llms.txt
> - API versioning: https://avalara.ferndocs.com/docs/api-versioning/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://avalara.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://avalara.ferndocs.com/_mcp/server.

# Sample Messages

* [Previous](https://developer.avalara.com/communications/dev-guide_geo_soap/getting-started/endpoints-methods/)
* [Next](https://developer.avalara.com/communications/dev-guide_geo_soap/getting-started/best-practices/)

Geocoding requests through AFC Geo SaaS Pro Soap are made using SOAP messages, with each message written in XML. Examples of both types of [bindings](https://developer.avalara.com/communications/dev-guide_geo_soap/getting-started/endpoints-methods/) are provided here to help you understand what should be sent to the service.

### Your First Address Geocoding Request

We’re going to send a simple `GetServerTime` request using [Postman](https://www.getpostman.com) and then inspect the results. Examples for both the [Basic HTTP Binding](#basic_http) and [Custom Binding](#custom) are provided here.

### Headers

Add these headers to your request:

* `Content-Type`: text/xml
* `SOAPAction`: [http://tempuri.org/ILocatorService/GetServerTime](http://tempuri.org/ILocatorService/GetServerTime)

The SOAPAction value is updated based on the [method](https://developer.avalara.com/communications/dev-guide_geo_soap/getting-started/endpoints-methods#methods/) you are using.

#### Postman example

![](https://developer.avalara.com/static/images/guides/soap/comms_geo_soap_dev_guide_1.png)

### Body

For the body of the `GetServerTime` request, copy and paste this example and update with your `Username` and `Password`:

### Basic HTTP Binding Example

#### Request

```xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:s="s"> <soapenv:Header> <o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <o:UsernameToken> <o:Username>USERNAME</o:Username> <o:Password>PASSWORD</o:Password> </o:UsernameToken> </o:Security> </soapenv:Header> <soapenv:Body> <tem:GetServerTime/> </soapenv:Body></soapenv:Envelope>
```

#### Response

```xml
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <s:Header> <o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <u:Timestamp u:Id="_0"> <u:Created>2019-01-29T19:54:40.527Z</u:Created> <u:Expires>2019-01-29T19:59:40.527Z</u:Expires> </u:Timestamp> </o:Security> </s:Header> <s:Body> <GetServerTimeResponse xmlns="http://tempuri.org/"> <GetServerTimeResult>Jan 29, 2019 7:54:40 PM</GetServerTimeResult> </GetServerTimeResponse> </s:Body></s:Envelope>
```

### Custom Binding Example

#### Request

```xml
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:tem="http://tempuri.org/" xmlns:s="s"> <soap:Header> <o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <o:UsernameToken> <o:Username>USERNAME</o:Username> <o:Password>PASSWORD</o:Password> </o:UsernameToken> </o:Security> </soap:Header> <soap:Body> <tem:GetServerTime/> </soap:Body></soap:Envelope>
```

#### Response

```xml
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope"> <s:Body> <GetServerTimeResponse xmlns="http://tempuri.org/"> <GetServerTimeResult>Jan 29, 2019 7:54:40 PM</GetServerTimeResult> </GetServerTimeResponse> </s:Body></s:Envelope>
```

For more sample requests, see [Customizing Geocoding Requests](https://developer.avalara.com/communications/dev-guide_geo_soap/customizing-geocoding-requests).

Sample code for other languages, such as C# and Java, can be found on [GitHub](https://github.com/Avalara/Communications-Developer-Content/tree/master/afc_saaspro_geo/sample_code/).

* [Previous](https://developer.avalara.com/communications/dev-guide_geo_soap/getting-started/endpoints-methods/)
* [Next](https://developer.avalara.com/communications/dev-guide_geo_soap/getting-started/best-practices/)

> **Note**
>
> Part of the **Communications Geo SaaS Pro SOAP guide** integration guide. [Open the full "Sample Messages" milestone on Avalara](https://developer.avalara.com/products/communications/integration-guides/dev-guide_geo_soap/getting-started/) to see every page in this section.