Local Tax WADL

Refer 'TaxResponse.xsd' and 'Errors.xsd' for XML schema definition.

<application xmlns="http://wadl.dev.java.net/2009/02" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:prefix1="https://developer.precisely.com/apis/schema/v1">
	<grammars>
		<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="https://developer.precisely.com/apis/schema/v1" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="https://developer.precisely.com/apis/schema/v1">
			<xs:import namespace="https://developer.precisely.com/apis/schema/v1"/>
			<xs:element name="TaxAddress" type="TaxAddress"/>
			<xs:element name="TaxRateAddress" type="TaxRateAddress"/>
			<xs:element name="taxAddressRequest" type="ns1:taxAddressRequest"/>
			<xs:element name="taxLocationRequest" type="ns1:taxLocationRequest"/>
			<xs:element name="taxRateAddressRequest" type="ns1:taxRateAddressRequest"/>
			<xs:element name="taxRateLocationRequest" type="ns1:taxRateLocationRequest"/>
			<xs:element name="taxDistrictAddressRequest" type="ns1:taxDistrictAddressRequest"/>
			<xs:complexType name="Preferences">
				<xs:sequence>
					<xs:element name="fallbackToGeographic" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="matchMode" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="distanceUnits" type="xs:string"/>
					<xs:element name="customPreferences">
						<xs:complexType>
							<xs:sequence>
								<xs:element maxOccurs="unbounded" minOccurs="0" name="entry">
									<xs:complexType>
										<xs:sequence>
											<xs:element minOccurs="0" name="key" type="xs:anyType"/>
											<xs:element minOccurs="0" name="value" type="xs:anyType"/>
										</xs:sequence>
									</xs:complexType>
								</xs:element>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
					<xs:element minOccurs="0" name="outputCasing" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="defaultBufferWidth" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="returnCensusFields" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="returnLatLongFields" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="latLongOffset" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="squeeze" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="useGeoTaxAuxiliaryFile" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="latLongFormat" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="taxRatetypeID" type="xs:string"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="TaxAddress">
				<xs:complexContent>
					<xs:extension base="TaxRateAddress">
						<xs:sequence>
							<xs:element minOccurs="0" name="purchaseAmount" type="xs:string"/>
						</xs:sequence>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
			<xs:complexType name="Address">
				<xs:sequence>
					<xs:element minOccurs="0" name="mainAddressLine" type="xs:string"/>
					<xs:element minOccurs="0" name="placeName" type="xs:string"/>
					<xs:element minOccurs="0" name="areaName1" type="xs:string"/>
					<xs:element minOccurs="0" name="areaName3" type="xs:string"/>
					<xs:element minOccurs="0" name="postCode1" type="xs:string"/>
					<xs:element minOccurs="0" name="country" type="xs:string"/>
				</xs:sequence>
			</xs:complexType>
		</xs:schema>
		<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="https://developer.precisely.com/apis/schema/v1" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="https://developer.precisely.com/apis/schema/v1">
			<xs:import/>
			<xs:complexType name="taxAddressRequest">
				<xs:sequence>
					<xs:element minOccurs="0" name="preferences" type="Preferences"/>
					<xs:element maxOccurs="unbounded" name="taxAddresses" type="TaxAddress"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="taxRateLocationRequest">
				<xs:sequence>
					<xs:element minOccurs="0" name="preferences" type="Preferences"/>
					<xs:element maxOccurs="unbounded" name="locations" type="tns:Locations"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="Locations">
				<xs:sequence>
					<xs:element name="geometry" type="tns:Geometry"/>
					<xs:element minOccurs="0" name="purchaseAmount" nillable="true" type="xs:string"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="Geometry">
				<xs:sequence>
					<xs:element name="type" type="xs:string"/>
					<xs:element maxOccurs="unbounded" minOccurs="0" name="coordinates" type="xs:double"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="taxLocationRequest">
				<xs:sequence>
					<xs:element minOccurs="0" name="preferences" type="Preferences"/>
					<xs:element maxOccurs="unbounded" name="locations" type="tns:Locations"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="taxRateAddressRequest">
				<xs:sequence>
					<xs:element minOccurs="0" name="preferences" type="Preferences"/>
					<xs:element maxOccurs="unbounded" name="taxRateAddresses" type="TaxRateAddress"/>
				</xs:sequence>
			</xs:complexType>
			<xs:complexType name="taxDistrictAddressRequest">
				<xs:sequence>
					<xs:element minOccurs="0" name="preferences" type="Preferences"/>
					<xs:element maxOccurs="unbounded" name="address" type="Address"/>
				</xs:sequence>
			</xs:complexType>
		</xs:schema>
	</grammars>
	<resources base="https://api.precisely.com">
		<resource path="/localtax/v1">
			<resource path="/tax/{taxRateTypeId}/byaddress">
				<param name="taxRateTypeId" style="template" type="xs:string"/>
				<method name="GET">
					<request>
						<param name="address" style="query" type="xs:string"/>
						<param name="purchaseAmount" style="query" type="xs:string"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
				<method name="POST">
					<request>
						<representation mediaType="application/json"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
			</resource>
			<resource path="/tax/{taxRateTypeId}/bylocation">
				<param name="taxRateTypeId" style="template" type="xs:string"/>
				<method name="GET">
					<request>
						<param name="latitude" style="query" type="xs:string"/>
						<param name="longitude" style="query" type="xs:string"/>
						<param name="purchaseAmount" style="query" type="xs:string"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
				<method name="POST">
					<request>
						<representation mediaType="application/json"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
			</resource>
			<resource path="/taxrate/{taxRateTypeId}/byaddress">
				<param name="taxRateTypeId" style="template" type="xs:string"/>
				<method name="GET">
					<request>
						<param name="address" style="query" type="xs:string"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
				<method name="POST">
					<request>
						<representation mediaType="application/json"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
			</resource>
			<resource path="/taxrate/{taxRateTypeId}/bylocation">
				<param name="taxRateTypeId" style="template" type="xs:string"/>
				<method name="GET">
					<request>
						<param name="latitude" style="query" type="xs:string"/>
						<param name="longitude" style="query" type="xs:string"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
				<method name="POST">
					<request>
						<representation mediaType="application/json"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
			</resource>
			<resource path="/taxdistrict/ipd/byaddress">
				<method name="GET">
					<request>
						<param name="address" style="query" type="xs:string" required="true"/>
						<param name="returnLatLongFields" style="query" type="xs:string"/>
						<param name="latLongFormat" style="query" type="xs:string"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
				<method name="POST">
					<request>
						<representation mediaType="application/json"/>
					</request>
					<response>
						<representation mediaType="application/json"/>
					</response>
				</method>
			</resource>
		</resource>
	</resources>
</application>