AddressLookupService

<back to all web services

AddressRequest

Requires Authentication
The following routes are available for this service:
GET/2.0/address/{Postcode}
GET/2.0/address/{Postcode}/{HouseNo}
import Foundation
import ServiceStack

public class AddressRequest : IHasVersion, Codable
{
    public var version:Int
    /**
    * Using a Postcode to return addresses.
    */
    // @ApiMember(DataType="string", Description="Using a Postcode to return addresses.", IsRequired=true, Name="Postcode", ParameterType="path")
    public var postcode:String

    /**
    * Optional input value to limit the return data to a specific address.
    */
    // @ApiMember(DataType="string", Description="Optional input value to limit the return data to a specific address.", Name="House Name or Number", ParameterType="path")
    public var houseNo:String

    required public init(){}
}

// @DataContract(Name="LookupResult", Namespace="http://schemas.datacontract.org/2004/07/PostcodeLookupService")
public class LookupResult : Codable
{
    // @DataMember
    public var addresses:[Address] = []

    // @DataMember
    public var errormsg:String

    required public init(){}
}

// @DataContract(Name="Address", Namespace="http://schemas.datacontract.org/2004/07/PostcodeLookupService")
public class Address : Codable
{
    // @DataMember
    public var county:String

    // @DataMember
    public var id:Int

    // @DataMember
    public var locality:String

    // @DataMember
    public var organisation:String

    // @DataMember
    public var postcode:String

    // @DataMember
    public var property:String

    // @DataMember
    public var rappPremiseId:Int

    // @DataMember
    public var street:String

    // @DataMember
    public var town:String

    // @DataMember
    public var fullAddress:String

    required public init(){}
}


Swift AddressRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /2.0/address/{Postcode} HTTP/1.1 
Host: webservices.mbukdatabase.co.uk 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Addresses: 
	[
		{
			County: String,
			Id: 0,
			Locality: String,
			Organisation: String,
			Postcode: String,
			Property: String,
			RAPPPremiseId: 0,
			Street: String,
			Town: String,
			FullAddress: "String, String, String, String, String, String"
		}
	],
	errormsg: String
}