Skip to content

Property Verifications

Please note:

This product is only available in the UK

Search for property title number

Use this API to find out the title number and tenure of a property based on the address supplied.

POST Search for property title number

API

Description: Retrieve the title number associated to the property

Endpoint: POST /api/v4/search_property

Properties

PropertySub-propertyRequiredTypeNotes
referenceyesstringVerification reference. A name to recognise the verification
addressyesobjectAn object describing the address you want to verify. Address object cannot be empty.
building_namenostring
building_numbernostring
line_1nostringAddress line 1
line_2nostringAddress line 2
localitynostringSuburb
province_namenostring
postal_codenostring

Sample Response

json
{
  "properties": [
    {
      "title_number": "DN100",
      "address": "27, Church Road, Exeter"
    }
  ]
}

Online Ownership Verification

This functionality allows businesses to confirm if a specific property is owned by a particular individual. Users can provide both property details (e.g. address or unique identifier) and the individual owner's details (e.g. full name) through the developer's application. The API will then verify ownership status against HM Land Registry records.

POST Create an Online Ownership verification


API

Description: Create a new Online Ownership Verification

Endpoint: POST /api/v4/properties

Properties:

PropertySub-propertyRequiredTypeNotes
referenceyesstringVerification reference. A name to recognise the verification
addressyesobjectAn object describing the address you want to verify. Address object cannot be empty.
building_namenostring
building_numbernostring
line_1nostringAddress line 1
line_2nostringAddress line 2
localitynostringSuburb
province_namenostring
postal_codenostring
oov_attributesyesobjectAn object of personal details of the individual being verified
firstnameyesstringFirstname of the person being verified
lastnameyesstringLast name of the person being verified
middle_namenostringMiddle name of the person being verified
title_numbernostringTitle number of the property being verified

Sample Response:

json
{
  "id":52,
  "reference":"TEST-REFERENCE",
  "created_by":"John Doe",
  "status":"active",
  "address":{
    "building_name":"",
    "building_number":"24",
    "line_1":"24 Dovedale Road",
    "line_2":"",
    "locality":"",
    "province_name":"Plymouth",
    "postal_code":"PL2 2RR"
  },
  "property_verifications":[
    {
        "title_number":"DN506574",
        "firstname":"John",
        "middle_name":"Kim",
        "lastname":"Doe",
        "type":"LandReg::OOV",
        "verification_result":"SINGLE_MATCH",
        "address":"24, Dovedale Road, Plymouth",
        "tenure":"freehold",
        "match_details":{
          "firstname":"MATCH",
          "middle_name":"MATCH",
          "surname":"MATCH",
          "match_information":[
              {
                "name":"HistoricalMatch",
                "value":false
              },
              {
                "name":"Ownership",
                "value":"Sole"
              }
          ],
          "string_match":false
        },
        "pdf":"/pdf/properties/:id/oov"
    }
  ]
}

GET Export Online Ownership Verification to PDF report

API

Description: Download PDF Report of Online Ownership Verification and archive from our server

Endpoint: GET /api/v4/pdf/properties/:id/oov

This functionality enables businesses to offer a more comprehensive property ownership search for their users. By providing property details through the application, users can initiate a title search through the API. The API will then retrieve complete ownership details from HM Land Registry, including an official copy of the title document and a detailed property plan (if available).

POST Create an Official Title Search


API

Description: Create a new Official Title Search verification

Endpoint: POST /api/v4/properties

Properties

PropertySub-propertyRequiredTypeNotes
referenceyesstringVerification reference. A name to recognise the verification
addressyesobjectAn object describing the address you want to verify. Address object cannot be empty.
building_namenostring
building_numbernostring
line_1nostringAddress line 1
line_2nostringAddress line 2
localitynostringSuburb
province_namenostring
postal_codenostring
res_attributesyesobjectAn object with details of the property being verified
title_numberyesstringTitle number of the property being verified

Sample Response

json
{
  "id": 54,
  "reference": "TEST",
  "created_by": "John Doe",
  "status": "active",
  "address": "24A, PL1 1AA",
  "property_verifications": [
    {
      "title_number": "GR506405",
      "file_format": "pdf",
      "pdf": "/api/v4/properties/61/res"
    }
  ]
}

GET Export Official Title Search Report

API

Description: Download Title Search of Property Verification in pdf/zip format

Endpoint: GET /api/v4/properties/:id/res

Examples

js
const http = require('axios')

http.post('https://integration.aplyid.co.uk/api/v4/properties', {
  reference: "TEST",
  address: {
    building_number : "24",
    line_1 : "24 Dovedale Road",
    province_name : "Plymouth",
    postal_code : "PL2 2RR"
  },
  oov_attributes: {
    firstname: "John",
    lastname: "Doe",
    middle_name: "Kim",
    title_number: "DS100"
  }
}, {
  headers: {
    'Aply-API-Key': 'YOUR_API_KEY',
    'Aply-Date': 'YOUR_DATE',
    'Aply-Signature': 'YOUR_GENERATED_SIGNATURE'
  }
}).then(response => {
  // Do some stuff
}).catch(error => {
  console.log(error.response.data.message)
})
js
const http = require('axios')
const contentDisposition = require('content-disposition')
const fs = require('node:fs')

http.get('https://integration.aplyid.co.uk/api/v4/pdf/properties/56/oov', {
  headers: {
    'Aply-API-Key': 'YOUR_API_KEY',
    'Aply-Date': 'YOUR_DATE',
    'Aply-Signature': 'YOUR_GENERATED_SIGNATURE'
  },
  responseType: 'stream'
})
.then(response => {
  const disposition = contentDisposition.parse(response.headers['content-disposition'])
  const filename = disposition.parameters.filename

  response.data.pipe(fs.createWriteStream(filename))
})
.catch(error => {
  console.log("Something went wrong downloading pdf")
})
js
const http = require('axios')

http.post('https://integration.aplyid.com/api/v4/search_property', {
{
  search_property: {
    reference: "TEST",
    address: {
      building_number : "24",
      line_1 : "24 Dovedale Road",
      province_name : "Plymouth",
      postal_code : "PL2 2RR"
    }
  }
}
}, {
headers: {
  'Aply-API-Key': 'YOUR_API_KEY',
  'Aply-Date': 'YOUR_DATE',
  'Aply-Signature': 'YOUR_GENERATED_SIGNATURE'
}
})
.then(response => {
  // Do some stuff
})
.catch(error => {
  console.log(error.response.data.message)
})
js
const http = require('axios')
axios.post('https://integration.aplyid.com/api/v4/properties', {
  reference: "TEST",
  address: {
    building_number : "24",
    line_1 : "24 Dovedale Road",
    province_name : "Plymouth",
    postal_code : "PL2 2RR"
  },
  res_attributes: {
    title_number: "GR506405"
  }
}, {
  headers: {
    'Aply-API-Key': 'YOUR_API_KEY',
    'Aply-Date': 'YOUR_DATE',
    'Aply-Signature': 'YOUR_GENERATED_SIGNATURE'
  }
})
.then(response => {
  // Do some stuff
})
.catch(error => {
  console.log(error.response.data.message)
})
js
const axios = require('axios')
const contentDisposition = require('content-disposition') 
const fs = require('node:fs')

axios.get('https://integration.aplyid.co.uk/api/v4/properties/61/res', {
  headers: {
      'Aply-API-Key': 'YOUR_API_KEY',
      'Aply-Date': 'YOUR_DATE',
      'Aply-Signature': 'YOUR_GENERATED_SIGNATURE'
  },
  responseType: 'stream'
})
.then(response => {
  const disposition = contentDisposition.parse(response.headers['content-disposition'])
  const filename = disposition.parameters.filename

  response.data.pipe(fs.createWriteStream(filename))
})
.catch(error => {
  console.log("Something went wrong downloading pdf")
})

Error Codes

401 Unauthorized

json
{
  "error_code": "AUTH_FAILED",
  "message": "Bad credentials"
}

403 Forbidden

json
{
  "error_code" : "FORBIDDEN",
  "message" : "You're not authorized to access this resource"
}

422 Unprocessable Content

json
{
  "error_code": "NOT_CREATED",
  "message": "Postcode is not in correct format."
}