Every API here is available over the APIs.io API and to AI agents over MCP.
{
"swagger": "2.0",
"info": {
"description": "",
"version": "1.3.9",
"title": "Sprift API",
"contact": {}
},
"host": "sprift.com",
"basePath": "/dashboard/api/v1",
"tags": [
{
"name": "Home"
},
{
"name": "User"
},
{
"name": "Search"
},
{
"name": "Property"
},
{
"name": "Property V2"
},
{
"name": "Share"
},
{
"name": "Insider"
}
],
"schemes": [
"https"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"security": [
{
"auth": []
}
],
"paths": {
"/": {
"get": {
"tags": [
"Home"
],
"summary": "Home Page",
"operationId": "HomePage",
"produces": [
"application/json"
],
"parameters": [
{
"name": "page",
"in": "query",
"description": "Pagination parameter",
"required": true,
"type": "integer",
"format": "int32"
},
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "Sprift API Key",
"required": true,
"type": "string"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Users Property Search History List - 10 items each page",
"schema": {
"$ref": "#/definitions/inline_response_200"
}
},
"403": {
"description": "Invalid API Key",
"schema": {
"$ref": "#/definitions/inline_response_403"
}
}
}
}
},
"/user/login": {
"post": {
"tags": [
"User"
],
"summary": "Login",
"description": "<p>This endpoint is to log in a different user. You do not need to call this Endpoint with your API username and password in order to use the API.</p><p>This Endpoint is intended to those who want to add Sprift platform into their platforms using an iFrame and let Sprift users to login to Sprift.</p>",
"operationId": "Login",
"consumes": [
"application/x-www-form-urlencoded"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "",
"required": true,
"type": "string"
},
{
"name": "username",
"in": "formData",
"description": "Username of the User that you want to log in.",
"required": true,
"type": "string"
},
{
"name": "password",
"in": "formData",
"description": "Password of the User that you want to log in.",
"required": true,
"type": "string"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Log user in",
"schema": {
"$ref": "#/definitions/inline_response_200_1"
}
},
"400": {
"description": "Missing credentials",
"schema": {
"$ref": "#/definitions/inline_response_400"
}
},
"403": {
"description": "Invalid API Key",
"schema": {
"$ref": "#/definitions/inline_response_403"
}
},
"404": {
"description": "User not found",
"schema": {
"$ref": "#/definitions/inline_response_404"
}
}
}
}
},
"/user/logout": {
"get": {
"tags": [
"User"
],
"summary": "Logout",
"operationId": "Logout",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "",
"required": true,
"type": "string"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "User Log out",
"schema": {
"$ref": "#/definitions/inline_response_200_2"
}
},
"403": {
"description": "Invalid API Key",
"schema": {
"$ref": "#/definitions/inline_response_403_1"
}
}
}
}
},
"/search": {
"get": {
"tags": [
"Search"
],
"summary": "Search Properties",
"operationId": "SearchProperties",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "",
"required": true,
"type": "string"
},
{
"name": "phrase",
"in": "query",
"description": "",
"required": true,
"type": "string"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property Address Search Result",
"schema": {
"$ref": "#/definitions/inline_response_200_3"
}
}
}
}
},
"/search/postcode/{postcode}": {
"get": {
"tags": [
"Search"
],
"summary": "Search Property Address BY POSTCODE",
"operationId": "SearchPropertiesByPostcode",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "",
"required": true,
"type": "string"
},
{
"name": "postcode",
"in": "path",
"description": "Postcode to search",
"required": true,
"type": "string"
},
{
"name": "commercial",
"in": "query",
"description": "If this parameter is set to 1, results will include commercial properties. If you do not want commercials then do not include this parameter or set it to 0.",
"required": false,
"type": "string"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property Address Search Result",
"schema": {
"$ref": "#/definitions/inline_response_200_3"
}
}
}
}
},
"/search/myproperties": {
"get": {
"tags": [
"Search"
],
"summary": "Search My Properties",
"operationId": "SearchMyProperties",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "",
"required": true,
"type": "string"
},
{
"name": "phrase",
"in": "query",
"description": "",
"required": true,
"type": "string"
},
{
"name": "page",
"in": "query",
"description": "",
"required": false,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/inline_response_200_4"
}
}
}
}
},
"/property/search": {
"post": {
"tags": [
"Property"
],
"summary": "Sprift Property Report",
"description": "Report types are: <p>1 = Market Appraisal Report / Desktop Research Report</p> <p>2 = Appointment Confirmation</p> <p>3 = Key Facts For Buyers / Key Property Facts </p><p>4 = Property Overview </p> <p>Pages to include are seperated by comma:</p> <p><b>agency</b> : Only For Appointment Confirmation (Report Type 2)</p><p><b>appraisal</b> : Only For Appointment Confirmation (Report Type 2)</p><p><b>helpful_info</b> : Only For Appointment Confirmation (Report Type 2)</p><p><b>toptips</b> : Only For Appointment Confirmation (Report Type 2)</p><p><b>photos</b> : (Report Type 1 and 3)</p><p><b>epc</b> : (Report Type 1 and 3)</p><p><b>titleplans</b> : (Report Type 1 and 3)</p><p><b>schools</b> : (Report Type 1 and 3)</p><p><b>transport</b> : (Report Type 1 and 3)</p><p><b>hpi</b></p><p><b>hpi_estimate</b></p><p><b>floorplans</b> : (Report Type 1 and 3)</p><p><b>about</b></p><p><b>sis</b> : (Report Type 1 and 3)</p><p><b>disclaimer</b> : Only For Key Facts reports (Report Type 3)</p><p><b>testimonials</b></p><p><b>notes</b> : Only For Market Appraisal reports (Report Type 1)</p><p><b>radon</b> : (Report Type 1 and 3)</p><p><b>soils_clay</b> : (Report Type 1 and 3)</p><p><b>masts_and_pylons</b> : (Report Type 1 and 3)</p><p><b>surface_water</b> : (Report Type 1 and 3)</p><p><b>river_seas</b> : (Report Type 1 and 3)</p><p><b>road_noise </b> : (Report Type 1 and 3)</p><p><b>coal_mining</b> : (Report Type 1 and 3)</p><p><b>landfill_sites</b> : (Report Type 1 and 3)</p><p><b>conservation_area</b> : (Report Type 1 and 3)</p><p><b>council_wards</b> : (Report Type 1 and 3)</p><p><b>listed_buildings</b> : (Report Type 1 and 3)</p><p><b>green_belt</b> : (Report Type 1 and 3)</p><p><b>rail_noise</b> : (Report Type 1 and 3)</p><p><b>road_noise</b> : (Report Type 1 and 3)</p>",
"operationId": "SpriftPropertyReport",
"consumes": [
"application/x-www-form-urlencoded"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "Sprift API Key",
"required": true,
"type": "string"
},
{
"name": "uprn",
"in": "formData",
"description": "",
"required": true,
"type": "number"
},
{
"name": "reportType",
"in": "formData",
"description": "If you want to get Sprift Report URL instead of the property data, you have to specify a report Type",
"required": false,
"type": "number"
},
{
"name": "reportPage",
"in": "formData",
"description": "If you are requesting the report url instead of data, you should specify which pages you want to include.",
"required": false,
"type": "string"
},
{
"name": "userID",
"in": "formData",
"description": "You can send a User ID of which you want to use its details. This parameter can only be used along with reportType option.",
"required": false,
"type": "number"
},
{
"name": "pdf",
"in": "formData",
"description": "If you want to recieve a download url for the report, you can add this parameter and set its value to true along with reportType parameter.",
"required": false,
"type": "boolean"
},
{
"name": "portal_version",
"in": "formData",
"description": "Suitable for embedding on your portal/websites - anonymised addresses with no door numbers. You need to pass 1 to use portal version.",
"required": false,
"type": "number"
},
{
"name": "bedroom",
"in": "formData",
"description": "This parameter allows override the bedroom value when generating the requested property report.",
"required": false,
"type": "number"
},
{
"name": "bathroom",
"in": "formData",
"description": "This parameter allows override the bathroom value when generating the requested property report.",
"required": false,
"type": "number"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property Details",
"schema": {
"$ref": "#/definitions/inline_response_200_5"
}
}
}
}
},
"/property/{propertyID}": {
"get": {
"tags": [
"Property"
],
"summary": "Request property details using property ID",
"operationId": "PropertyDetails",
"consumes": [
"application/x-www-form-urlencoded"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "Sprift API Key",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "Property ID",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property Details",
"schema": {
"$ref": "#/definitions/inline_response_200_5"
}
}
}
}
},
"/property/{uprn}/tv": {
"get": {
"tags": [
"Property"
],
"summary": "Returns TV availability of the property",
"description": "<p>TV availability of the property</p><p>BT, SKY and Virgin</p>",
"operationId": "PropertyDetails-Tv",
"consumes": [
"application/x-www-form-urlencoded"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "Sprift API Key",
"required": true,
"type": "string"
},
{
"name": "uprn",
"in": "path",
"description": "Property UPRN",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Tv Availability",
"schema": {
"$ref": "#/definitions/inline_response_200_6"
}
}
}
}
},
"/property/{propertyID}/maps": {
"get": {
"tags": [
"Property"
],
"summary": "Returns property map image, satellite image and street view image.",
"description": "<p>Get property map and satellite with title plan polygon and Google street view images as base64 encoded string.</p> <p>Images are Base64 encoded strings.</p>",
"operationId": "PropertyDetails-Maps",
"consumes": [
"applicaton/x-www-form-urlencoded"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "Sprift API Key",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "Property ID",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Map, Satellite and Street View Images",
"schema": {
"$ref": "#/definitions/inline_response_200_7"
}
}
}
}
},
"/property/{propertyID}/tpo": {
"get": {
"tags": [
"Property"
],
"summary": "Tree Preservation Orders Around the Property",
"operationId": "PropertyDetails-TPO",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "API Key",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "Property ID",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Tree Preservation Order List",
"schema": {
"$ref": "#/definitions/inline_response_200_8"
}
}
}
}
},
"/property/{propertyID}/listedbuildings": {
"get": {
"tags": [
"Property"
],
"summary": "Listed Buildings Around the Property",
"operationId": "PropertyDetails-LB",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "API Key",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "Property ID",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Listed Buildings List",
"schema": {
"$ref": "#/definitions/inline_response_200_9"
}
}
}
}
},
"/property/{propertyID}/recentlysold": {
"get": {
"tags": [
"Property"
],
"summary": "Property Details - Recently Sold Properties",
"operationId": "PropertyDetails-RS",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "API Key",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "Property ID",
"required": true,
"type": "integer",
"format": "int32"
},
{
"name": "userID",
"in": "query",
"description": "",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "bedroom",
"in": "query",
"description": "Bedroom numbers seperated by comma. 1,2,3,4,5,6(for greater than 5)",
"required": false,
"type": "string"
},
{
"name": "type",
"in": "query",
"description": "Property types seperated by comma. Flat,Detached,Semi-Detached,Terraced,Other",
"required": false,
"type": "string"
},
{
"name": "price1",
"in": "query",
"description": "Minimum price. Ex: 300000",
"required": false,
"type": "integer"
},
{
"name": "price2",
"in": "query",
"description": "Maximum price. Ex: 500000",
"required": false,
"type": "integer"
},
{
"name": "searchDistance",
"in": "query",
"description": "Search radius. Accepted values are : \"0\",\"0.25\", \"0.50\", \"1\",\"2\",\"3\", \"5\",\"10\"",
"required": false,
"type": "number"
},
{
"name": "searchDate",
"in": "query",
"description": "Properties sold in. Accepted values: \"6\",\"12\",\"18\",\"24\",\"36\",\"36+\"",
"required": false,
"type": "number"
},
{
"name": "sort",
"in": "query",
"description": "Sorts results. \"1: Price (asc)\", \"2: Price (desc)\" , \"3 : Distance (asc)\"",
"required": false,
"type": "number"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Recently sold property list",
"schema": {
"$ref": "#/definitions/inline_response_200_10"
}
}
}
}
},
"/property/{propertyID}/currentlyforsale": {
"get": {
"tags": [
"Property"
],
"summary": "Property Details - CFS-UO",
"operationId": "PropertyDetails-CFS-UO",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "",
"required": true,
"type": "integer",
"format": "int32"
},
{
"name": "bedroom",
"in": "query",
"description": "Bedroom numbers seperated by comma. 1,2,3,4,5,6(for greater than 5)",
"required": false,
"type": "string"
},
{
"name": "type",
"in": "query",
"description": "Property types seperated by comma. Flat,Detached,Semi-Detached,Terraced,Other",
"required": false,
"type": "string"
},
{
"name": "price1",
"in": "query",
"description": "Minimum price. Ex: 300000",
"required": false,
"type": "integer"
},
{
"name": "price2",
"in": "query",
"description": "Maximum price. Ex: 500000",
"required": false,
"type": "integer"
},
{
"name": "searchDistance",
"in": "query",
"description": "Search radius. Accepted values are : \"0\",\"0.25\", \"0.50\", \"1\",\"2\",\"3\", \"5\",\"10\"",
"required": false,
"type": "number"
},
{
"name": "sort",
"in": "query",
"description": "Sorts results. \"1: Price (asc)\", \"2: Price (desc)\" , \"3 : Distance (asc)\"",
"required": false,
"type": "number"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/inline_response_200_11"
}
}
}
}
},
"/property/{uprn}/{status}": {
"get": {
"tags": ["Property"],
"summary": "Property Details - Comparables (Unified)",
"description": "Returns comparable properties near the target property. `status` selects the listing category — sales: `available`, `sstc`, `forsalewithdrawn`, `soldwithdrawn`; lettings: `tolet`, `letagreed`, `letagreedwithdrawn`, `letwithdrawn`. Price, bedroom, property-type, distance and sort filters behave the same as on /currentlyforsale and /recentlysold.",
"operationId": "PropertyDetails-Comparables",
"produces": ["application/json"],
"parameters": [
{ "name": "SPRIFT-API-KEY", "in": "header", "required": true, "type": "string" },
{ "name": "uprn", "in": "path", "description": "Unique Property Reference Number", "required": true, "type": "integer" },
{
"name": "status", "in": "path", "required": true, "type": "string",
"description": "Listing status to filter by. Sales: `available` (currently listed for sale), `sstc` (sold subject to contract — sale agreed but not completed), `forsalewithdrawn` (was listed for sale, then withdrawn without a sale), `soldwithdrawn` (was listed for sale, went SSTC, then withdrawn from portal after sale completed). Lettings: `tolet` (currently listed to let), `letagreed` (tenant agreed), `letagreedwithdrawn` (was let agreed, then withdrawn), `letwithdrawn` (was listed to let, then withdrawn without agreement).",
"enum": ["available", "sstc", "forsalewithdrawn", "soldwithdrawn", "tolet", "letagreed", "letagreedwithdrawn", "letwithdrawn"]
},
{ "name": "bedroom", "in": "query", "required": false, "type": "string" },
{ "name": "type", "in": "query", "description": "Property types seperated by comma. Flat,Detached,Semi-Detached,Terraced,Other", "required": false, "type": "string" },
{ "name": "price1", "in": "query", "required": false, "type": "integer" },
{ "name": "price2", "in": "query", "required": false, "type": "integer" },
{ "name": "searchDistance", "in": "query", "description": "Search radius in miles (default 0.5)", "required": false, "type": "number" },
{ "name": "sort", "in": "query", "description": "1: Price asc, 2: Price desc, 3: Distance asc", "required": false, "type": "number" },
{ "name": "limit", "in": "query", "description": "Maximum number of results to return. Default 30, max 100.", "required": false, "type": "integer" },
{ "name": "days", "in": "query", "description": "Only return listings from the last N days. Omit for all time.", "required": false, "type": "integer" },
{ "name": "newBuild", "in": "query", "description": "Set to 1 to return new-build properties only.", "required": false, "type": "string" },
{ "name": "bungalow", "in": "query", "description": "Set to 1 to return bungalows only.", "required": false, "type": "string" }
],
"deprecated": false,
"responses": {
"200": { "description": "Comparables list", "schema": { "$ref": "#/definitions/inline_response_200_comparables" } },
"400": { "description": "Unknown comparable type" }
}
}
},
"/property/{uprn}/materialinformation": {
"get": {
"tags": ["Property"],
"summary": "Property Details - Material Information",
"operationId": "PropertyDetails-MaterialInformation",
"produces": ["application/json"],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "",
"required": true,
"type": "string"
},
{
"name": "uprn",
"in": "path",
"description": "Property UPRN",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/inline_response_200_13"
}
}
}
}
},
"/property/{uprn}/search": {
"get": {
"tags": [
"Property V2"
],
"summary": "Returns Raw Details of the property",
"operationId": "Property-RawData",
"consumes": [
"application/x-www-form-urlencoded"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "Sprift API Key",
"required": true,
"type": "string"
},
{
"name": "uprn",
"in": "path",
"description": "Property UPRN",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property Raw Details",
"schema": {
"$ref": "#/definitions/inline_response_200_v2_search"
}
}
}
}
},
"/property/{uprn}/propertyid": {
"get": {
"tags": [
"Property V2"
],
"summary": "Returns Property ID of the Property",
"operationId": "Property-ID",
"consumes": [
"application/x-www-form-urlencoded"
],
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "Sprift API Key",
"required": true,
"type": "string"
},
{
"name": "uprn",
"in": "path",
"description": "Property UPRN",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property ID",
"schema": {
"$ref": "#/definitions/inline_response_200_v2_propertyid"
}
}
}
}
},
"/property/{propertyID}/priceestimate": {
"get": {
"tags": [
"Property V2"
],
"summary": "Returns Price Estimate Details of the Property",
"operationId": "Property-Price-Estimate",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "API Key",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "Property ID",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property Price Estimate Details",
"schema": {
"$ref": "#/definitions/inline_response_200_v2_priceestimate"
}
}
}
}
},
"/property/{propertyID}/counciltax": {
"get": {
"tags": [
"Property V2"
],
"summary": "Returns Council Tax Details of the Property",
"operationId": "Property-Council-Tax",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "API Key",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "Property ID",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property Council Tax Details",
"schema": {
"$ref": "#/definitions/inline_response_200_v2_counciltax"
}
}
}
}
},
"/property/{propertyID}/epc": {
"get": {
"tags": [
"Property V2"
],
"summary": "Returns EPC Details of the Property",
"operationId": "Property-EPC",
"produces": [
"application/json"
],
"parameters": [
{
"name": "SPRIFT-API-KEY",
"in": "header",
"description": "API Key",
"required": true,
"type": "string"
},
{
"name": "propertyID",
"in": "path",
"description": "Property ID",
"required": true,
"type": "integer",
"format": "int32"
}
],
"deprecated": false,
"responses": {
"200": {
"description": "Property EPC Details",
"schema": {
"$ref": "#/definitions/inline_response_200_v2_epc"
}
}
}
}
},
"/property/{propertyID}/school": {
"get": {
"tags": [
"Property V2"
],
"summary": "Returns Nearby Schools Detail of the Pr
# --- truncated at 32 KB (106 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sprift/refs/heads/main/openapi/sprift-openapi.json