Migrating from Loqate
Loqate’s Capture finds suggestions in steps, drilling into a postcode or a street by its `Container`, then retrieves the address by its `Id`. Zapex suggests addresses themselves from the first keystrokes, so there is no drilling: the suggestion’s `uprn` is looked up at once.
Calls
| Loqate | Zapex | |
|---|---|---|
Capture/Interactive/Find (Text, Container, Countries=GB) | GET /v1/addresses?q= | Every suggestion is an address: there is no `Type` of `Postcode` or `Street` to drill into. |
Capture/Interactive/Retrieve (Id) | GET /v1/addresses/{uprn} | |
Cleansing/Batch, or Verify | POST /v1/cleansing/jobs | Up to 100,000 a job, read back in pages. |
Geocoding/UK/Geocode | GET /v1/geocode/forward?q= | |
Geocoding/UK/RetrieveNearestPlaces | GET /v1/geocode/reverse, GET /v1/places |
Fields, one by one
| Loqate | Zapex | |
|---|---|---|
Items[].Id | suggestions[].uprn | |
Items[].Text, Items[].Description | suggestions[].street_address, post_town and postcode | |
Items[].Highlight | (none) | Highlight the words typed yourself, if you need to. |
Company | components.organisation_name | |
Department | components.department_name | |
SubBuilding | components.sub_building_name | |
BuildingName | components.building_name | |
BuildingNumber | components.building_number | |
SecondaryStreet | components.dependent_thoroughfare_and_descriptor | |
Street | components.thoroughfare_and_descriptor | |
Neighbourhood | components.double_dependent_locality | |
District | components.dependent_locality | |
City | post_town | |
PostalCode | postcode | |
Line1 … Line3 | lines.line_1 … line_3 | Three lines, not five. |
AdminAreaName, Province | geography.local_authority, geography.county | |
CountryIso2 | country | |
DomesticId | udprn | |
(none, or a field of an extra) | uprn, location |
What to watch for
- Loqate charges a Retrieve, and Zapex a lookup: a search is free in both.
- A publishable key replaces a Loqate key restricted to referrers: name your origins in the dashboard.
Of Loqate’s documentation as of October 2026. Check it against the calls your integration makes, and tell us of anything that differs.