Sign up Login

Search the UK Electoral Roll

API Method: electoral_roll

Description

Searches the edited electoral register for a UK resident. Search by name and/or address.

Mandatory Parameters

Name Description
api_key or javascript_key Use your API key if invoking server-side. If invoking from the browser via JavaScript, generate a JavaScript key using the javascript_key method.

Optional Parameters

Name Description
client You can optionally include an identifier for your final client or user. This is logged in your usage log and you will be able to view your usage statistics by client.
output Set to json for a JSON response; the default response is XML. Not applicable to the SOAP API.
callback When using JSON, specify a JSONP wrapper in which the JSON response is to be wrapped.
records_per_page Specify the number of records to return on the current page. We offer page caching for this method - once your search is invoked, we store the pages on our server for 60 minutes; a subsequent request for a page of results from that search is displayed from the cache, at no charge to you. See result page caching.
page_num Zero based integer - current page number to return.
surname

The person's surname

Do not specify this if you wish to do an address-only search.

forename

The person's forename

Do not specify this if you wish to do an address-only search.

middle_initial

The person's second initial

Do not specify this if you wish to do an address-only search.

surname2

The 2nd resident's surname

It is possible to add a second name to your search so that it only finds records where both input criteria exist. e.g. only return records where a household contains a resident contained "smith" and "jones"

forename2

The 2nd resident's forename

middle_initial2

The 2nd residents second initial

place Enter a UK place, postcode, or postcode area. Do not specify this to do a national UK search.
street The street name.
premises The house number or name.

Returned Values

The XML response is contained within a <electoral_roll_res> / <full_electoral_roll_res> element.

Name Description
status Returns ok if the operation has succeeded, or error if an error has occurred; Returns the error_code for error details.
error_code Returns the error code when the status is error. See below for error codes.
t2a_version_number The current API version number.
credit_used The number of credits used in order to execute the request.
mode Returns normal or test when executed in the free test mode.
person_list

An array of person records.

Only one of the lists is present :-

  • If a place_list is returned, the place name is ambiguous, and the final user should be given a selection from the list.
  • If a street_list is returned, the street specified is ambiguous, and the final user should be given a selection from the list.
  • If a person_list is returned, the search has returned a list of people.
place_list An array of place records. This is present if the place name is ambiguous. No charge is made when a place_list is retuned.
street_list An array of street records. This is present if the street name is ambiguous. No charge is made when a street_list is returned.
premises_list

This is seen if the premises parameter is ambiguous or not specified; it is a free list of addresses at which there is data about the resident(s), and can be used to allow the end user to select the household to be viewed.

Use the name value from the selected premises to replace the premises input parameter value when re-invoking this method.

No charge is made when a premises_list is returned.

total_records

The total number of records, irrespective of the number displayed on any page.

This is only used when a person_list is present.

page_number

Current page being displayed, a zero-based integer.

This is only used when a person_list is present.

Error Codes

See the common error codes. There are no errors which are specific to this method.

Free Test Mode

When operating in the free test mode errors are returned if mandatory parameters are missing, or it returns a dummy data response, in an identical format to a real response.

Note that the mode is returned as test when the method is operating in the free test mode.

The free test mode for this method operates in the following manner:-

  • If the place parameter is set to leeds, a place_list is returned.
  • If the surname and place are both empty, a dummy street_list is returned.
  • If the surname is set (to anything) a dummy person_list is returned.

Example XML Response


<?xml version="1.0"?>
<electoral_roll_res>
  <mode>test</mode>
  <t2a_version_number>3.1.4.6</t2a_version_number>
  <status>ok</status>
  <credit_used>0</credit_used>
  <person_list>
    <person>
      <line_1>17</line_1>
      <line_2>Imagination Gardens</line_2>
      <line_3>Virtual Road</line_3>
      <place>Heslington</place>
      <town>York</town>
      <postcode>YO91 3X0</postcode>
      <addr_single_line>17 Imagination Gardens, Virtual Road, Heslington, York, YO91 3X0</addr_single_line>
      <title>Mr</title>
      <forename>Alan</forename>
      <surname>Fiction</surname>
      <name_single_line>Mr Alan Fiction</name_single_line>
    </person>
    <person>
      <line_1>17</line_1>
      <line_2>Imagination Gardens</line_2>
      <line_3>Virtual Road</line_3>
      <place>Heslington</place>
      <town>York</town>
      <postcode>YO91 3X0</postcode>
      <addr_single_line>17 Imagination Gardens, Virtual Road, Heslington, York, YO91 3X0</addr_single_line>
      <title>Mrs</title>
      <forename>Anne</forename>
      <middle_initial>J</middle_initial>
      <name_single_line>Mrs Anne J</name_single_line>     
    </person>
  </person_list>
  <er_searched>true</er_searched>
  <telephone_data_searched>true</telephone_data_searched>
</electoral_roll_res>

Looking for the old documentation? Download it here (PDF format)

API Method List

< Back to T2A API Documentation

  1. Search for a person (person_search)
  2. Find people at an address (address_person)
  3. Search the UK Electoral Roll (electoral_roll)
  4. Search the Full UK Electoral Roll (full_electoral_roll)
  5. Search for a residential telephone number (telephone_residential)
  6. Search for a business (business_search)
  7. Search for an address/postcode (address_search)
  8. Validate a telephone number (validate_telephone)
  9. Validate a mobile telephone number (validate_mobile_phone_number)
  10. Validate a credit card number (validate_credit_card)
  11. Validate an email address (validate_email)
  12. Validate a VAT number (validate_vat)
  13. TPS/CTPS check a telephone number (tps_full)
  14. Find UK dialling codes (area_code)
  15. Find international dialling codes (country_dial)
  16. Geo-Code an address (geo_code)
  17. Reverse Geo-Code (reverse_geo_code)
  18. Find company details (company_details)
  19. Find director details (director_details)
  20. Get a company credit report (company_credit_report)
  21. Find a location from an IP address (ip_location)
  22. Send a text message (send_text_message)
  23. Check the bereavement register (deceased)
  24. Bulk check the bereavement register (deceased_bulk)
  25. Check company name availability (company_name_check)
  26. Download a company document (company_document_download)
  27. Generate a secure JavaScript key (javascript_key)
  28. Create an asynchronous job (job_create)
  29. Read the progress of an asynchronous job (job_progress)
  30. Telephone number appending (tele_append)
  31. View information about your account (client_info)