Sign up Login

Search for a Person

API Method: person_search


Searches the edited electoral register, phone book, companies house and consumer data for a UK resident.

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.

The person's name, for example:-

Mr John D Fawcett
J Fawcett
Fawcett, John

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

T2A will parse the name into the relevant components.

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.

Set to m or f to specify the gender to be returned, where that gender is known.

This parameter is only applicable to electoral roll data; any results from other data sources are not filtered by this parameter.

use_er Set to false to NOT search the electoral register. Defaults to true.
use_osis Set to false to NOT search the phone book. Defaults to true.
use_director Set to false to NOT search for directors using Companies House. Defaults to true.
fuzzy Defaults to true. Set to false to disable fuzzy matching.

Returned Values

The XML response is contained within a <person_search_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.

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.

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.


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

This is only used when a person_list is present.


Current page being displayed, a zero-based integer.

This is only used when a person_list is present.

er_searched Set to true if the electoral roll data was searched.

Set to true if the telephone data was searched. Note that licensing restrictions prevent telephone data being searched if:-

  • No surname is supplied
  • No place is supplied
  • The surname is less than 3 characters long.

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"?>
      <line_2>Imagination Gardens</line_2>
      <line_3>Virtual Road</line_3>
      <postcode>YO91 3X0</postcode>
      <addr_single_line>17 Imagination Gardens, Virtual Road, Heslington, York, YO91 3X0</addr_single_line>
      <name_single_line>Mr Alan Fiction</name_single_line>
      <telephone_number>(01904) 000000</telephone_number>
      <line_2>Imagination Gardens</line_2>
      <line_3>Virtual Road</line_3>
      <postcode>YO91 3X0</postcode>
      <addr_single_line>17 Imagination Gardens, Virtual Road, Heslington, York, YO91 3X0</addr_single_line>
      <name_single_line>Mrs Anne J</name_single_line>
      <telephone_number>(01904) 000000</telephone_number>

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)