API Documentation

Integrate UK address lookup into your application in minutes.

Authentication

Address lookup requests are authenticated using an API key passed as a query parameter. You can create and manage API keys from your Dashboard.

GET /api/v1/autocomplete?query=baker+street&api_key=gua_your_key_here

Endpoints

GET/api/v1/autocomplete

Search for UK addresses by postcode or address text. Requires a valid API key and active subscription.

Query Parameters
ParameterTypeRequiredDescription
querystringYesPostcode or address text (min 3 characters)
api_keystringYesYour API key
Example Request
curl "https://getukaddress.com/api/v1/autocomplete?query=SW1A+1AA&api_key=gua_your_key"
Success Response 200
{
  "requestId": "0HN8A1B2C3D4E:00000001",
  "results": [
    {
      "organisation": "",
      "addressLine1": "Buckingham Palace",
      "addressLine2": "",
      "town": "London",
      "postcode": "SW1A 1AA",
      "summaryLine": "Buckingham Palace, London, SW1A 1AA"
    }
  ]
}
Response Fields
FieldTypeDescription
requestIdstringUnique identifier for the request
resultsarrayList of matching addresses
results[].organisationstringOrganisation name (if applicable)
results[].addressLine1stringPrimary address line
results[].addressLine2stringSecondary address line
results[].townstringTown or city
results[].postcodestringUK postcode
results[].summaryLinestringFull address as a single comma-separated string

Rate Limiting

Each subscription plan has a daily request limit. Rate limit information is included in response headers:

HeaderDescription
X-RateLimit-LimitYour daily request limit
X-RateLimit-RemainingRequests remaining today
X-RateLimit-ResetUTC timestamp when the limit resets (midnight UTC)

Error Handling

All errors are returned as RFC 9457 Problem Details JSON with Content-Type: application/problem+json.

Error Response Format
{
  "type": "https://getukaddress.com/errors/rate-limit-exceeded",
  "title": "RATE_LIMIT_EXCEEDED",
  "status": 429,
  "detail": "Daily limit of 500 requests exceeded. Resets at midnight UTC.",
  "instance": "/api/v1/autocomplete",
  "requestId": "0HN8A1B2C3D4E:00000001",
  "code": "RATE_LIMIT_EXCEEDED"
}
Error Codes
HTTP StatusCodeDescription
400INVALID_REQUESTQuery is missing or less than 3 characters
401INVALID_API_KEYAPI key is missing, invalid, or revoked
403EMAIL_NOT_VERIFIEDAccount email has not been verified
403ACCOUNT_SUSPENDEDAccount has been suspended
403SUBSCRIPTION_EXPIREDNo active subscription found
429RATE_LIMIT_EXCEEDEDDaily request limit exceeded
500INTERNAL_ERRORUnexpected server error