DeskVal Property Valuation API
Comprehensive property valuation and attribute management
API Overview
The Property Valuation API provides endpoints for retrieving property attributes, submitting valuation requests, and checking valuation status. All endpoints return JSON responses.
https://data-api.deskval.ai/api/v1
Residential APIs
Residential property attributes and valuation services
Get Residential Attributes
/getResidentialAttributes
Retrieve available attributes that can be used when submitting a residential property valuation.
Residential Valuation
Short Datapoints
/residentialValuation
Submit residential property details to request a valuation using short datapoints.
Residential Valuation
Full Datapoints
/residentialValuationFullReport
Submit comprehensive residential property details to receive a full datapoint valuation.
HMO APIs
House in Multiple Occupation attributes and valuation services
Get HMO Attributes
/getHmoAttributes
Retrieve available attributes for HMO property valuation requests.
HMO Valuation
Short Datapoints
/hmoValuation
Submit HMO property details to request a valuation using short datapoints.
HMO Valuation
Full Datapoints
/hmoValuationFullReport
Submit comprehensive HMO property details for full datapoint valuation processing.
Multi Unit Block (MUB) APIs
Multi unit block attributes and valuation services
Get MUB Attributes
/getMubAttributes
Retrieve available attributes that can be used for multi unit block valuation requests.
MUB Valuation
Full Datapoints
/multiUnitBlockValuationFullReport
Submit a multi unit block containing block-level information and details for individual property units.
Reports
Retrieve completed property valuation reports
Authentication
All endpoints on the DeskVal API require an API Key for access.
Your API key must be sent in the request headers as shown below:
X-API-Key: your-api-key
If the API Key is missing, invalid, expired, or lacks access to the requested endpoint, the API will return a structured JSON error response.
Authentication Error Responses
| HTTP Status | Error Type | Example Message | Description |
|---|---|---|---|
| 400 Bad Request | Missing API Key | "API key is missing. Please provide a valid API key in the request headers." | The X-API-Key header was not provided in the request. |
| 401 Unauthorized | Invalid / Expired API Key | "The provided API key is either invalid or expired. Please verify your key and try again." | The provided API key is invalid or has expired. |
| 403 Forbidden | Inactive API Key | "API key is inactive. Please activate this key or use a different valid API key." | The API key exists but is currently inactive. |
| 401 Unauthorized | Access Denied (No Permission) | "Access denied: the provided API key does not have permission to use this API endpoint." | The API key is valid but not authorized to access this specific endpoint. |
Bad Request
{
"error": "API key is missing. Please provide a valid API key in the request headers."
}
Unauthorized
{
"error": "The provided API key is either invalid or expired. Please verify your key and try again."
}
Forbidden
{
"error": "API key is inactive. Please activate this key or use a different valid API key."
}
Unauthorized
{
"error": "Access denied: the provided API key does not have permission to use this API endpoint."
}
Rate Limit
All DeskVal API requests are subject to rate limiting
If the limit is exceeded, the API will return with 200 Too Many Requests response.
{
"success": false,
"msg": "Too many attempts. Please try again later."
}
Error Responses (Server & HTTP Errors)
Even if your request is valid, the API may return errors due to HTTP issues or server-side problems. The following are standard server error responses:
HTTP Errors Responses
| HTTP Status | Error Type | Example Message | Description |
|---|---|---|---|
| 405 Method Not Allowed | Invalid Request Method | "Invalid request method. Please verify the API documentation." | The HTTP method used is not supported for this endpoint (e.g., using GET instead of POST). |
| 500 Internal Server Error | Server Error | "Oops! Something went wrong. Please try again later." | The server encountered an unexpected condition. |
| 500 Internal Server Error | Internal Code Error | "Internal Server Error. Please contact support if this persists." | General fallback for uncaught exceptions or unexpected errors. |
Invalid Request Method
{
"success": false,
"message": "Invalid request method. Please verify the API documentation."
}
Internal Server Error
{
"success": false,
"message": "Internal Server Error. Please contact support if this persists."
}
