SOAP Overview

Accessible resources in Gotransverse are called Entities. Requests in SOAP rely heavily on the type of entity. For example, an instance of a billing account has a type of BillingAccount.

Types are always capitalized in camel case (BillingAccount), while entity names are traditional camel case (billingAccount).

Refer to the following topics for more information about SOAP:

SOAP Example

SOAP Example

Making Calls

All SOAP calls are made against the WSDL for your API version.

WSDL for SOAP requests (1.28) — https://my.tractbilling.com/t/s/billing/1.28?wsdl

Example Session Setup (Java)

Set up the WSDL URL, defaulting to Tract production site:

 URL wsdlURL = new URL(wsdl);

Create the service:

Name serviceName = new QName("http://www.tractbilling.com/billing/1.28/service", "TractService");
      
            
        
        TractService svc = new TractService("https://my.tractbilling.com/t/s/billing/1.28?wsdl", serviceName); 
     
     Tract port = svc.getTractPort(); 

Specify the username/password per basic authentication specification:

BindingProvider bp = (BindingProvider)port;

       Map<String,Object> map = bp.getRequestContext();				
       map.put(BindingProvider.USERNAME_PROPERTY, username);	
       map.put(BindingProvider.PASSWORD_PROPERTY, password);
        
    return port;
        

Use the port variable to create the web service request.

Methods

All queries, updates, and additions in SOAP use the POST method.

Header

You don't pass any information on your tenant in the call or the header. Gotransverse routes your call to the appropriate tenant based on your Gotransverse credentials. This means the basic header contains only your authorization credentials.

Body

There is no content type included in SOAP calls, but all request bodies must be valid XML.

Example Call (HTTP):

This is a query for billing accounts. Note the POST method, the authorization, and the use of the BillingAccount type.

POST /t/s/billing/1.28?wsdl HTTP/1.1
Host: my.tractbilling.com
Authorization: Basic aWFsZXhhbmRlci1RQTpmdWs4MzgzODMh

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <ns2:query xmlns="http://www.tractbilling.com/billing/1_28/domain" xmlns:ns2="http://www.tractbilling.com/billing/1_28/service">
            <ns2:queryRequest>
                <simpleDataQuery>
                    <type>BillingAccount</type>
                </simpleDataQuery>
            </ns2:queryRequest>
        </ns2:query>
    </soap:Body>
</soap:Envelope>
	

Refer to the following topic for more information: