Retrieve by UDPRN
GET/udprn/:udprn
Returns an address as identified by its Unique Delivery Point Reference Number (UDPRN).
You may find it useful to store UDPRN information as it can be used to retrieve the most recent information for an address. It can also be used to test for a deleted address.
UDPRNs are an eight digit unique numeric code (e.g. 25962203
) for any premise on the Postcode Address File. It's essentially a unique identifier for every address in the UK that Royal Mail has in its database.
Testing
To test your implementation of our API we have a range of test UDPRNs that yield both successful and unsuccessful responses to your request.
They are the following:
0
Returns a successful UDPRN lookup response2000
-1
Returns "UDPRN not found", error4044
-2
Returns "no lookups remaining", error4020
-3
Returns "daily (or individual) lookup limit breached", error4021
Test request undergo the usual authentication and restriction rules. This is to help surface any issues that occur during implementation and does not cost you a lookup.
Request
Path Parameters
UDPRN to be retrieved
Query Parameters
API Key
Your unique identifier that allows access to our APIs.
Begins ak_
. Available from your dashboard
Restrict Result Fields
Comma separated whitelist of address elements to return.
E.g. filter=line_1,line_2,line_3
returns only line_1
, line_2
and line_3
address elements in your response
Responses
- 200
- 404
Success
Response Headers
- application/json
- Schema
- Example (from schema)
- Valid UDPRN
Schema
- Postcode Address File Address
- Not Yet Built Address
- MOD1
- MOD2
- The Manor
- 1-2
- A
- 12A
- K
- Victoria House
- MOD1
- MOD2
- MOD1
- MOD2
- MOD1
- MOD2
- MOD1
- MOD2
- MOD1
- MOD2
- The Manor
- 1-2
- A
- 12A
- K
- Victoria House
- MOD1
- MOD2
- MOD1
- MOD2
- MOD1
- MOD2
- MOD1
- MOD2
result object required
Global unique internally generated identifier for an address
Possible values: [paf
]
Indicates the provenance of an address
Possible values: [GBR
, IMN
, JEY
, GGY
]
3 letter country code (ISO 3166-1)
Possible values: [GB
, IM
, JE
, GG
]
2 letter country code (ISO 3166-1)
Possible values: [England
, Scotland
, Wales
, Northern Ireland
, Jersey
, Guernsey
, Isle of Man
]
Full country names (ISO 3166)
Possible values: [en
]
Language represented by 2 letter ISO Code (639-1)
First Address Line. Often contains premise and thoroughfare information. In the case of a commercial premise, the first line is always the full name of the registered organisation. Never empty.
Second Address Line. Often contains thoroughfare and locality information. May be empty
Third address line. May be empty.
Possible values: <= 30 characters
**Filter by Town or City" A Post Town is mandatory for delivery of mail to a Delivery Point. This is not necessarily the nearest town geographically, but a routing instruction to the Royal Mail delivery office sorting mail for that Delivery Point. A Post Town will always be present in every address, and for some Localities the Post Town will be the only locality element present.
Possible values: >= 6 characters
and <= 8 characters
Correctly formatted postcode. Capitalised and spaced.
Since postal, administrative or traditional counties may not apply to some addresses, the county field is designed to return whatever county data is available. Normally, the postal county is returned. If this is not present, the county field will fall back to the administrative county. If the administrative county is also not present, the county field will fall back to the traditional county. May be empty in cases where no administrative, postal or traditional county present.
Short code representing the county or province. May be empty (""
)
UPRN stands for Unique Property Reference Number and is maintained by the Ordnance Survey (OS). Local governments in the UK have allocated a unique number for each land or property.
Up to 12 digits in length.
Multiple Residence premises currently share the same UPRN as the parent premise.
May not be available for a small number of Great Britain addresses due to longer update cycles for Ordnance Survey's AddressBase datasets. Returns empty string "" in these instances.
Although UPRN takes an integer format, we encode and transmit this data as strings. As a 12 digit number, the UPRN can exceed the maximum safe integer Number.MAX_SAFE_INTEGER
in most browsers causing this datapoint to be corrupted.
Take special care when storing UPRN. As a 12 digit identifier, you will need 64 bits to encode every possible UPRN value. This means applications like Excel will corrupt cells containing UPRN values.
UDPRN stands for ‘Unique Delivery Point Reference Number’. Royal Mail assigns a unique UDPRN code for each premise on PAF. Simple, unique reference number for each Delivery Point. Unlikely to be reused when an address expires.
Up to 8-digit numeric code.
A new UDPRN is automatically assigned to each new Delivery Point added to PAF.
umprn object required
A small minority of individual premises (as identified by a UDPRN) may have multiple occupants behind the same letterbox. These are known as Multiple Residence occupants and can be queried via the Multiple Residence dataset. Simple, unique reference number for each Multiple Residence occupant.
Note: this will be an empty string ""
when not used.
string
number
Possible values: >= 2 characters
and <= 4 characters
The first part of a postcode is known as the outward code. e.g. The outward code of ID1 1QD is ID1. Enables mail to be sorted to the correct local area for delivery. This part of the code contains the area and the district to which the mail is to be delivered, e.g. ‘PO1’, ‘SW1A’ or ‘B23’.
Possible values: >= 3 characters
and <= 3 characters
The second part of a postcode is known as the inward code. e.g. The inward code of ID1 1QD is 1QD.
The number identifies the sector in the postal district. The number is followed by 2 letters. The letters then define one or more properties in that sector.
Possible values: <= 35 characters
When the same thoroughfare name reoccurs in a Post town, it may not be possible to make it dependant on a dependant thoroughfare. In this case the thoroughfare is dependant on a locality. For example if we want to find 1 Back Lane in Huddersfield we see that there are three.
Possible values: <= 35 characters
Used to supplement Dependant Locality. A Double Dependant Locality supplied along with a Dependant Locality if the Dependant Locality exists twice in the same locality.
Possible values: <= 80 characters
Also known as the street or road name. In general each Thoroughfare Name will have a separate Postcode. Longer Thoroughfares with high number ranges often have multiple Postcodes covering the entire length of the road, with breaks at suitable points e.g. junctions or natural breaks in the road.
Possible values: <= 80 characters
Used to supplement thoroughfare. When a thoroughfare name is used twice in the same Post Town, the dependant thoroughfare is added to uniquely indentify a delivery point.
Possible values: <= 4 characters
Number to identify premise on a thoroughfare or dependant thoroughfare.
Possible values: <= 50 characters
Name of residential or commercial premise.
Examples:
Possible values: <= 30 characters
When a premise is split into individual units such as flats, apartments or business units. Cannot be present without either building_name or building_number. E.g. Flat 1, A, 10B
Possible values: <= 6 characters
When the PO Box Number field is populated it will contain PO BOX nnnnnn where n represents the PO Box number. Note that the PO Box details can occasionally consist of a combination of numbers and letters. PO Box Numbers are only allocated to Large Users.
Possible values: <= 60 characters
Used to supplment Organisation Name to identify a deparment within the organisation.
Possible values: <= 60 characters
Used to supplment Organisation Name to identify a deparment within the organisation
Possible values: [S
, L
, ``]
This indicates the type of user. It can only take the values 'S' or 'L' indicating small or large respectively. Large User Postcodes. These are assigned to one single address either due to the large volume of mail received at that address, or because a PO Box or Selectapost service has been set up. Small User Postcodes. These identify a group of Delivery Points.
On average there are 19 Delivery Points per Postcode. However this can vary between 1 and, in some cases, 100. There will never be more than 100 Delivery Points on a Postcode.
Small User Organisation Indicator can have the values 'Y' or space. A value of 'Y' indicates that a Small User Organisation is present at this address.
A unique Royal Mail 2-character code (the first numeric & the second alphabetical), which, when added to the Postcode, enables each live Delivery Point to be uniquely identified. Once the Delivery Point is deleted from PAF the DPS may be reused (although they aren’t reused until all remaining Delivery Points in the range have been allocated). The DPS for a Large User is always '1A' as each Large User has its own Postcode.
Possible values: <= 84 characters
A pre-computed string which sensibly combines building_number, building_name and sub_building_name. building_number, building_name and sub_building_name represent raw data from Royal Mail's and can be difficult to parse if you are unaware of how the Postcode Address File premise fields work together. For this reason, we also provide a pre-computed premise field which intelligently gathers these points into a single, simple premise string. This field is ideal if you want to pull premise information and thoroughfare information separately instead of using our address lines data.
The current administrative county to which the postcode has been assigned.
A Unitary Authority name, where one is present. If there is no Unitary Authority, the County name is used. This information is not static, because County boundaries may change due to administrative changes. Data
source: ONS
Postal counties were used for the distribution of mail before the Postcode system was introduced in the 1970s. The Former Postal County was the Administrative County at the time. This data rarely changes. May be empty.
Traditional counties are provided by the Association of British Counties. It is historical data, and can date from the 1800s. May be empty.
The current district/unitary authority to which the postcode has been assigned.
The current administrative/electoral area to which the postcode has been assigned. May be empty for a small number of addresses.
longitude object required
The longitude of the postcode (WGS84/ETRS89).
Can be a positive or negative decimal. E.g. -0.1283983
Returns an empty string if no location data is available.
string
number
latitude object required
The latitude of the postcode (WGS84/ETRS89).
Can be a positive or negative decimal. E.g. 51.5083983
.
Returns an empty string if no location data is available.
string
number
eastings object required
Eastings reference using the Ordnance Survey National Grid reference system.
Northern Ireland Eastings uses the Irish Grid Reference System.
Metres from origin. E.g. 550458
Returns an empty string if no location data is available. Otherwise a number is returned.
string
number
northings object required
Northings reference using the Ordnance Survey National Grid reference system
Northern Ireland Northings uses the Irish Grid Reference System
Metres from origin. E.g. 180458
Returns an empty string if no location data is available. Otherwise a number is returned
string
number
Global unique internally generated identifier for an address
Possible values: [nyb
]
Indicates the provenance of an address
Possible values: [GBR
, IMN
, JEY
, GGY
]
3 letter country code (ISO 3166-1)
Possible values: [GB
, IM
, JE
, GG
]
2 letter country code (ISO 3166-1)
Possible values: [England
, Scotland
, Wales
, Northern Ireland
, Jersey
, Guernsey
, Isle of Man
]
Full country names (ISO 3166)
Possible values: [en
]
Language represented by 2 letter ISO Code (639-1)
First Address Line. Often contains premise and thoroughfare information. In the case of a commercial premise, the first line is always the full name of the registered organisation. Never empty.
Second Address Line. Often contains thoroughfare and locality information. May be empty
Third address line. May be empty.
Possible values: <= 30 characters
**Filter by Town or City" A Post Town is mandatory for delivery of mail to a Delivery Point. This is not necessarily the nearest town geographically, but a routing instruction to the Royal Mail delivery office sorting mail for that Delivery Point. A Post Town will always be present in every address, and for some Localities the Post Town will be the only locality element present.
Possible values: >= 6 characters
and <= 8 characters
Correctly formatted postcode. Capitalised and spaced.
Since postal, administrative or traditional counties may not apply to some addresses, the county field is designed to return whatever county data is available. Normally, the postal county is returned. If this is not present, the county field will fall back to the administrative county. If the administrative county is also not present, the county field will fall back to the traditional county. May be empty in cases where no administrative, postal or traditional county present.
Short code representing the county or province. May be empty (""
)
UPRN stands for Unique Property Reference Number and is maintained by the Ordnance Survey (OS). Local governments in the UK have allocated a unique number for each land or property.
Up to 12 digits in length.
Multiple Residence premises currently share the same UPRN as the parent premise.
May not be available for a small number of Great Britain addresses due to longer update cycles for Ordnance Survey's AddressBase datasets. Returns empty string "" in these instances.
Although UPRN takes an integer format, we encode and transmit this data as strings. As a 12 digit number, the UPRN can exceed the maximum safe integer Number.MAX_SAFE_INTEGER
in most browsers causing this datapoint to be corrupted.
Take special care when storing UPRN. As a 12 digit identifier, you will need 64 bits to encode every possible UPRN value. This means applications like Excel will corrupt cells containing UPRN values.
UDPRN stands for ‘Unique Delivery Point Reference Number’. Royal Mail assigns a unique UDPRN code for each premise on PAF. Simple, unique reference number for each Delivery Point. Unlikely to be reused when an address expires.
Up to 8-digit numeric code.
A new UDPRN is automatically assigned to each new Delivery Point added to PAF.
umprn object required
A small minority of individual premises (as identified by a UDPRN) may have multiple occupants behind the same letterbox. These are known as Multiple Residence occupants and can be queried via the Multiple Residence dataset. Simple, unique reference number for each Multiple Residence occupant.
Note: this will be an empty string ""
when not used.
string
number
Possible values: >= 2 characters
and <= 4 characters
The first part of a postcode is known as the outward code. e.g. The outward code of ID1 1QD is ID1. Enables mail to be sorted to the correct local area for delivery. This part of the code contains the area and the district to which the mail is to be delivered, e.g. ‘PO1’, ‘SW1A’ or ‘B23’.
Possible values: >= 3 characters
and <= 3 characters
The second part of a postcode is known as the inward code. e.g. The inward code of ID1 1QD is 1QD.
The number identifies the sector in the postal district. The number is followed by 2 letters. The letters then define one or more properties in that sector.
Possible values: <= 35 characters
When the same thoroughfare name reoccurs in a Post town, it may not be possible to make it dependant on a dependant thoroughfare. In this case the thoroughfare is dependant on a locality. For example if we want to find 1 Back Lane in Huddersfield we see that there are three.
Possible values: <= 35 characters
Used to supplement Dependant Locality. A Double Dependant Locality supplied along with a Dependant Locality if the Dependant Locality exists twice in the same locality.
Possible values: <= 80 characters
Also known as the street or road name. In general each Thoroughfare Name will have a separate Postcode. Longer Thoroughfares with high number ranges often have multiple Postcodes covering the entire length of the road, with breaks at suitable points e.g. junctions or natural breaks in the road.
Possible values: <= 80 characters
Used to supplement thoroughfare. When a thoroughfare name is used twice in the same Post Town, the dependant thoroughfare is added to uniquely indentify a delivery point.
Possible values: <= 4 characters
Number to identify premise on a thoroughfare or dependant thoroughfare.
Possible values: <= 50 characters
Name of residential or commercial premise.
Examples:
Possible values: <= 30 characters
When a premise is split into individual units such as flats, apartments or business units. Cannot be present without either building_name or building_number. E.g. Flat 1, A, 10B
Possible values: <= 6 characters
When the PO Box Number field is populated it will contain PO BOX nnnnnn where n represents the PO Box number. Note that the PO Box details can occasionally consist of a combination of numbers and letters. PO Box Numbers are only allocated to Large Users.
Possible values: <= 60 characters
Used to supplment Organisation Name to identify a deparment within the organisation.
Possible values: <= 60 characters
Used to supplment Organisation Name to identify a deparment within the organisation
Possible values: [S
, L
, ``]
This indicates the type of user. It can only take the values 'S' or 'L' indicating small or large respectively. Large User Postcodes. These are assigned to one single address either due to the large volume of mail received at that address, or because a PO Box or Selectapost service has been set up. Small User Postcodes. These identify a group of Delivery Points.
On average there are 19 Delivery Points per Postcode. However this can vary between 1 and, in some cases, 100. There will never be more than 100 Delivery Points on a Postcode.
Small User Organisation Indicator can have the values 'Y' or space. A value of 'Y' indicates that a Small User Organisation is present at this address.
A unique Royal Mail 2-character code (the first numeric & the second alphabetical), which, when added to the Postcode, enables each live Delivery Point to be uniquely identified. Once the Delivery Point is deleted from PAF the DPS may be reused (although they aren’t reused until all remaining Delivery Points in the range have been allocated). The DPS for a Large User is always '1A' as each Large User has its own Postcode.
Possible values: <= 84 characters
A pre-computed string which sensibly combines building_number, building_name and sub_building_name. building_number, building_name and sub_building_name represent raw data from Royal Mail's and can be difficult to parse if you are unaware of how the Postcode Address File premise fields work together. For this reason, we also provide a pre-computed premise field which intelligently gathers these points into a single, simple premise string. This field is ideal if you want to pull premise information and thoroughfare information separately instead of using our address lines data.
The current administrative county to which the postcode has been assigned.
A Unitary Authority name, where one is present. If there is no Unitary Authority, the County name is used. This information is not static, because County boundaries may change due to administrative changes. Data
source: ONS
Postal counties were used for the distribution of mail before the Postcode system was introduced in the 1970s. The Former Postal County was the Administrative County at the time. This data rarely changes. May be empty.
Traditional counties are provided by the Association of British Counties. It is historical data, and can date from the 1800s. May be empty.
The current district/unitary authority to which the postcode has been assigned.
The current administrative/electoral area to which the postcode has been assigned. May be empty for a small number of addresses.
longitude object required
The longitude of the postcode (WGS84/ETRS89).
Can be a positive or negative decimal. E.g. -0.1283983
Returns an empty string if no location data is available.
string
number
latitude object required
The latitude of the postcode (WGS84/ETRS89).
Can be a positive or negative decimal. E.g. 51.5083983
.
Returns an empty string if no location data is available.
string
number
eastings object required
Eastings reference using the Ordnance Survey National Grid reference system.
Northern Ireland Eastings uses the Irish Grid Reference System.
Metres from origin. E.g. 550458
Returns an empty string if no location data is available. Otherwise a number is returned.
string
number
northings object required
Northings reference using the Ordnance Survey National Grid reference system
Northern Ireland Northings uses the Irish Grid Reference System
Metres from origin. E.g. 180458
Returns an empty string if no location data is available. Otherwise a number is returned
string
number
Possible values: [2000
]
Possible values: [Success
]
{
"result": {
"postcode": "SW1A 2AA",
"postcode_inward": "2AA",
"postcode_outward": "SW1A",
"post_town": "London",
"dependant_locality": "",
"double_dependant_locality": "",
"thoroughfare": "Downing Street",
"dependant_thoroughfare": "",
"building_number": "10",
"building_name": "",
"sub_building_name": "",
"po_box": "",
"department_name": "",
"organisation_name": "Prime Minister & First Lord Of The Treasury",
"udprn": 23747771,
"postcode_type": "L",
"su_organisation_indicator": "",
"delivery_point_suffix": "1A",
"line_1": "Prime Minister & First Lord Of The Treasury",
"line_2": "10 Downing Street",
"line_3": "",
"premise": "10",
"longitude": -0.12767,
"latitude": 51.503541,
"eastings": 530047,
"northings": 179951,
"country": "England",
"traditional_county": "Greater London",
"administrative_county": "",
"postal_county": "London",
"county": "London",
"district": "Westminster",
"ward": "St. James's",
"uprn": "100023336956",
"id": "paf_23747771",
"country_iso": "GBR",
"country_iso_2": "GB",
"county_code": "",
"language": "en",
"umprn": "",
"dataset": "paf"
},
"code": 2000,
"message": "Success"
}
{
"result": {
"postcode": "SW1A 2AA",
"postcode_inward": "2AA",
"postcode_outward": "SW1A",
"post_town": "London",
"dependant_locality": "",
"double_dependant_locality": "",
"thoroughfare": "Downing Street",
"dependant_thoroughfare": "",
"building_number": "10",
"building_name": "",
"sub_building_name": "",
"po_box": "",
"department_name": "",
"organisation_name": "Prime Minister & First Lord Of The Treasury",
"udprn": 23747771,
"postcode_type": "L",
"su_organisation_indicator": "",
"delivery_point_suffix": "1A",
"line_1": "Prime Minister & First Lord Of The Treasury",
"line_2": "10 Downing Street",
"line_3": "",
"premise": "10",
"longitude": -0.12767,
"latitude": 51.503541,
"eastings": 530047,
"northings": 179951,
"country": "England",
"traditional_county": "Greater London",
"administrative_county": "",
"postal_county": "London",
"county": "London",
"district": "Westminster",
"ward": "St. James's",
"uprn": "100023336956",
"id": "paf_23747771",
"country_iso": "GBR",
"country_iso_2": "GB",
"county_code": "",
"language": "en",
"umprn": "",
"dataset": "paf"
},
"code": 2000,
"message": "Success"
}
Resource not found
- application/json
- Schema
- Example (from schema)
Schema
API Response Code. Non 2xxx
code indicates a failure. This code will provide a more specific reason when a failure occurs and facilitates debugging.
Human readable error message supplied with every error response.
{
"code": 0,
"message": "string"
}