Client Registration

Please select from the following areas that document the usage of our Web Api:

Api Url

To call this Api use the following url:

[POST]https://api.estatesit.uk/v7.0/api/registration
Api Authorization

You should have been provided an Api key from Estates IT. This will identify you whenever a request is made to the Api. The Api key must be sent in the authorization header for every request that you make. If you do not supply the Api key then you will receive a status code for unauthorized.

.NET Example:

using (var httpClient = new HttpClient())
{
    ...
    httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("{{apikey}}");
    ...
}

PHP Example:

$context = stream_context_create(array(

    'http' => array(

        'header' => "Authorization:", {{apikey}}
    ),
));
Api Post Content

The Web Api accepts JSON body content as the POST data containing the following fields:

Name Format Type Default Comments
Branch Details
source String Optional Website

The source for the lead.

Example:
"source":"Newspaper"

This has a maximum allowed character size of 30.

howhot Integer Optional 1

How hot the lead is.

Example:
"howhot":2
negotiator String Optional N/A

The negotiator who will deal with the lead.

Example:
"negotiator":"psmith"

This has a maximum allowed character size of 10.

Lead Details
title String Optional N/A

The title for the lead.

Example:
"title":"Mr"

This has a maximum allowed character size of 30.

fname String Mandatory N/A

The first name for the lead.

Example:
"fname":"Michael"

This has a maximum allowed character size of 40.

mname String Optional N/A

The middle name for the lead.

Example:
"mname":"Richard"

This has a maximum allowed character size of 40.

sname String Mandatory N/A

The last name for the lead.

Example:
"sname":"Jones"

This has a maximum allowed character size of 40.

salute String Optional Calculated From Name

The salutation for the lead.

Example:
"salute":"Mr Michael Jones"

This has a maximum allowed character size of 100.

emailaddr String Optional N/A

The email address for the lead.

Example:
"emailaddr":"michael.jones@hotmail.com"

This has a maximum allowed character size of 140.

phoneh String Optional N/A

The home phone number for the lead.

Example:
"phoneh":"(01234) 999 9999"

This has a maximum allowed character size of 25.

phonew String Optional N/A

The work phone number for the lead.

Example:
"phonew":"(01234) 999 9999"

This has a maximum allowed character size of 25.

mobile String Optional N/A

The mobile phone number for the lead.

Example:
"mobile":"(01234) 999 9999"

This has a maximum allowed character size of 25.

ehomepage String Optional N/A

The homepage for the lead.

Example:
"ehomepage":"https://www.i-am-a-good-lead.com"

This has a maximum allowed character size of 255.

addressfull String Optional N/A

The full address of the lead.

Example:
"addressfull":"8 Mulberry Place, Pinnell Road, Eltham, London, SE9 6AR, UK"

This should only be used if the address parts cannot be determined i.e. if the address is taken from a single free field input.

address0 String Optional N/A

The building name for the address of the lead.

Example:
"address0":"Building A"

This has a maximum allowed character size of 40.

address1 String Optional N/A

The house number for the address of the lead.

Example:
"address1":"8"

This has a maximum allowed character size of 10.

address2 String Optional N/A

The flat number for the address of the lead.

Example:
"address2":"9A"

This has a maximum allowed character size of 40.

address3 String Optional N/A

The street for the address of the lead.

Example:
"address3":"Pinnell Road"

This has a maximum allowed character size of 60.

address4 String Optional N/A

The area for the address of the lead.

Example:
"address4":"South London"

This has a maximum allowed character size of 60.

address5 String Optional N/A

The town for the address of the lead.

Example:
"address5":"Eltham"

This has a maximum allowed character size of 60.

address6 String Optional N/A

The county for the address of the lead.

Example:
"address6":"Kent"

This has a maximum allowed character size of 60.

postcode String Optional N/A

The postcode for the address of the lead.

Example:
"postcode":"SE9 6AR"

This has a maximum allowed character size of 12.

ccode String Optional UK

The country code for the address of the lead.

Example:
"ccode":"UK"

This has a maximum allowed character size of 3.

clclass String Mandatory R This is the type of lead that can be one of the following values:
Value Notes
A Applicant
B Purchaser
C Supplier
E Employee
G Guarantor
L Landlord
Q Solicitor
R Registration (should be used in most instances)
S Vendor
T Tenant
V Agent
Example:
"clclass":"R"
General Data Protection Rules
consent Boolean Optional N/A

Whether the lead has consented to marketing.

Example:
"consent":true
nocpost Boolean Optional N/A

Whether the lead has chosen not to be contacted by post.

Example:
"nocpost":true
nocemail Boolean Optional N/A

Whether the lead has chosen not to be contacted by email.

Example:
"nocemail":true
nocsms Boolean Optional N/A

Whether the lead has chosen not to be contacted by sms.

Example:
"nocsms":true
nocphone Boolean Optional N/A

Whether the lead has chosen not to be contacted by phone.

Example:
"nocphone":true
Requirements
pricetype String Optional N/A The required property type where:
Value Notes
Buy For Sale
Rent For Rent
Example:
"pricetype":"Buy"
pricehigh Decimal Optional N/A

The required maximum price of the property.

Example:
"pricehigh":150000.00
pricelow Decimal Optional N/A

The required minimum price of the property.

Example:
"pricelow":50000.00
market Integer Optional 0

The required market where 0=Any, 1=Residential, 2=Commercial.

Example:
"market":1
propbedr Integer Optional N/A

The required minimum number of bedrooms in the property.

Example:
"propbedr":1
propbeds Integer Optional N/A

The required minimum number of single bedrooms in the property.

Example:
"propbeds":2
propbedd Integer Optional N/A

The required minimum number of double bedrooms in the property.

Example:
"propbedd":3
proprecp Integer Optional N/A

The required minimum number of receptions in the property.

Example:
"proprecp":1
propbath Integer Optional N/A

The required minimum number of bathrooms in the property.

Example:
"propbath":2
propfloor Integer Optional N/A

The required minimum number of floors in the property.

Example:
"propfloor":5
propflono Integer Optional N/A

The required minimum number of floor numbers in the property.

Example:
"propflono":5
proprooms Integer Optional N/A

The required minimum number of rooms in the property.

Example:
"proprooms":5
propsqft Decimal Optional N/A

The required minimum size of the property in square feet.

Example:
"propsqft":50.50
proptypem String Optional N/A

The required list of property types.

Example:
"proptypem":"House;Flat"

Note that items should be delimited using a ';' character.

propstatm String Optional N/A

The required list of property statuses.

Example:
"propstatm":"Available;SSTC"

Note that items should be delimited using a ';' character.

proptenum String Optional N/A

The required list of property tenures.

Example:
"propstatm":"Freehold;Leasehold"

Note that items should be delimited using a ';' character.

buytolet Boolean Optional N/A

The required property is a buy to let.

Example:
"buytolet":true
overseas Boolean Optional N/A

The required property is overseas.

Example:
"overseas":true
pets Boolean Optional N/A

The required property allows pets.

Example:
"pets":true
smoker Boolean Optional N/A

The required property allows smokers.

Example:
"smoker":true
garden Boolean Optional N/A

The required property has a garden.

Example:
"garden":true
garage Boolean Optional N/A

The required property has a garage.

Example:
"garage":true
offstreetparking Boolean Optional N/A

The required property has off street parking.

Example:
"offstreetparking":true
period Boolean Optional N/A

The required property is of period design.

Example:
"period":true
roofterrace Boolean Optional N/A

The required property has a roof terrace.

Example:
"roofterrace":true
Other
Note that any other values that are added as part of the json content will be stored into the notes field if they do not relate to a existing field in PCHomes.
Api Return Codes

The following return codes can be returned from the Api service:

Code Comments
200 The current request was successful.
204 The current request has not found any content matching the search criteria.
401 The authorization key is invalid.
403 The authorization key not supplied, or forbidden.
404 The current request has returned no content.
Api Examples

The following examples show how to access the Web Api.

.NET Example:

// Build up the api request string.
var apiUrl = "https://api.estatesit.uk/v7.0/api/registration";

// Create http client.
using (var httpClient = new HttpClient())
{
    // Create json.
    var content = @"
    {
        'clclass': 'R',
        'emailaddr': 'michael.jones@estatesit.com',
        'title': 'Mr',
        'fname': 'Michael',
        'sname': 'Jones',
        'phonew': '+44(0)20 8859 1700',
        'address0': '',
        'address1': '8',
        'address2': '',
        'address3': 'Pinnell Road',
        'address4': '',
        'address5': 'Eltham',
        'address6': 'Kent',
        'postcode': 'SE9 6AR',
        'ccode': 'UK',
        'consent': true,
        'nocpost': false,
        'nocemail': false,
        'nocsms': false,
        'nocphone': false,
        'pricetype': 'Rent',
        'pricehigh': 2000,
        'pricelow': 500,
        'propbedr': 1,
        'propbeds': 0,
        'propbedd': 0,
        'proprecp': 0,
        'propbath': 2,
        'propfloor': 0,
        'propfloorno': 0,
        'proprooms': 0,
        'propsqft': 120,
        'proptypem': 'Flat;Maisonette',
        'propstatm': 'Let;To Let',
        'proptenum': 'Leasehold;Freehold',
        'buytolet': false,
        'overseas': false,
        'pets': true,
        'smoker': false,
        'garden': true,
        'offstreetparking': true,
        'period': false,
        'roofterrace': false,
        'notes': 'I would like someone to contact me please...',
        'negotiator': 'psmith'
    }";
    httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("{{apikey}}");
    var httpResponseMessage = await httpClient.PostAsync(apiUrl,content);
    Console.WriteLine(httpResponseMessage.StatusCode.ToString());
    var response = await httpResponseMessage.Content.ReadAsStringAsync();
    var xmlDocument = new XmlDocument();
    xmlDocument.LoadXml(response);
    ...
}
Back Programming Validator

Use of this software must be in accordance with the Estates IT ™ Limited licence agreement and implies acceptance of the terms stated therein.

Warning: This computer program is protected by copyright law and international treaties. Unauthorised reproduction or distribution of this program, or any portion of it, may result in severe civil or criminal penalties, and will be prosecuted.

By using the Web API provided by Estates IT you agree to our full list of terms and conditions.