AddressLookupService

<back to all web services

PostcodeLookupRequest

Postcode Lookup Requests

This RESTful API returns UK Address data in both POST and GET. Input=Postcode(Mandatory), HouseNameorNumber=(Optional). You must provide valid authentication to make a request.

Requires Authentication
The following routes are available for this service:
POST/addressCall to list addressesPOST request to search for addresses. Using Postcode and House Name/Number as input.
GET/address/{Postcode}Call to list addressesGET request to search for addresses. Using Token, Postcode and House Name/Number as input.
GET/address/{Postcode}/{HouseNo}Call to show a specific addressGET request to search for addresses. Using Token, Postcode and House Name/Number as input.
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


# @Api(Description="This RESTful API returns UK Address data in both POST and GET. Input=Postcode(Mandatory), HouseNameorNumber=(Optional). You must provide valid authentication to make a request.")
# @ApiResponse(Description="Bad Request: Try formatting the request differently. See the /swagger-ui/ documentation for more details", StatusCode=400)
# @ApiResponse(Description="Something went wrong here. Please contact your administrator or servicedesk@uk.rapp.com for more details.", StatusCode=500)
# @ApiResponse(Description="Request Accepted", StatusCode=202)
# @ApiResponse(Description="No content returned", StatusCode=204)
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PostcodeLookupRequest:
    """
    This RESTful API returns UK Address data in both POST and GET. Input=Postcode(Mandatory), HouseNameorNumber=(Optional). You must provide valid authentication to make a request.
    """

    # @ApiMember(DataType="string", Description="Using a Postcode to return addresses.", IsRequired=true, Name="Postcode")
    postcode: Optional[str] = None
    """
    Using a Postcode to return addresses.
    """


    # @ApiMember(DataType="string", Description="Optional input value to limit the return data to a specific address.", Name="House Name or Number")
    house_no: Optional[str] = None
    """
    Optional input value to limit the return data to a specific address.
    """

Python PostcodeLookupRequest DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /address HTTP/1.1 
Host: webservices.mbukdatabase.co.uk 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"Postcode":"String","HouseNo":"String"}