{"openapi":"3.1.0","jsonSchemaDialect":"https://json-schema.org/draft/2020-12/schema","info":{"title":"Property Insights ChatGPT Actions API","version":"1.0.0","description":"OpenAPI schema for connecting ChatGPT Custom Actions to Property Insights live UK property, location, and market data endpoints."},"servers":[{"url":"https://propertyinsights.co.uk/api/v1","description":"Production API"}],"externalDocs":{"description":"ChatGPT setup guide","url":"https://propertyinsights.co.uk/docs/chatgpt"},"tags":[{"name":"Address and Identity","description":"Address autocomplete, canonical address retrieval, and property identifiers."},{"name":"Land Registry","description":"HM Land Registry title lookup, document availability, Official Copy ordering and private title-register parsing."},{"name":"Property Analysis","description":"Valuation, comparables, sold prices, and renovation uplift tools."},{"name":"Property Reports","description":"Asynchronous branded PDF information packs and job status."},{"name":"Property Due Diligence","description":"Compliance, ownership, floor area, EPC, and council tax lookups."},{"name":"Location Intelligence","description":"Crime, area statistics, and nearby schools."},{"name":"Property Finance","description":"Property purchase tax calculations."},{"name":"Market Data","description":"House price index, mortgage rates, bank rates, and inflation."}],"paths":{"/property/analyse":{"get":{"operationId":"property_analysis","summary":"Analyse a target property using comparables, crime, council tax, HPI, and local intelligence.","description":"Analyse a target property using comparables, crime, council tax, HPI, and local intelligence.","tags":["Property Analysis"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/property-analysis"},"responses":{"200":{"description":"Combined property analysis including valuation context, comparables, and local intelligence.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode for the property being analysed.","schema":{"type":"string","minLength":3,"description":"UK postcode for the property being analysed."}},{"name":"price","in":"query","required":true,"description":"Asking price or agreed purchase price in GBP.","schema":{"type":"number","minimum":1,"description":"Asking price or agreed purchase price in GBP."}},{"name":"propertyType","in":"query","required":false,"description":"Property type such as Detached, Semi-Detached, Terraced, or Flat.","schema":{"type":"string","description":"Property type such as Detached, Semi-Detached, Terraced, or Flat."}},{"name":"bedrooms","in":"query","required":false,"description":"Number of bedrooms in the target property.","schema":{"type":"integer","minimum":0,"description":"Number of bedrooms in the target property."}},{"name":"squareFeet","in":"query","required":false,"description":"Internal floor area in square feet.","schema":{"type":"integer","minimum":1,"description":"Internal floor area in square feet."}},{"name":"squareMeters","in":"query","required":false,"description":"Internal floor area in square metres.","schema":{"type":"integer","minimum":1,"description":"Internal floor area in square metres."}},{"name":"portal","in":"query","required":false,"description":"Listing source such as rightmove or zoopla.","schema":{"type":"string","description":"Listing source such as rightmove or zoopla."}},{"name":"address","in":"query","required":false,"description":"Full or partial property address.","schema":{"type":"string","description":"Full or partial property address."}}]}},"/property/valuation":{"get":{"operationId":"property_valuation","summary":"Generate automated property valuation using HPI and sold comparables with confidence scoring.","description":"Generate automated property valuation using HPI and sold comparables with confidence scoring.","tags":["Property Analysis"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/property-valuation"},"responses":{"200":{"description":"Automated property valuation with confidence scoring and comparable context.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode for the property being valued.","schema":{"type":"string","minLength":3,"description":"UK postcode for the property being valued."}},{"name":"address","in":"query","required":true,"description":"Property address or house number and street.","schema":{"type":"string","minLength":2,"description":"Property address or house number and street."}},{"name":"city","in":"query","required":false,"description":"Optional city or town name.","schema":{"type":"string","description":"Optional city or town name."}},{"name":"months","in":"query","required":false,"description":"Historical lookback window in months.","schema":{"type":"integer","minimum":1,"maximum":120,"description":"Historical lookback window in months."}},{"name":"extensionArea","in":"query","required":false,"description":"Proposed extension size in square metres.","schema":{"type":"number","minimum":0,"description":"Proposed extension size in square metres."}},{"name":"renovationUplift","in":"query","required":false,"description":"Expected uplift percentage from renovation work.","schema":{"type":"number","minimum":0,"maximum":50,"description":"Expected uplift percentage from renovation work."}}]}},"/property/boundary":{"get":{"operationId":"property_boundary","summary":"Resolve a property UPRN, HM Land Registry title number, and INSPIRE boundary geometry for an England or Wales address. Completed lookups cost 35 credits.","description":"Resolve a property UPRN, HM Land Registry title number, and INSPIRE boundary geometry for an England or Wales address. Completed lookups cost 35 credits. A completed lookup costs 35 credits. Provide `uprn`, or both `address` and `postcode`. Ambiguous title matches return HTTP 409 and can be retried with `titleNumber`. Boundary coordinates describe HM Land Registry general boundaries and are not surveyed legal boundary coordinates.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"35 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/property-boundary"},"responses":{"200":{"description":"Canonical UPRN and address, matched HM Land Registry title number, and HMLR INSPIRE boundary in GeoJSON and GPS-point formats.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"uprn","in":"query","required":false,"description":"Preferred property identifier. Provide this, or provide both address and postcode.","schema":{"type":"string","pattern":"^\\d{1,12}$","description":"Preferred property identifier. Provide this, or provide both address and postcode."}},{"name":"address","in":"query","required":false,"description":"Property address. Required with postcode when uprn is not supplied.","schema":{"type":"string","minLength":2,"maxLength":300,"description":"Property address. Required with postcode when uprn is not supplied."}},{"name":"postcode","in":"query","required":false,"description":"England or Wales postcode. Required with address when uprn is not supplied.","schema":{"type":"string","minLength":3,"maxLength":12,"description":"England or Wales postcode. Required with address when uprn is not supplied."}},{"name":"titleNumber","in":"query","required":false,"description":"Optional title number used to resolve properties with more than one matching title.","schema":{"type":"string","minLength":3,"maxLength":20,"description":"Optional title number used to resolve properties with more than one matching title."}}]}},"/property/address":{"get":{"operationId":"uprn_address_lookup","summary":"Look up a canonical Great Britain address from a UPRN, or match an address and postcode to its UPRN. Completed lookups cost 35 credits.","description":"Look up a canonical Great Britain address from a UPRN, or match an address and postcode to its UPRN. Completed lookups cost 35 credits. A completed lookup costs 35 credits. Provide `uprn` on its own, or both `address` and `postcode`. Ambiguous address matches return HTTP 409 with candidate addresses and UPRNs.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"35 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/uprn-address"},"responses":{"200":{"description":"Canonical UPRN, postal address, postcode, lookup direction, and match type.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"uprn","in":"query","required":false,"description":"Unique Property Reference Number. Provide this on its own, or provide address and postcode instead.","schema":{"type":"string","pattern":"^\\d{1,12}$","description":"Unique Property Reference Number. Provide this on its own, or provide address and postcode instead."}},{"name":"address","in":"query","required":false,"description":"Full or partial property address. Required with postcode when uprn is not supplied.","schema":{"type":"string","minLength":2,"maxLength":300,"description":"Full or partial property address. Required with postcode when uprn is not supplied."}},{"name":"postcode","in":"query","required":false,"description":"Full Great Britain postcode. Required with address when uprn is not supplied.","schema":{"type":"string","minLength":5,"maxLength":8,"description":"Full Great Britain postcode. Required with address when uprn is not supplied."}}]}},"/address/autocomplete":{"get":{"operationId":"address_autocomplete_find","summary":"Find Great Britain address suggestions from a partial address or full postcode. Suggestions are free and return signed IDs for retrieval.","description":"Find Great Britain address suggestions from a partial address or full postcode. Suggestions are free and return signed IDs for retrieval. Find requests are free. Provide at least three characters and call `address_autocomplete_retrieve` when a user selects a suggestion.","tags":["Address and Identity"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"0 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/address-autocomplete"},"responses":{"200":{"description":"Ranked Great Britain address suggestions with signed selection IDs.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"query","in":"query","required":true,"description":"Partial address or full Great Britain postcode.","schema":{"type":"string","minLength":3,"maxLength":200,"description":"Partial address or full Great Britain postcode."}},{"name":"limit","in":"query","required":false,"description":"Maximum suggestions to return. Defaults to 6.","schema":{"type":"integer","minimum":1,"maximum":10,"description":"Maximum suggestions to return. Defaults to 6."}}]}},"/address/retrieve":{"get":{"operationId":"address_autocomplete_retrieve","summary":"Retrieve a selected Great Britain address, form fields, UPRN, and coordinates from a signed suggestion ID. Completed retrievals cost 35 credits.","description":"Retrieve a selected Great Britain address, form fields, UPRN, and coordinates from a signed suggestion ID. Completed retrievals cost 35 credits. A successful retrieve costs 35 credits. Suggestion IDs are signed and expire after 30 minutes.","tags":["Address and Identity"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"35 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/address-autocomplete"},"responses":{"200":{"description":"Canonical address, practical form fields, postcode, UPRN, and coordinates for the selected suggestion.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"id","in":"query","required":true,"description":"Signed suggestion ID returned by address_autocomplete_find. It expires after 30 minutes.","schema":{"type":"string","minLength":20,"maxLength":512,"description":"Signed suggestion ID returned by address_autocomplete_find. It expires after 30 minutes."}}]}},"/property/profile":{"post":{"operationId":"property_profile","summary":"Create a concise property profile with identity, title, tenure, property facts, Council Tax and review enquiries. Completed profiles cost 100 credits. Coverage: England and Wales only.","description":"Create a concise property profile with identity, title, tenure, property facts, Council Tax and review enquiries. Completed profiles cost 100 credits. Coverage: England and Wales only. A completed Property Profile costs 100 credits. Raw provider payloads and source metadata are intentionally omitted. EPC occupancy tenure is never used as legal tenure. Coverage by nation: England: Supported; Wales: Partial; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"100 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/property-profile"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"HMLR title matching, OS, EPC, Council Tax and Planning Data context are configured."},{"nation":"Wales","code":"WAL","status":"partial","label":"Partial","summary":"HMLR title matching, OS, EPC and Council Tax context are supported. England-only Planning Data constraints are not returned."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"Registers of Scotland title services are not integrated."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Land Registry Northern Ireland title services are not integrated."}],"responses":{"200":{"description":"Concise property identity, title result, normalised property facts, completeness and review enquiries.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"property":{"type":"object","additionalProperties":false,"properties":{"uprn":{"type":"string"},"address":{"type":"string"},"postcode":{"type":"string"},"coordinates":{"type":"object","additionalProperties":false,"properties":{"latitude":{"type":"number"},"longitude":{"type":"number"}},"required":["latitude","longitude"]}},"required":[]},"complete":{"type":"boolean"},"title":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"titleNumber":{"type":"string"},"tenure":{"type":"string"},"matchedAddress":{"type":"string"},"reason":{"type":"string"},"retryAfter":{"type":"string","format":"date-time"},"message":{"type":"string"},"candidates":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"titleNumber":{"type":"string"},"tenure":{"type":"string"},"matchedAddress":{"type":"string"}},"required":[]}}},"required":[]},"facts":{"type":"object","additionalProperties":false,"properties":{"legalTenure":{"type":"string"},"propertyType":{"type":["string","array"],"items":{"type":"string"}},"builtForm":{"type":"string"},"numberOfFloors":{"type":"number"},"buildingAge":{"type":"object","additionalProperties":false,"properties":{"year":{"type":["string","number"]},"period":{"type":"string"}},"required":[]},"floorAreaSqM":{"type":"number"},"councilTaxBand":{"type":"string"},"registeredAreaSqM":{"type":"number"},"planningConstraintCount":{"type":"integer"}},"required":["planningConstraintCount"]},"manualReviewRequired":{"type":"boolean"},"enquiries":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"code":{"type":"string"},"priority":{"type":"string"},"message":{"type":"string"}},"required":["code","priority","message"]}},"unavailable":{"type":"array","items":{"type":"string"}}},"required":["property","complete","title","facts","manualReviewRequired","enquiries","unavailable"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"property":{"type":"object","additionalProperties":false,"properties":{"uprn":{"type":"string","pattern":"^\\d{1,12}$","description":"Preferred UPRN. Provide this, or address and postcode."},"address":{"type":"string","minLength":2,"maxLength":300,"description":"Fictional example: 14 Example Avenue, Exampleton."},"postcode":{"type":"string","minLength":5,"maxLength":12}},"oneOf":[{"required":["uprn"]},{"required":["address","postcode"]}]}},"required":["property"]}}}}}},"/land-registry/title-matches":{"post":{"operationId":"land_registry_title_lookup","summary":"Find HM Land Registry title candidates from a UPRN, or from an address and postcode. Completed lookups cost 25 credits. Coverage: England and Wales only.","description":"Find HM Land Registry title candidates from a UPRN, or from an address and postcode. Completed lookups cost 25 credits. Coverage: England and Wales only. A completed title lookup costs 25 credits. If HM Land Registry delays the lookup, the API returns HTTP 503 with a retry time and does not deduct credits. Coverage by nation: England: Supported; Wales: Supported; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Land Registry"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"25 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/land-registry"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Wales","code":"WAL","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"Registers of Scotland title services are not integrated."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Land Registry Northern Ireland title services are not integrated."}],"responses":{"200":{"description":"HMLR title candidates, legal tenure and match status for the submitted property.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"count":{"type":"integer"},"reason":{"type":"string"},"retryAfter":{"type":"string","format":"date-time"},"message":{"type":"string"},"titles":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"titleNumber":{"type":"string"},"tenure":{"type":"string"},"matchedAddress":{"type":"string"}},"required":["titleNumber"]}}},"required":["status","count","titles"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"uprn":{"type":"string","pattern":"^\\d{1,12}$"},"address":{"type":"string","minLength":2,"maxLength":300,"description":"Fictional example: 14 Example Avenue, Exampleton."},"postcode":{"type":"string","minLength":5,"maxLength":12}},"oneOf":[{"required":["uprn"]},{"required":["address","postcode"]}]}}}}}},"/land-registry/titles/{titleNumber}":{"get":{"operationId":"land_registry_document_availability","summary":"Check a known HM Land Registry title number for title status, document availability and pricing. Completed checks cost 25 credits. Coverage: England and Wales only.","description":"Check a known HM Land Registry title number for title status, document availability and pricing. Completed checks cost 25 credits. Coverage: England and Wales only. A completed document-availability check costs 25 credits. This does not place an order. Coverage by nation: England: Supported; Wales: Supported; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Land Registry"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"25 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/land-registry"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Wales","code":"WAL","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"Registers of Scotland title services are not integrated."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Land Registry Northern Ireland title services are not integrated."}],"responses":{"200":{"description":"HMLR title status, pending applications, continuation details, document availability and pricing.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"title":{"type":"object","additionalProperties":false,"properties":{"titleNumber":{"type":"string"},"status":{"type":"string"},"message":{"type":"string"},"applicationsPending":{"type":"boolean"},"continuedUnderTitleNumber":{"type":"string"}},"required":["titleNumber","applicationsPending"]},"documents":{"type":"object","additionalProperties":false,"properties":{"register":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"backdated":{"type":"boolean"}},"required":["status","backdated"]},"plan":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"backdated":{"type":"boolean"}},"required":["status","backdated"]},"referred":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string"},"date":{"type":"string"},"entryNumbers":{"type":"array","items":{"type":"string"}},"status":{"type":"string"},"planOnly":{"type":"boolean"}},"required":["status","planOnly"]}}},"required":["register","plan","referred"]},"pricing":{"type":"object","additionalProperties":false,"properties":{"currency":{"type":"string","enum":["GBP"]},"register":{"type":"object","additionalProperties":false,"properties":{"hmlrPence":{"type":"integer"},"servicePence":{"type":"integer"},"totalPence":{"type":"integer"},"documentCredits":{"type":"integer"},"extractionCredits":{"type":"integer"},"totalCredits":{"type":"integer"}},"required":["hmlrPence","servicePence","totalPence","documentCredits","extractionCredits","totalCredits"]},"plan":{"type":"object","additionalProperties":false,"properties":{"hmlrPence":{"type":"integer"},"servicePence":{"type":"integer"},"totalPence":{"type":"integer"},"documentCredits":{"type":"integer"},"extractionCredits":{"type":"integer"},"totalCredits":{"type":"integer"}},"required":["hmlrPence","servicePence","totalPence","documentCredits","extractionCredits","totalCredits"]},"both":{"type":"object","additionalProperties":false,"properties":{"hmlrPence":{"type":"integer"},"servicePence":{"type":"integer"},"totalPence":{"type":"integer"},"documentCredits":{"type":"integer"},"extractionCredits":{"type":"integer"},"totalCredits":{"type":"integer"}},"required":["hmlrPence","servicePence","totalPence","documentCredits","extractionCredits","totalCredits"]},"registerWithExtraction":{"type":"object","additionalProperties":false,"properties":{"hmlrPence":{"type":"integer"},"servicePence":{"type":"integer"},"totalPence":{"type":"integer"},"documentCredits":{"type":"integer"},"extractionCredits":{"type":"integer"},"totalCredits":{"type":"integer"}},"required":["hmlrPence","servicePence","totalPence","documentCredits","extractionCredits","totalCredits"]},"bothWithExtraction":{"type":"object","additionalProperties":false,"properties":{"hmlrPence":{"type":"integer"},"servicePence":{"type":"integer"},"totalPence":{"type":"integer"},"documentCredits":{"type":"integer"},"extractionCredits":{"type":"integer"},"totalCredits":{"type":"integer"}},"required":["hmlrPence","servicePence","totalPence","documentCredits","extractionCredits","totalCredits"]}},"required":["currency","register","plan","both","registerWithExtraction","bothWithExtraction"]}},"required":["title","documents","pricing"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"titleNumber","in":"path","required":true,"description":"HM Land Registry title number.","schema":{"type":"string","minLength":3,"maxLength":20,"description":"HM Land Registry title number."}}]}},"/land-registry/test-register-extraction":{"post":{"operationId":"land_registry_test_register_extraction","summary":"Preview API-driven Land Registry title data as structured JSON using the fixed GR514442 synthetic test register. Live title orders are also available as official PDFs. This test is free, places no HMLR order and uses no Purchase Balance or API credits.","description":"Preview API-driven Land Registry title data as structured JSON using the fixed GR514442 synthetic test register. Live title orders are also available as official PDFs. This test is free, places no HMLR order and uses no Purchase Balance or API credits. This free playground-safe test generates a synthetic PDF in memory, does not call HMLR, does not create an Official Copy and does not use Purchase Balance or API credits.","tags":["Land Registry"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"Free","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/land-registry"},"responses":{"200":{"description":"Structured JSON containing the transcription and concise title data from the fixed synthetic GR514442 test register.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"fixture":{"type":"object","additionalProperties":false,"properties":{"titleNumber":{"type":"string"},"address":{"type":"string"},"postcode":{"type":"string"}},"required":["titleNumber","address","postcode"]},"document":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["synthetic_test_register"]},"filename":{"type":"string"},"official":{"type":"boolean"},"hmlrOrdered":{"type":"boolean"}},"required":["type","filename","official","hmlrOrdered"]},"text":{"type":"string"},"analysis":{"type":"object","additionalProperties":false,"properties":{"title":{"type":["object","null"],"additionalProperties":false,"properties":{"titleNumber":{"type":["string","null"]},"editionDate":{"type":["string","null"]},"classOfTitle":{"type":["string","null"]},"tenure":{"type":["string","null"]},"administrativeArea":{"type":["string","null"]},"propertyDescription":{"type":["string","null"]}}},"parties":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"role":{"type":"string"},"name":{"type":"string"},"address":{"type":["string","null"]}},"required":[]}},"rightsAndBurdens":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"category":{"type":"string"},"summary":{"type":"string"},"benefitingLand":{"type":["string","null"]},"burdenedLand":{"type":["string","null"]}},"required":[]}},"referredDocuments":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"documentType":{"type":"string"},"date":{"type":["string","null"]},"filedUnder":{"type":["string","null"]},"entryNumbers":{"type":"array","items":{"type":"string"}}},"required":[]}},"enquiries":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"code":{"type":"string"},"priority":{"type":"string"},"reason":{"type":"string"},"action":{"type":"string"}},"required":["code","priority","reason","action"]}},"warnings":{"type":"array","items":{"type":"string"}}},"required":["title","parties","rightsAndBurdens","referredDocuments","enquiries","warnings"]}},"required":["fixture","document","text","analysis"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{}}}}}}},"/land-registry/title-orders":{"post":{"operationId":"land_registry_official_copy_order","summary":"Purchase HMLR Official Copies using a known title number. Each PDF costs £7 from Purchase Balance plus 50 credits; register extraction can be added for 100 credits. Orders placed outside 06:30 to 23:00 Europe/London are reserved and queued for the next opening. Coverage: England and Wales only.","description":"Purchase HMLR Official Copies using a known title number. Each PDF costs £7 from Purchase Balance plus 50 credits; register extraction can be added for 100 credits. Orders placed outside 06:30 to 23:00 Europe/London are reserved and queued for the next opening. Coverage: England and Wales only. A register or plan takes £7 from Purchase Balance plus 50 API credits; both take £14 plus 100 credits. Setting extractRegisterText to true for a register-containing order adds 100 credits. Reservations happen atomically before submission and document charges are captured after HMLR accepts. Orders accepted outside 06:30 to 23:00 Europe/London have status waiting_for_hmlr and include retryAfter for the next opening. Clear pre-submission failures refund all reservations; uncertain submissions are quarantined with the cash reservation retained. Extraction failures leave the PDF available and refund only the 100 extraction credits. Held accounts and accounts with debt cannot order. The request requires a known title number, an enabled account entitlement, an Idempotency-Key header and exact maximumChargePence authorisation. Non-production is pinned to HMLR BGTest. Coverage by nation: England: Supported; Wales: Supported; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Land Registry"],"security":[{"apiKey":[]}],"x-openai-isConsequential":true,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":true,"x-property-insights-credit-cost":"50 credits per PDF; optional extraction +100 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/land-registry"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Wales","code":"WAL","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"Registers of Scotland title services are not integrated."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Land Registry Northern Ireland title services are not integrated."}],"responses":{"202":{"description":"Accepted HMLR title-document order with Purchase Balance, document-credit and optional register-extraction billing status.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string"},"titleNumber":{"type":"string"},"documentType":{"type":"string","enum":["register","plan","both"]},"status":{"type":"string"},"retryAfter":{"type":["string","null"]},"cost":{"type":"object","additionalProperties":false,"properties":{"currency":{"type":"string","enum":["GBP"]},"hmlrPence":{"type":"integer"},"servicePence":{"type":"integer"},"totalPence":{"type":"integer"},"paymentStatus":{"type":"string"},"documentCredits":{"type":"integer"},"documentCreditPaymentStatus":{"type":"string"},"extractionCredits":{"type":"integer"},"extractionPaymentStatus":{"type":"string"},"totalCredits":{"type":"integer"}},"required":["currency","hmlrPence","servicePence","totalPence","paymentStatus","documentCredits","documentCreditPaymentStatus","extractionCredits","extractionPaymentStatus","totalCredits"]},"documents":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string"},"status":{"type":"string"},"textStatus":{"type":"string"},"downloadUrl":{"type":"string"},"textUrl":{"type":["string","null"]},"extraction":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string","enum":["pending","processing","ready","failed","not_applicable"]},"text":{"type":"string"},"data":{"type":"object","additionalProperties":false,"properties":{"title":{"type":["object","null"],"additionalProperties":false,"properties":{"titleNumber":{"type":["string","null"]},"editionDate":{"type":["string","null"]},"classOfTitle":{"type":["string","null"]},"tenure":{"type":["string","null"]},"administrativeArea":{"type":["string","null"]},"propertyDescription":{"type":["string","null"]}}},"parties":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"role":{"type":"string"},"name":{"type":"string"},"address":{"type":["string","null"]}},"required":[]}},"rightsAndBurdens":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"category":{"type":"string"},"summary":{"type":"string"},"benefitingLand":{"type":["string","null"]},"burdenedLand":{"type":["string","null"]}},"required":[]}},"referredDocuments":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"documentType":{"type":"string"},"date":{"type":["string","null"]},"filedUnder":{"type":["string","null"]},"entryNumbers":{"type":"array","items":{"type":"string"}}},"required":[]}},"enquiries":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"code":{"type":"string"},"priority":{"type":"string"},"reason":{"type":"string"},"action":{"type":"string"}},"required":["code","priority","reason","action"]}},"warnings":{"type":"array","items":{"type":"string"}}},"required":["title","parties","rightsAndBurdens","referredDocuments","enquiries","warnings"]},"error":{"type":"string"}},"required":["status"]}},"required":["type","status","textStatus","downloadUrl","textUrl","extraction"]}},"error":{"type":["object","null"],"additionalProperties":false,"properties":{"code":{"type":"string"},"message":{"type":"string"}}},"createdAt":{"type":"string"},"completedAt":{"type":["string","null"]}},"required":["id","titleNumber","documentType","status","cost","documents","createdAt"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Unique key that prevents a retry from placing another paid order.","schema":{"type":"string","minLength":8,"maxLength":128,"description":"Unique key that prevents a retry from placing another paid order."}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"titleNumber":{"type":"string","minLength":3,"maxLength":20},"documentType":{"type":"string","enum":["register","plan","both"]},"extractRegisterText":{"type":"boolean","description":"Set true to add private register transcription and structured JSON for 100 credits. Defaults to false and cannot be used with a plan-only order."},"backdatedCopyConfirmed":{"type":"boolean","description":"Explicitly permit a backdated copy if HMLR reports pending applications."},"purchaseAuthorisation":{"type":"object","additionalProperties":false,"properties":{"maximumChargePence":{"type":"integer","enum":[700,1400],"description":"Maximum Purchase Balance amount authorised for the Official Copies. Use 700 for one PDF and 1400 for both PDFs. API credits are billed separately."}},"required":["maximumChargePence"]}},"required":["titleNumber","documentType","purchaseAuthorisation"]}}}}}},"/land-registry/title-orders/{orderId}":{"get":{"operationId":"land_registry_order_status","summary":"Get HMLR fulfilment, extraction and analysis status for an API-owned title order. Coverage: England and Wales only.","description":"Get HMLR fulfilment, extraction and analysis status for an API-owned title order. Coverage: England and Wales only. Coverage by nation: England: Supported; Wales: Supported; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Land Registry"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":true,"x-property-insights-credit-cost":"0 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/land-registry"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Wales","code":"WAL","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"Registers of Scotland title services are not integrated."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Land Registry Northern Ireland title services are not integrated."}],"responses":{"200":{"description":"Current HMLR fulfilment, retry time, original-document and extracted-text status.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string"},"titleNumber":{"type":"string"},"documentType":{"type":"string","enum":["register","plan","both"]},"status":{"type":"string"},"retryAfter":{"type":["string","null"]},"cost":{"type":"object","additionalProperties":false,"properties":{"currency":{"type":"string","enum":["GBP"]},"hmlrPence":{"type":"integer"},"servicePence":{"type":"integer"},"totalPence":{"type":"integer"},"paymentStatus":{"type":"string"},"documentCredits":{"type":"integer"},"documentCreditPaymentStatus":{"type":"string"},"extractionCredits":{"type":"integer"},"extractionPaymentStatus":{"type":"string"},"totalCredits":{"type":"integer"}},"required":["currency","hmlrPence","servicePence","totalPence","paymentStatus","documentCredits","documentCreditPaymentStatus","extractionCredits","extractionPaymentStatus","totalCredits"]},"documents":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string"},"status":{"type":"string"},"textStatus":{"type":"string"},"downloadUrl":{"type":"string"},"textUrl":{"type":["string","null"]},"extraction":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string","enum":["pending","processing","ready","failed","not_applicable"]},"text":{"type":"string"},"data":{"type":"object","additionalProperties":false,"properties":{"title":{"type":["object","null"],"additionalProperties":false,"properties":{"titleNumber":{"type":["string","null"]},"editionDate":{"type":["string","null"]},"classOfTitle":{"type":["string","null"]},"tenure":{"type":["string","null"]},"administrativeArea":{"type":["string","null"]},"propertyDescription":{"type":["string","null"]}}},"parties":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"role":{"type":"string"},"name":{"type":"string"},"address":{"type":["string","null"]}},"required":[]}},"rightsAndBurdens":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"category":{"type":"string"},"summary":{"type":"string"},"benefitingLand":{"type":["string","null"]},"burdenedLand":{"type":["string","null"]}},"required":[]}},"referredDocuments":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"documentType":{"type":"string"},"date":{"type":["string","null"]},"filedUnder":{"type":["string","null"]},"entryNumbers":{"type":"array","items":{"type":"string"}}},"required":[]}},"enquiries":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"code":{"type":"string"},"priority":{"type":"string"},"reason":{"type":"string"},"action":{"type":"string"}},"required":["code","priority","reason","action"]}},"warnings":{"type":"array","items":{"type":"string"}}},"required":["title","parties","rightsAndBurdens","referredDocuments","enquiries","warnings"]},"error":{"type":"string"}},"required":["status"]}},"required":["type","status","textStatus","downloadUrl","textUrl","extraction"]}},"error":{"type":["object","null"],"additionalProperties":false,"properties":{"code":{"type":"string"},"message":{"type":"string"}}},"createdAt":{"type":"string"},"completedAt":{"type":["string","null"]}},"required":["id","titleNumber","documentType","status","cost","documents","createdAt"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":36,"maxLength":36}}]}},"/land-registry/title-orders/{orderId}/documents/{kind}/original":{"get":{"operationId":"land_registry_document_download","summary":"Download a short-lived copy of an original HMLR title register or title plan owned by the API account. Coverage: England and Wales only.","description":"Download a short-lived copy of an original HMLR title register or title plan owned by the API account. Coverage: England and Wales only. Coverage by nation: England: Supported; Wales: Supported; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Land Registry"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":true,"x-property-insights-credit-cost":"0 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/land-registry"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Wales","code":"WAL","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"Registers of Scotland title services are not integrated."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Land Registry Northern Ireland title services are not integrated."}],"responses":{"200":{"description":"Temporary redirect to the account-owned original HMLR PDF.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":36,"maxLength":36}},{"name":"kind","in":"path","required":true,"schema":{"type":"string","enum":["register","plan"]}}]}},"/land-registry/title-orders/{orderId}/documents/{kind}/text":{"get":{"operationId":"land_registry_register_text","summary":"Retrieve a private transcription and structured JSON containing concise title facts and enquiry signals for an HMLR title register. Coverage: England and Wales only.","description":"Retrieve a private transcription and structured JSON containing concise title facts and enquiry signals for an HMLR title register. Coverage: England and Wales only. Coverage by nation: England: Supported; Wales: Supported; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Land Registry"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":true,"x-property-insights-credit-cost":"0 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/land-registry"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Wales","code":"WAL","status":"supported","label":"Supported","summary":"HMLR title matching, document availability and Official Copy ordering are configured."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"Registers of Scotland title services are not integrated."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Land Registry Northern Ireland title services are not integrated."}],"responses":{"200":{"description":"Structured JSON containing the title register transcription, concise title facts, parties, rights and burdens, referred documents, enquiries and warnings.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"titleNumber":{"type":["string","null"]},"documentType":{"type":"string","enum":["register"]},"text":{"type":"string"},"analysis":{"type":"object","additionalProperties":false,"properties":{"title":{"type":["object","null"],"additionalProperties":false,"properties":{"titleNumber":{"type":["string","null"]},"editionDate":{"type":["string","null"]},"classOfTitle":{"type":["string","null"]},"tenure":{"type":["string","null"]},"administrativeArea":{"type":["string","null"]},"propertyDescription":{"type":["string","null"]}}},"parties":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"role":{"type":"string"},"name":{"type":"string"},"address":{"type":["string","null"]}},"required":[]}},"rightsAndBurdens":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"category":{"type":"string"},"summary":{"type":"string"},"benefitingLand":{"type":["string","null"]},"burdenedLand":{"type":["string","null"]}},"required":[]}},"referredDocuments":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"documentType":{"type":"string"},"date":{"type":["string","null"]},"filedUnder":{"type":["string","null"]},"entryNumbers":{"type":"array","items":{"type":"string"}}},"required":[]}},"enquiries":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"code":{"type":"string"},"priority":{"type":"string"},"reason":{"type":"string"},"action":{"type":"string"}},"required":["code","priority","reason","action"]}},"warnings":{"type":"array","items":{"type":"string"}}},"required":["title","parties","rightsAndBurdens","referredDocuments","enquiries","warnings"]}},"required":["titleNumber","documentType","text","analysis"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":36,"maxLength":36}},{"name":"kind","in":"path","required":true,"schema":{"type":"string","enum":["register"]}}]}},"/information-packs":{"post":{"operationId":"information_pack_create","summary":"Create a private, branded Property Information Pack PDF from the available property, market, due-diligence, location and finance APIs.","description":"Create a private, branded Property Information Pack PDF from the available property, market, due-diligence, location and finance APIs. Requires an Idempotency-Key header. This operation reserves API credits and creates a stored PDF artifact.","tags":["Property Reports"],"security":[{"apiKey":[]}],"x-openai-isConsequential":true,"x-property-insights-playground-enabled":true,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"100 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/information-pack"},"responses":{"202":{"description":"Accepted Information Pack job with status and credit reservation details.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"Idempotency-Key","in":"header","required":true,"description":"Unique key for safely retrying this creation request without a second charge.","schema":{"type":"string","minLength":8,"maxLength":128,"description":"Unique key for safely retrying this creation request without a second charge."}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"property":{"type":"object","additionalProperties":false,"properties":{"address":{"type":"string","minLength":2,"maxLength":300,"description":"Full property address. Required with postcode when UPRN is not supplied."},"postcode":{"type":"string","minLength":3,"maxLength":12,"description":"UK postcode. Required with address when UPRN is not supplied."},"uprn":{"type":"string","pattern":"^\\d{1,12}$","description":"Preferred Unique Property Reference Number."},"titleNumber":{"type":"string","minLength":3,"maxLength":20,"description":"Optional HM Land Registry title number for an ambiguous property."},"askingPrice":{"type":"number","minimum":1,"description":"Optional asking or agreed purchase price in GBP."},"propertyType":{"type":"string","description":"Optional property type used to improve comparable filtering."},"bedrooms":{"type":"integer","minimum":0,"maximum":100,"description":"Optional bedroom count."},"floorAreaSqM":{"type":"number","minimum":1,"description":"Optional known internal floor area in square metres."}}},"brandProfileId":{"type":"string","description":"Optional saved brand profile UUID. The account default is used when omitted."},"scenarios":{"type":"object","additionalProperties":false,"properties":{"purchase":{"type":"object","additionalProperties":false,"properties":{"propertyType":{"type":"string","enum":["residential","commercial"]},"firstTimeBuyer":{"type":"boolean"},"higherRate":{"type":"boolean"},"ukResident":{"type":"boolean"}}},"renovation":{"type":"object","additionalProperties":false,"properties":{"extensionAreaSqM":{"type":"number","minimum":0},"renovationUpliftPercent":{"type":"number","minimum":0,"maximum":50}}}}},"report":{"type":"object","additionalProperties":false,"properties":{"title":{"type":"string","maxLength":120},"producedFor":{"type":"string","maxLength":140,"description":"Optional customer or organisation name displayed on the PDF cover."}}}},"required":["property"]}}}}}},"/information-packs/status":{"get":{"operationId":"information_pack_status","summary":"Check the status of a Property Information Pack job and retrieve its authenticated download path when ready.","description":"Check the status of a Property Information Pack job and retrieve its authenticated download path when ready.","tags":["Property Reports"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"0 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/information-pack"},"responses":{"200":{"description":"Current Information Pack generation status and download path when ready.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"jobId","in":"query","required":true,"description":"Information Pack job UUID returned by information_pack_create.","schema":{"type":"string","minLength":36,"maxLength":36,"description":"Information Pack job UUID returned by information_pack_create."}}]}},"/property/renovation-uplift-calculator":{"get":{"operationId":"property_renovation_uplift_calculator","summary":"Estimate post-renovation value from current value, floor area, extension area, and uplift assumptions.","description":"Estimate post-renovation value from current value, floor area, extension area, and uplift assumptions.","tags":["Property Analysis"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/renovation-uplift-calculator"},"responses":{"200":{"description":"Estimated uplift and post-renovation value output.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"value","in":"query","required":true,"description":"Current property value in GBP.","schema":{"type":"number","minimum":1,"description":"Current property value in GBP."}},{"name":"floorArea","in":"query","required":true,"description":"Existing floor area in square metres.","schema":{"type":"number","minimum":1,"description":"Existing floor area in square metres."}},{"name":"extensionArea","in":"query","required":false,"description":"Additional extension area in square metres.","schema":{"type":"number","minimum":0,"description":"Additional extension area in square metres."}},{"name":"renovationUplift","in":"query","required":false,"description":"Expected uplift percentage from improvements.","schema":{"type":"number","minimum":0,"maximum":50,"description":"Expected uplift percentage from improvements."}}]}},"/sdlt/calculate":{"post":{"operationId":"sdlt_calculate","summary":"Calculate UK Stamp Duty Land Tax for residential or commercial purchases.","description":"Calculate UK Stamp Duty Land Tax for residential or commercial purchases.","tags":["Property Finance"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/stamp-duty-land-tax"},"responses":{"200":{"description":"Stamp Duty Land Tax calculation breakdown for the submitted purchase scenario.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"propertyType":{"type":"string","enum":["residential","commercial"],"description":"Whether the purchase is residential or commercial."},"propertyPrice":{"type":"number","minimum":1,"description":"Purchase price in GBP."},"firstTimeBuyer":{"type":"boolean","description":"Whether first-time buyer relief should be applied."},"higherRate":{"type":"boolean","description":"Whether higher-rate additional property SDLT applies."},"ukResident":{"type":"boolean","description":"Whether the buyer is a UK tax resident."}},"required":["propertyType","propertyPrice"]}}}}}},"/council-tax/lookup":{"get":{"operationId":"council_tax_lookup","summary":"Get council tax band rates and the full billing authority name for a postcode.","description":"Get council tax band rates and the full billing authority name for a postcode.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/council-tax"},"responses":{"200":{"description":"Council tax bands, full billing authority name, and resolved tax year for the postcode.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode to look up council tax bands for.","schema":{"type":"string","minLength":3,"description":"UK postcode to look up council tax bands for."}},{"name":"taxYear","in":"query","required":false,"description":"Optional financial year in the format YYYY-YY.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}$","description":"Optional financial year in the format YYYY-YY."}}]}},"/council-tax/property-lookup":{"get":{"operationId":"council_tax_property_lookup","summary":"Resolve council tax details, including the full billing authority name, for a specific England/Wales residential address and postcode.","description":"Resolve council tax details, including the full billing authority name, for a specific England/Wales residential address and postcode.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/council-tax"},"responses":{"200":{"description":"Council tax information for the requested address and postcode, including the full billing authority name and resolved tax year.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode for the target property.","schema":{"type":"string","minLength":3,"description":"UK postcode for the target property."}},{"name":"address","in":"query","required":true,"description":"Most complete property-identifying address available. Include flat/unit, building name or number, and street where relevant; do not send agent or company names.","schema":{"type":"string","minLength":2,"description":"Most complete property-identifying address available. Include flat/unit, building name or number, and street where relevant; do not send agent or company names."}},{"name":"taxYear","in":"query","required":false,"description":"Optional financial year in the format YYYY-YY.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}$","description":"Optional financial year in the format YYYY-YY."}}]}},"/council-tax/property-candidates":{"get":{"operationId":"council_tax_property_candidates","summary":"Return VOA candidate address strings for an England/Wales postcode to help resolve ambiguous property inputs before a property lookup.","description":"Return VOA candidate address strings for an England/Wales postcode to help resolve ambiguous property inputs before a property lookup.","tags":["Property Insights"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"0 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/council-tax"},"responses":{"200":{"description":"Successful response.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"England or Wales postcode to retrieve VOA property candidates for.","schema":{"type":"string","minLength":3,"description":"England or Wales postcode to retrieve VOA property candidates for."}}]}},"/council-tax/authorities":{"get":{"operationId":"council_tax_authorities","summary":"Search selectable billing authorities for Great Britain council tax lookups.","description":"Search selectable billing authorities for Great Britain council tax lookups.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/council-tax"},"responses":{"200":{"description":"Selectable billing authorities for Great Britain council tax lookups.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"q","in":"query","required":false,"description":"Optional authority name or code fragment to search for.","schema":{"type":"string","description":"Optional authority name or code fragment to search for."}},{"name":"nation","in":"query","required":false,"description":"Optional nation filter.","schema":{"type":"string","enum":["England","Wales","Scotland"],"description":"Optional nation filter."}},{"name":"category","in":"query","required":false,"description":"Optional authority category filter.","schema":{"type":"string","description":"Optional authority category filter."}},{"name":"limit","in":"query","required":false,"description":"Maximum number of results to return.","schema":{"type":"integer","minimum":1,"maximum":100,"description":"Maximum number of results to return."}}]}},"/council-tax/authority-lookup":{"get":{"operationId":"council_tax_authority_lookup","summary":"Get council tax rates for a billing authority and tax year.","description":"Get council tax rates for a billing authority and tax year.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/council-tax"},"responses":{"200":{"description":"Council tax rates for a billing authority and tax year.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"authorityCode","in":"query","required":true,"description":"Authority LAD/GSS code such as E09000033 or W06000015.","schema":{"type":"string","minLength":2,"description":"Authority LAD/GSS code such as E09000033 or W06000015."}},{"name":"taxYear","in":"query","required":false,"description":"Optional financial year in the format YYYY-YY.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}$","description":"Optional financial year in the format YYYY-YY."}}]}},"/epc/search":{"get":{"operationId":"epc_search","summary":"Retrieve the latest EPC data by postcode or UPRN, with an optional address to narrow postcode result sets. No-data lookups return 404 and are not charged.","description":"Retrieve the latest EPC data by postcode or UPRN, with an optional address to narrow postcode result sets. No-data lookups return 404 and are not charged.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/epc"},"responses":{"200":{"description":"Latest EPC certificate data, ratings, and improvement potential for each matched property.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"address","in":"query","required":false,"description":"Optional address or house number for the EPC search.","schema":{"type":"string","minLength":2,"description":"Optional address or house number for the EPC search."}},{"name":"postcode","in":"query","required":false,"description":"UK postcode for the target property. Required unless uprn is supplied.","schema":{"type":"string","minLength":3,"description":"UK postcode for the target property. Required unless uprn is supplied."}},{"name":"uprn","in":"query","required":false,"description":"Optional Unique Property Reference Number. Can be used instead of postcode.","schema":{"type":"string","minLength":1,"description":"Optional Unique Property Reference Number. Can be used instead of postcode."}}]}},"/crime/by-postcode":{"get":{"operationId":"crime_by_postcode","summary":"Get Police UK crime aggregation for a postcode over a recent month window.","description":"Get Police UK crime aggregation for a postcode over a recent month window.","tags":["Location Intelligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/crime-statistics"},"responses":{"200":{"description":"Crime totals and category breakdown for the requested postcode area.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode to analyse.","schema":{"type":"string","minLength":3,"description":"UK postcode to analyse."}},{"name":"months","in":"query","required":false,"description":"Number of recent months to include.","schema":{"type":"integer","minimum":1,"maximum":24,"description":"Number of recent months to include."}},{"name":"includeRaw","in":"query","required":false,"description":"Include raw underlying crime records.","schema":{"type":"boolean","description":"Include raw underlying crime records."}}]}},"/company-ownership/search":{"get":{"operationId":"company_ownership_search","summary":"Search company-owned property records by company name, number, address, or title number.","description":"Search company-owned property records by company name, number, address, or title number.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/company-ownership-search"},"responses":{"200":{"description":"Company-owned property records matching the submitted query.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"term","in":"query","required":true,"description":"Search term such as a company name, company number, address, or title number.","schema":{"type":"string","minLength":2,"description":"Search term such as a company name, company number, address, or title number."}},{"name":"type","in":"query","required":false,"description":"Optional search mode to narrow the query.","schema":{"type":"string","enum":["company_name","company_number","address","title_number"],"description":"Optional search mode to narrow the query."}}]}},"/property/sold-comparables":{"get":{"operationId":"property_sold_comparables","summary":"Find sold comparable properties near a postcode.","description":"Find sold comparable properties near a postcode.","tags":["Property Analysis"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/sold-comparables"},"responses":{"200":{"description":"Comparable sold properties near the target postcode.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode to centre the comparable search on.","schema":{"type":"string","minLength":3,"description":"UK postcode to centre the comparable search on."}},{"name":"months","in":"query","required":false,"description":"How many months of sales history to inspect.","schema":{"type":"integer","minimum":1,"maximum":120,"description":"How many months of sales history to inspect."}},{"name":"address","in":"query","required":false,"description":"Optional target address to improve comparable matching.","schema":{"type":"string","description":"Optional target address to improve comparable matching."}}]}},"/property/sold-prices":{"get":{"operationId":"property_sold_prices","summary":"Get sold prices history with filtering by postcode, type, bedrooms, and price range.","description":"Get sold prices history with filtering by postcode, type, bedrooms, and price range.","tags":["Property Analysis"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/sold-prices"},"responses":{"200":{"description":"Filtered sold price history for the requested area.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode to centre the sold price search on.","schema":{"type":"string","minLength":3,"description":"UK postcode to centre the sold price search on."}},{"name":"radius","in":"query","required":false,"description":"Search radius in miles.","schema":{"type":"number","minimum":0.1,"description":"Search radius in miles."}},{"name":"bedrooms","in":"query","required":false,"description":"Number of bedrooms to filter by.","schema":{"type":"integer","minimum":0,"description":"Number of bedrooms to filter by."}},{"name":"propertyType","in":"query","required":false,"description":"Property type such as Detached, Semi-Detached, Terraced, or Flat.","schema":{"type":"string","description":"Property type such as Detached, Semi-Detached, Terraced, or Flat."}},{"name":"limit","in":"query","required":false,"description":"Maximum number of sold price records to return.","schema":{"type":"integer","minimum":1,"maximum":100,"description":"Maximum number of sold price records to return."}},{"name":"minPrice","in":"query","required":false,"description":"Minimum sold price filter in GBP.","schema":{"type":"integer","minimum":0,"description":"Minimum sold price filter in GBP."}},{"name":"maxPrice","in":"query","required":false,"description":"Maximum sold price filter in GBP.","schema":{"type":"integer","minimum":0,"description":"Maximum sold price filter in GBP."}},{"name":"since","in":"query","required":false,"description":"Only include sales on or after this date (YYYY-MM-DD).","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}(-\\d{2})?$","description":"Only include sales on or after this date (YYYY-MM-DD)."}}]}},"/area/sold-prices":{"get":{"operationId":"area_sold_prices","summary":"Get sold property prices for a UK postcode area from the complete Land Registry Price Paid dataset. Supports filtering by full postcode, street name, property type, price range, and new build status with pagination.","description":"Get sold property prices for a UK postcode area from the complete Land Registry Price Paid dataset. Supports filtering by full postcode, street name, property type, price range, and new build status with pagination. Provide either `area` (postcode area code) or `postcode` (full UK postcode). If postcode is provided, the area is inferred automatically.","tags":["Property Analysis"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/area-sold-prices"},"responses":{"200":{"description":"Sold property prices for the requested area with summary statistics and pagination.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"area","in":"query","required":false,"description":"Postcode area code such as SW1, M1, or BS8. Required if postcode is not provided.","schema":{"type":"string","description":"Postcode area code such as SW1, M1, or BS8. Required if postcode is not provided."}},{"name":"postcode","in":"query","required":false,"description":"Full UK postcode. If provided, area is inferred and results are filtered to this exact postcode.","schema":{"type":"string","description":"Full UK postcode. If provided, area is inferred and results are filtered to this exact postcode."}},{"name":"street","in":"query","required":false,"description":"Street name filter for partial case-insensitive matching within the area.","schema":{"type":"string","description":"Street name filter for partial case-insensitive matching within the area."}},{"name":"months","in":"query","required":false,"description":"Lookback period in months (default 24).","schema":{"type":"integer","minimum":1,"maximum":360,"description":"Lookback period in months (default 24)."}},{"name":"limit","in":"query","required":false,"description":"Maximum number of results to return (default 100).","schema":{"type":"integer","minimum":1,"maximum":500,"description":"Maximum number of results to return (default 100)."}},{"name":"offset","in":"query","required":false,"description":"Pagination offset (default 0).","schema":{"type":"integer","minimum":0,"description":"Pagination offset (default 0)."}},{"name":"type","in":"query","required":false,"description":"Property type: D (Detached), S (Semi-Detached), T (Terraced), F (Flat), O (Other).","schema":{"type":"string","enum":["D","S","T","F","O"],"description":"Property type: D (Detached), S (Semi-Detached), T (Terraced), F (Flat), O (Other)."}},{"name":"minPrice","in":"query","required":false,"description":"Minimum sold price filter in GBP.","schema":{"type":"integer","minimum":0,"description":"Minimum sold price filter in GBP."}},{"name":"maxPrice","in":"query","required":false,"description":"Maximum sold price filter in GBP.","schema":{"type":"integer","minimum":0,"description":"Maximum sold price filter in GBP."}},{"name":"newBuild","in":"query","required":false,"description":"Filter to new builds only when true.","schema":{"type":"boolean","description":"Filter to new builds only when true."}}]}},"/area/statistics":{"get":{"operationId":"area_statistics","summary":"Fetch consolidated area statistics for a postcode.","description":"Fetch consolidated area statistics for a postcode.","tags":["Location Intelligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/area-statistics"},"responses":{"200":{"description":"Area-level statistics and demographic summary for the postcode.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode to retrieve area statistics for.","schema":{"type":"string","minLength":3,"description":"UK postcode to retrieve area statistics for."}}]}},"/area/deprivation":{"get":{"operationId":"area_deprivation","summary":"Get English Indices of Deprivation scores, ranks, deciles, and domain breakdowns for a postcode.","description":"Get English Indices of Deprivation scores, ranks, deciles, and domain breakdowns for a postcode.","tags":["Location Intelligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/deprivation"},"responses":{"200":{"description":"LSOA deprivation score, rank, decile, local authority comparison, and domain breakdown.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"Full English postcode to analyse.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full English postcode to analyse."}}]}},"/area/demographics":{"get":{"operationId":"area_demographics","summary":"Get combined Census 2021 age, household, tenure, bedrooms, ethnicity, religion, qualifications, and occupation data for a postcode.","description":"Get combined Census 2021 age, household, tenure, bedrooms, ethnicity, religion, qualifications, and occupation data for a postcode.","tags":["Location Intelligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/demographics"},"responses":{"200":{"description":"Combined Census 2021 counts and percentages for the postcode LSOA.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"Full England or Wales postcode to analyse.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full England or Wales postcode to analyse."}}]}},"/area/liveability":{"get":{"operationId":"area_liveability","summary":"Get the nearest liveability score, component scores, tags, and local summaries using a postcode or coordinates.","description":"Get the nearest liveability score, component scores, tags, and local summaries using a postcode or coordinates.","tags":["Location Intelligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/liveability"},"responses":{"200":{"description":"Nearest H3 liveability score, components, tags, and supporting local summaries.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":false,"description":"Full English postcode. Alternatively provide latitude and longitude.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full English postcode. Alternatively provide latitude and longitude."}},{"name":"latitude","in":"query","required":false,"description":"Latitude when postcode is omitted.","schema":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude when postcode is omitted."}},{"name":"longitude","in":"query","required":false,"description":"Longitude when postcode is omitted.","schema":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude when postcode is omitted."}}]}},"/connectivity/broadband":{"get":{"operationId":"connectivity_broadband","summary":"Get aggregated Ofcom broadband availability and predicted speed data for a postcode without exposing address-level records.","description":"Get aggregated Ofcom broadband availability and predicted speed data for a postcode without exposing address-level records.","tags":["Location Intelligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/broadband"},"responses":{"200":{"description":"Postcode-level broadband availability and predicted speed aggregates.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"Full UK postcode.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full UK postcode."}}]}},"/connectivity/mobile":{"get":{"operationId":"connectivity_mobile","summary":"Get aggregated Ofcom mobile coverage scores and technology availability by network for a postcode without exposing address-level records.","description":"Get aggregated Ofcom mobile coverage scores and technology availability by network for a postcode without exposing address-level records.","tags":["Location Intelligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/mobile-coverage"},"responses":{"200":{"description":"Postcode-level mobile network signal and technology aggregates.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"Full UK postcode.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full UK postcode."}}]}},"/planning/constraints":{"get":{"operationId":"planning_constraints","summary":"Find known listed building, conservation area, Article 4, and tree preservation constraints near a postcode or coordinate.","description":"Find known listed building, conservation area, Article 4, and tree preservation constraints near a postcode or coordinate. Source authority coverage is incomplete. An empty response does not prove that no constraint applies. Coverage by nation: England: Supported; Wales: Not supported; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/planning-constraints"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"All configured Planning Data datasets are England-only. Individual authority coverage can still be incomplete."},{"nation":"Wales","code":"WAL","status":"not-supported","label":"Not supported","summary":"Welsh planning designations are not configured."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"Scottish planning designations are not configured."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Northern Irish planning designations are not configured."}],"responses":{"200":{"description":"Known planning constraints near the requested location with source freshness and coverage warnings.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":false,"description":"Full UK postcode. Alternatively provide latitude and longitude.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full UK postcode. Alternatively provide latitude and longitude."}},{"name":"latitude","in":"query","required":false,"description":"Latitude when postcode is omitted.","schema":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude when postcode is omitted."}},{"name":"longitude","in":"query","required":false,"description":"Longitude when postcode is omitted.","schema":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude when postcode is omitted."}},{"name":"radiusMetres","in":"query","required":false,"description":"Search radius in metres. Defaults to 100.","schema":{"type":"integer","minimum":0,"maximum":2000,"description":"Search radius in metres. Defaults to 100."}},{"name":"datasets","in":"query","required":false,"description":"Optional comma-separated dataset names.","schema":{"type":"string","description":"Optional comma-separated dataset names."}},{"name":"includeGeometry","in":"query","required":false,"description":"Include GeoJSON geometry. Defaults to false.","schema":{"type":"boolean","description":"Include GeoJSON geometry. Defaults to false."}},{"name":"limit","in":"query","required":false,"description":"Maximum returned constraints.","schema":{"type":"integer","minimum":1,"maximum":100,"description":"Maximum returned constraints."}}]}},"/property/flood-risk":{"get":{"operationId":"property_flood_risk","summary":"Screen a property location against open flood probability, historic flooding, flood defences, river, sea, surface-water, reservoir and English coastal mapping. Completed screens cost 10 credits. Coverage: England supported, Wales partial, Scotland and Northern Ireland not supported.","description":"Screen a property location against open flood probability, historic flooding, flood defences, river, sea, surface-water, reservoir and English coastal mapping. Completed screens cost 10 credits. Coverage: England supported, Wales partial, Scotland and Northern Ireland not supported. A completed screen costs 10 credits. Screening only. It does not replace an official conveyancing search, insurance check or professional flood assessment. Coverage by nation: England: Supported; Wales: Partial; Scotland: Not supported; Northern Ireland: Not supported.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"10 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/flood-risk"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"River, sea, surface water, defended probability, reservoirs, recorded outlines, defences and NCERM coastal mapping."},{"nation":"Wales","code":"WAL","status":"partial","label":"Partial","summary":"River, sea and surface-water mapping is configured. English reservoir, defence, recorded-history and NCERM layers do not apply."},{"nation":"Scotland","code":"SCO","status":"not-supported","label":"Not supported","summary":"SEPA flood sources are not configured."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"DfI Rivers flood sources are not configured."}],"responses":{"200":{"description":"Flood probability, recorded flood history, nearby EA defences, river, sea, surface-water, reservoir and English coastal screening.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"location":{"type":"object","additionalProperties":false,"properties":{"postcode":{"type":"string"},"country":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"},"radiusMetres":{"type":"integer"}},"required":["latitude","longitude","radiusMetres"]},"coverage":{"type":"string"},"complete":{"type":"boolean"},"riskLevel":{"type":"string"},"risks":{"type":"object","additionalProperties":false,"properties":{"riverAndSea":{"type":"object","additionalProperties":false,"properties":{"riskLevel":{"type":"string"},"count":{"type":"integer"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["riskLevel","count","details"]},"riverAndSeaLikelihood":{"type":"object","additionalProperties":false,"properties":{"riskLevel":{"type":"string"},"count":{"type":"integer"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["riskLevel","count","details"]},"surfaceWater":{"type":"object","additionalProperties":false,"properties":{"riskLevel":{"type":"string"},"count":{"type":"integer"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["riskLevel","count","details"]},"reservoir":{"type":"object","additionalProperties":false,"properties":{"riskLevel":{"type":"string"},"count":{"type":"integer"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["riskLevel","count","details"]},"coastalErosion":{"type":"object","additionalProperties":false,"properties":{"riskLevel":{"type":"string"},"count":{"type":"integer"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["riskLevel","count","details"]},"coastalGroundInstability":{"type":"object","additionalProperties":false,"properties":{"riskLevel":{"type":"string"},"count":{"type":"integer"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["riskLevel","count","details"]},"historicFlooding":{"type":"object","additionalProperties":false,"properties":{"riskLevel":{"type":"string"},"count":{"type":"integer"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["riskLevel","count","details"]},"floodDefences":{"type":"object","additionalProperties":false,"properties":{"riskLevel":{"type":"string"},"count":{"type":"integer"},"details":{"type":"array","items":{"type":"object","additionalProperties":true}}},"required":["riskLevel","count","details"]}},"required":["riverAndSea","riverAndSeaLikelihood","surfaceWater","reservoir","coastalErosion","coastalGroundInstability","historicFlooding","floodDefences"]}},"required":["location","coverage","complete","riskLevel","risks"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":false,"description":"Full England or Wales postcode. Alternatively provide latitude and longitude.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full England or Wales postcode. Alternatively provide latitude and longitude."}},{"name":"latitude","in":"query","required":false,"description":"Latitude when postcode is omitted.","schema":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude when postcode is omitted."}},{"name":"longitude","in":"query","required":false,"description":"Longitude when postcode is omitted.","schema":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude when postcode is omitted."}},{"name":"radiusMetres","in":"query","required":false,"description":"Nearby flood-defence search radius in metres. Defaults to 250.","schema":{"type":"integer","minimum":25,"maximum":2000,"description":"Nearby flood-defence search radius in metres. Defaults to 250."}}]}},"/property/environmental-risk":{"get":{"operationId":"property_environmental_risk","summary":"Screen flood, indicative radon potential, noise, landfill, coal mining, invasive plants, current air quality and groundwater-protection factors with explicit data-availability statuses. Pricing is 5 to 20 credits based on the selected live source groups. Coverage is partial in every UK nation and very limited in Northern Ireland.","description":"Screen flood, indicative radon potential, noise, landfill, coal mining, invasive plants, current air quality and groundwater-protection factors with explicit data-availability statuses. Pricing is 5 to 20 credits based on the selected live source groups. Coverage is partial in every UK nation and very limited in Northern Ireland. Pricing is 5 to 20 credits based on selected live source groups. Radon is a conservative 1 km indicative atlas result. Historic landfill is an England-only aggregate 250 metre proximity screen while its recorded conditional licence is current. Authorised landfill is not queried. Official reports remain necessary for definitive detail. Coverage by nation: England: Partial; Wales: Partial; Scotland: Partial; Northern Ireland: Very limited.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"5–20 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/environmental-risk"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"partial","label":"Partial","summary":"Flood, indicative radon, coal, BGS ground context, strategic noise, source-protection zones and UK-AIR are configured. Landfill and invasive plants remain unresolved."},{"nation":"Wales","code":"WAL","status":"partial","label":"Partial","summary":"Welsh flood mapping, indicative radon, coal/BGS context and UK-AIR are configured. English noise and source-protection layers do not apply."},{"nation":"Scotland","code":"SCO","status":"partial","label":"Partial","summary":"Indicative radon, coal/BGS context and UK-AIR are configured. Flood, strategic noise and source-protection sources are not configured."},{"nation":"Northern Ireland","code":"NI","status":"partial","label":"Very limited","summary":"Indicative radon and nearest UK-AIR context are configured. Flood and ground sources are not configured."}],"responses":{"200":{"description":"Normalised environmental factors with concise details and explicit matched, clear, unavailable, not_covered or licence_required statuses.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"location":{"type":"object","additionalProperties":false,"properties":{"postcode":{"type":"string"},"country":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"},"radiusMetres":{"type":"integer"}},"required":["latitude","longitude","radiusMetres"]},"coverage":{"type":"string"},"complete":{"type":"boolean"},"riskLevel":{"type":"string"},"factors":{"type":"object","description":"Keys are the requested factors.","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string","enum":["matched","clear","unavailable","not_covered","licence_required"]},"riskLevel":{"type":"string"},"details":{"type":"object","additionalProperties":true},"note":{"type":"string"}},"required":["status","riskLevel"]}}},"required":["location","coverage","complete","riskLevel","factors"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":false,"description":"Full UK postcode. Alternatively provide latitude and longitude.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full UK postcode. Alternatively provide latitude and longitude."}},{"name":"latitude","in":"query","required":false,"description":"Latitude when postcode is omitted.","schema":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude when postcode is omitted."}},{"name":"longitude","in":"query","required":false,"description":"Longitude when postcode is omitted.","schema":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude when postcode is omitted."}},{"name":"radiusMetres","in":"query","required":false,"description":"Flood-defence, landslide and ground-context radius. Defaults to 250.","schema":{"type":"integer","minimum":25,"maximum":2000,"description":"Flood-defence, landslide and ground-context radius. Defaults to 250."}},{"name":"factors","in":"query","required":false,"description":"Comma-separated factors or `all`. Supported: flood, radon, noise, landfill, coal_mining, invasive_plants, air_quality_today, groundwater_source_protection.","schema":{"type":"string","description":"Comma-separated factors or `all`. Supported: flood, radon, noise, landfill, coal_mining, invasive_plants, air_quality_today, groundwater_source_protection."}}]}},"/property/ground-risk":{"get":{"operationId":"property_ground_risk","summary":"Screen a property location against open coal-mining constraint layers, nearby BGS recorded landslides and BGS 1:50,000 geological context. Completed screens cost 5 credits. Coverage: Great Britain supported, Northern Ireland not supported.","description":"Screen a property location against open coal-mining constraint layers, nearby BGS recorded landslides and BGS 1:50,000 geological context. Completed screens cost 5 credits. Coverage: Great Britain supported, Northern Ireland not supported. A completed screen costs 5 credits. Screening only. The open geology mapping is descriptive context and does not replace licensed GeoSure hazard data. Coverage by nation: England: Supported; Wales: Supported; Scotland: Supported; Northern Ireland: Not supported.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"5 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/ground-risk"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"Mining Remediation Authority coal layers and BGS landslide/geology context are configured."},{"nation":"Wales","code":"WAL","status":"supported","label":"Supported","summary":"Mining Remediation Authority coal layers and BGS landslide/geology context are configured."},{"nation":"Scotland","code":"SCO","status":"supported","label":"Supported","summary":"Great Britain coal and BGS services are queried where their source records provide coverage."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"Northern Irish mining and geological sources are not configured."}],"responses":{"200":{"description":"Coal-mining layer matches, nearby BGS recorded-landslide records and BGS 1:50,000 geological context.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"location":{"type":"object","additionalProperties":false,"properties":{"postcode":{"type":"string"},"country":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"},"radiusMetres":{"type":"integer"}},"required":["latitude","longitude","radiusMetres"]},"coverage":{"type":"string"},"complete":{"type":"boolean"},"riskLevel":{"type":"string"},"coalMining":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"riskLevel":{"type":"string"},"reportingArea":{"type":"boolean"},"developmentHighRiskArea":{"type":"boolean"},"matchedLayers":{"type":"array","items":{"type":"string"}}},"required":["status","riskLevel","reportingArea","developmentHighRiskArea","matchedLayers"]},"landslides":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"count":{"type":"integer"},"records":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string"},"locality":{"type":"string"},"firstKnownYear":{"type":"integer"},"distanceMetres":{"type":"number"}},"required":[]}}},"required":["status","count","records"]},"geology":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"riskLevel":{"type":"string"},"features":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"label":{"type":"string"},"description":{"type":"string"},"broadType":{"type":"string"}},"required":[]}}},"required":["status","riskLevel","features"]}},"required":["location","coverage","complete","riskLevel","coalMining","landslides","geology"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":false,"description":"Full Great Britain postcode. Alternatively provide latitude and longitude.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full Great Britain postcode. Alternatively provide latitude and longitude."}},{"name":"latitude","in":"query","required":false,"description":"Latitude when postcode is omitted.","schema":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude when postcode is omitted."}},{"name":"longitude","in":"query","required":false,"description":"Longitude when postcode is omitted.","schema":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude when postcode is omitted."}},{"name":"radiusMetres","in":"query","required":false,"description":"Recorded-landslide search radius in metres. Defaults to 250.","schema":{"type":"integer","minimum":25,"maximum":2000,"description":"Recorded-landslide search radius in metres. Defaults to 250."}}]}},"/property/due-diligence":{"get":{"operationId":"property_due_diligence","summary":"Generate property enquiry prompts from open screening data with optional OS NGD building and land-use context. Completed reports cost 18–30 credits based on selected environmental factors; UPRN-based OS NGD context adds 35 credits. Coverage: England supported, Wales and Scotland partial, Northern Ireland not supported.","description":"Generate property enquiry prompts from open screening data with optional OS NGD building and land-use context. Completed reports cost 18–30 credits based on selected environmental factors; UPRN-based OS NGD context adds 35 credits. Coverage: England supported, Wales and Scotland partial, Northern Ireland not supported. A completed report costs 18 to 30 credits according to the selected environmental factors. Supplying a UPRN adds 35 credits for OS NGD context. No external search purchase is made. Coverage by nation: England: Supported; Wales: Partial; Scotland: Partial; Northern Ireland: Not supported.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"18–30 credits; add 35 with UPRN","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/property-due-diligence"},"x-property-insights-coverage":[{"nation":"England","code":"ENG","status":"supported","label":"Supported","summary":"Planning, full English flood, ground, environmental and optional OS NGD evidence can be combined."},{"nation":"Wales","code":"WAL","status":"partial","label":"Partial","summary":"Welsh flood and Great Britain ground/OS evidence are available. Planning Data, English noise and source-protection layers are not."},{"nation":"Scotland","code":"SCO","status":"partial","label":"Partial","summary":"Great Britain ground and optional OS context plus UK-AIR can be returned. Planning and flood evidence are not configured."},{"nation":"Northern Ireland","code":"NI","status":"not-supported","label":"Not supported","summary":"The configured planning, flood, ground and OS NGD evidence does not provide a meaningful combined screen."}],"responses":{"200":{"description":"Prioritised enquiries and compact planning, flood, environmental, ground and optional OS building summaries.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"data":{"type":"object","additionalProperties":false,"properties":{"property":{"type":"object","additionalProperties":false,"properties":{"postcode":{"type":"string"},"country":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"},"radiusMetres":{"type":"integer"},"uprn":{"type":"string"}},"required":["latitude","longitude","radiusMetres"]},"complete":{"type":"boolean"},"riskLevel":{"type":"string"},"enquiryRecommended":{"type":"boolean"},"enquiryCount":{"type":"integer"},"enquiries":{"type":"array","items":{"type":"object","additionalProperties":false,"properties":{"code":{"type":"string"},"category":{"type":"string"},"priority":{"type":"string"},"title":{"type":"string"},"reason":{"type":"string"},"action":{"type":"string"}},"required":["code","priority"]}},"checks":{"type":"object","additionalProperties":false,"properties":{"planning":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"constraintCount":{"type":"integer"}},"required":["status","constraintCount"]},"flood":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"riskLevel":{"type":"string"},"matchedRisks":{"type":"array","items":{"type":"string"}}},"required":["status","riskLevel","matchedRisks"]},"environment":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"riskLevel":{"type":"string"},"requestedFactors":{"type":"array","items":{"type":"string"}},"factors":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string","enum":["matched","clear","unavailable","not_covered","licence_required"]},"riskLevel":{"type":"string"},"enquiryRecommended":{"type":"boolean"},"details":{"type":"object","additionalProperties":true},"note":{"type":"string"}},"required":["status","riskLevel","enquiryRecommended"]}}},"required":["status","riskLevel","requestedFactors","factors"]},"ground":{"type":"object","additionalProperties":false,"properties":{"status":{"type":"string"},"riskLevel":{"type":"string"},"coalMining":{"type":"boolean"},"landslideCount":{"type":"integer"}},"required":["status","riskLevel","coalMining","landslideCount"]}},"required":["planning","flood","environment","ground"]},"building":{"type":["object","null"],"additionalProperties":false,"properties":{"use":{"type":["string","array"],"items":{"type":"string"}},"builtForm":{"type":"string"},"physicalState":{"type":"string"},"footprintAreaSqM":{"type":"number"},"numberOfFloors":{"type":"number"},"basement":{"type":["string","boolean"]},"age":{"type":"object","additionalProperties":false,"properties":{"year":{"type":["string","number"]},"period":{"type":"string"}},"required":[]},"constructionMaterial":{"type":"string"},"roof":{"type":"object","additionalProperties":false,"properties":{"shape":{"type":"string"},"material":{"type":"string"},"solarPanels":{"type":["string","boolean"]},"greenRoof":{"type":["string","boolean"]}},"required":[]},"landUse":{"type":["string","array"],"items":{"type":"string"}}}}},"required":["property","complete","riskLevel","enquiryRecommended","enquiryCount","enquiries","checks","building"]},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"required":["success","data"],"additionalProperties":false}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":false,"description":"Full Great Britain postcode. Alternatively provide latitude and longitude.","schema":{"type":"string","minLength":5,"maxLength":10,"description":"Full Great Britain postcode. Alternatively provide latitude and longitude."}},{"name":"latitude","in":"query","required":false,"description":"Latitude when postcode is omitted.","schema":{"type":"number","minimum":-90,"maximum":90,"description":"Latitude when postcode is omitted."}},{"name":"longitude","in":"query","required":false,"description":"Longitude when postcode is omitted.","schema":{"type":"number","minimum":-180,"maximum":180,"description":"Longitude when postcode is omitted."}},{"name":"radiusMetres","in":"query","required":false,"description":"Planning and recorded-landslide screening radius in metres. Defaults to 250.","schema":{"type":"integer","minimum":25,"maximum":2000,"description":"Planning and recorded-landslide screening radius in metres. Defaults to 250."}},{"name":"factors","in":"query","required":false,"description":"Environmental factors to return as a comma-separated list or `all`.","schema":{"type":"string","description":"Environmental factors to return as a comma-separated list or `all`."}},{"name":"uprn","in":"query","required":false,"description":"Optional UPRN. When supplied, the response also requests OS NGD building and land-use context.","schema":{"type":"string","pattern":"^\\d{1,12}$","description":"Optional UPRN. When supplied, the response also requests OS NGD building and land-use context."}}]}},"/schools/search":{"get":{"operationId":"schools_search","summary":"Search nearby schools by postcode with phase, Ofsted, and type filters.","description":"Search nearby schools by postcode with phase, Ofsted, and type filters.","tags":["Location Intelligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/schools"},"responses":{"200":{"description":"Nearby schools with filters for phase, type, and Ofsted rating.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"postcode","in":"query","required":true,"description":"UK postcode to search around.","schema":{"type":"string","minLength":3,"description":"UK postcode to search around."}},{"name":"radius","in":"query","required":false,"description":"Search radius in miles.","schema":{"type":"number","minimum":0.1,"maximum":10,"description":"Search radius in miles."}},{"name":"phase","in":"query","required":false,"description":"School phase such as Primary or Secondary.","schema":{"type":"string","description":"School phase such as Primary or Secondary."}},{"name":"ofstedRating","in":"query","required":false,"description":"Filter by Ofsted rating.","schema":{"type":"string","enum":["Outstanding","Good","Requires improvement","Inadequate"],"description":"Filter by Ofsted rating."}},{"name":"limit","in":"query","required":false,"description":"Maximum number of schools to return.","schema":{"type":"integer","minimum":1,"maximum":50,"description":"Maximum number of schools to return."}},{"name":"type","in":"query","required":false,"description":"School type such as Academy or Community School.","schema":{"type":"string","description":"School type such as Academy or Community School."}}]}},"/hpi":{"get":{"operationId":"hpi","summary":"Query UK House Price Index series by region with optional segmentation and metrics filters.","description":"Query UK House Price Index series by region with optional segmentation and metrics filters.","tags":["Market Data"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/house-price-index"},"responses":{"200":{"description":"House Price Index series data for the requested region and filters.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"region","in":"query","required":true,"description":"Region, county, or city label recognised by the HPI endpoint.","schema":{"type":"string","minLength":2,"description":"Region, county, or city label recognised by the HPI endpoint."}},{"name":"startDate","in":"query","required":false,"description":"Start month in YYYY-MM format.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}$","description":"Start month in YYYY-MM format."}},{"name":"endDate","in":"query","required":false,"description":"End month in YYYY-MM format.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}$","description":"End month in YYYY-MM format."}},{"name":"propertyType","in":"query","required":false,"description":"Property type segment.","schema":{"type":"string","description":"Property type segment."}},{"name":"saleType","in":"query","required":false,"description":"Sale type segment such as cash or mortgage.","schema":{"type":"string","description":"Sale type segment such as cash or mortgage."}},{"name":"buyerType","in":"query","required":false,"description":"Buyer type such as first-time or former-owner.","schema":{"type":"string","description":"Buyer type such as first-time or former-owner."}},{"name":"newBuild","in":"query","required":false,"description":"New-build filter such as new or existing.","schema":{"type":"string","description":"New-build filter such as new or existing."}},{"name":"interval","in":"query","required":false,"description":"Return monthly or annual series data.","schema":{"type":"string","enum":["monthly","annual"],"description":"Return monthly or annual series data."}},{"name":"metrics","in":"query","required":false,"description":"Comma-separated metrics, for example price,index.","schema":{"type":"string","description":"Comma-separated metrics, for example price,index."}}]}},"/floor-area/lookup":{"get":{"operationId":"floor_area_lookup","summary":"Lookup floor area by UPRN or by house number + postcode. Completed lookups cost 35 credits because address resolution uses AddressBase.","description":"Lookup floor area by UPRN or by house number + postcode. Completed lookups cost 35 credits because address resolution uses AddressBase. A completed lookup costs 35 credits. Provide either `uprn`, or both `house_number` and `postcode`.","tags":["Property Due Diligence"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"35 credits","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/interior-floor-area"},"responses":{"200":{"description":"Floor area lookup result for the requested property.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"uprn","in":"query","required":false,"description":"Unique Property Reference Number.","schema":{"type":"string","minLength":1,"description":"Unique Property Reference Number."}},{"name":"house_number","in":"query","required":false,"description":"House number or house name.","schema":{"type":"string","minLength":1,"description":"House number or house name."}},{"name":"postcode","in":"query","required":false,"description":"UK postcode when searching by house number.","schema":{"type":"string","minLength":3,"description":"UK postcode when searching by house number."}},{"name":"street","in":"query","required":false,"description":"Optional street name when searching by house number and postcode.","schema":{"type":"string","description":"Optional street name when searching by house number and postcode."}}]}},"/mortgage-rates":{"get":{"operationId":"mortgage_rates","summary":"Get historical UK mortgage rates with optional term, LTV, and date filtering.","description":"Get historical UK mortgage rates with optional term, LTV, and date filtering.","tags":["Market Data"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/mortgage-rates"},"responses":{"200":{"description":"Historical mortgage rate data for the requested filters.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"term","in":"query","required":false,"description":"Mortgage product term to filter by.","schema":{"type":"string","enum":["2year","5year","10year","tracker","variable","all"],"description":"Mortgage product term to filter by."}},{"name":"ltv","in":"query","required":false,"description":"Loan-to-value band to filter by.","schema":{"type":"string","enum":["60","75","90","95","all"],"description":"Loan-to-value band to filter by."}},{"name":"startDate","in":"query","required":false,"description":"Start date in YYYY-MM-DD or YYYY-MM format.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}(-\\d{2})?$","description":"Start date in YYYY-MM-DD or YYYY-MM format."}},{"name":"endDate","in":"query","required":false,"description":"End date in YYYY-MM-DD or YYYY-MM format.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}(-\\d{2})?$","description":"End date in YYYY-MM-DD or YYYY-MM format."}},{"name":"limit","in":"query","required":false,"description":"Maximum number of rows to return.","schema":{"type":"integer","minimum":1,"maximum":500,"description":"Maximum number of rows to return."}}]}},"/bank-rates":{"get":{"operationId":"bank_rates","summary":"Get historical Bank of England base rates with optional date filtering.","description":"Get historical Bank of England base rates with optional date filtering.","tags":["Market Data"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/bank-rates"},"responses":{"200":{"description":"Historical Bank of England base rate data.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"startDate","in":"query","required":false,"description":"Start date in YYYY-MM-DD or YYYY-MM format.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}(-\\d{2})?$","description":"Start date in YYYY-MM-DD or YYYY-MM format."}},{"name":"endDate","in":"query","required":false,"description":"End date in YYYY-MM-DD or YYYY-MM format.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}(-\\d{2})?$","description":"End date in YYYY-MM-DD or YYYY-MM format."}},{"name":"limit","in":"query","required":false,"description":"Maximum number of rows to return.","schema":{"type":"integer","minimum":1,"maximum":500,"description":"Maximum number of rows to return."}}]}},"/inflation-rates":{"get":{"operationId":"inflation_rates","summary":"Get historical UK CPI inflation rates with optional date filtering.","description":"Get historical UK CPI inflation rates with optional date filtering.","tags":["Market Data"],"security":[{"apiKey":[]}],"x-openai-isConsequential":false,"x-property-insights-playground-enabled":false,"x-property-insights-playground-excluded":false,"x-property-insights-credit-cost":"1 credit","externalDocs":{"description":"View the customer API documentation","url":"https://propertyinsights.co.uk/api-docs/inflation-rates"},"responses":{"200":{"description":"Historical UK CPI inflation rate data.","headers":{"X-Credits-Charged":{"description":"Credits charged by this call.","schema":{"type":"number"}},"X-Credits-Remaining":{"description":"Credit balance after this call.","schema":{"type":"number"}},"X-Credits-Refresh-At":{"description":"ISO 8601 timestamp for the next prepaid credit refresh. Omitted when not applicable.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the request was successful."},"billing":{"type":"object","description":"Billing result for this completed API call.","properties":{"mode":{"type":"string","enum":["prepaid"]},"creditsCharged":{"type":"number","description":"Credits charged by this call."},"creditsRemaining":{"type":["number","null"],"description":"Credit balance after this call."},"creditsRefreshAt":{"type":["string","null"],"description":"ISO 8601 timestamp for the next credit refresh, or null when not applicable."}},"required":["mode","creditsCharged","creditsRemaining","creditsRefreshAt"]}},"additionalProperties":true}}}},"400":{"description":"Invalid request parameters.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"429":{"description":"Rate limit exceeded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}}},"parameters":[{"name":"startDate","in":"query","required":false,"description":"Start date in YYYY-MM-DD or YYYY-MM format.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}(-\\d{2})?$","description":"Start date in YYYY-MM-DD or YYYY-MM format."}},{"name":"endDate","in":"query","required":false,"description":"End date in YYYY-MM-DD or YYYY-MM format.","schema":{"type":"string","pattern":"^\\d{4}-\\d{2}(-\\d{2})?$","description":"End date in YYYY-MM-DD or YYYY-MM format."}},{"name":"limit","in":"query","required":false,"description":"Maximum number of rows to return.","schema":{"type":"integer","minimum":1,"maximum":500,"description":"Maximum number of rows to return."}}]}}},"components":{"securitySchemes":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Create an API key in the Property Insights API dashboard and send it in the x-api-key header."}},"schemas":{"ApiError":{"type":"object","additionalProperties":true,"properties":{"statusCode":{"type":"integer"},"statusMessage":{"type":"string"},"message":{"type":"string"}}}}},"security":[{"apiKey":[]}]}