Scrappa's `GET /api/immoscout24-at/similar` endpoint finds listings similar to a given listing.
## How it works
The portal names the filter set behind each listing (region, deal type, price ceiling, minimum area and rooms). The endpoint searches that filter set and removes the listing itself. The `filters` field shows what was searched. For new-build projects, `children` lists the units of the project.
## Billing
This endpoint makes two lookups on the portal and is billed as one request.</p>
Run this endpoint
Endpoint
Parameters
Start with the required fields, then add optional filters only when your use case needs them.
Runnable path
1 required parameter needed before sending a request.
1 optional filter available.
string
Required
Listing id (24 character hex string).
1234567890
integer
Optional
Number of similar listings, 1 to 50. Defaults to 10.
10
Response Schema
Example response fields are illustrative; inspect the JSON before integrating.
Example response fields
Scan these fields before integrating.
data
meta
success
{
"data": {
"filters": {
"region": "009001020",
"transferType": "RENT"
},
"results": [
{
"exposeId": "69ce7e5fa2f80c1c0b85a932",
"headline": "Momento Vienna",
"primaryPrice": 1775
}
],
"children": [],
"exposeId": "69ce7e3d6fd3644eae4a06ca",
"totalHits": 68
},
"meta": {
"attempts": 1,
"billable": true,
"duration_ms": 640
},
"success": true
}
Errors
Handle these documented responses before retrying or showing customer-facing failures.
Not Found
The requested listing, agency or place does not exist. Non-billable and not retryable.
{
"meta": {
"billable": false,
"retryable": false
},
"error": {
"code": "NOT_FOUND",
"message": "The requested ImmobilienScout24 Austria resource was not found.",
"failure_type": "not_found"
},
"success": false
}Validation Error
A query parameter failed validation: a missing required value, an unsupported filter value or a number outside the documented range. Every filter value is checked before a request is made, so a typo is never answered with a plausible but unfiltered result. Non-billable.
{
"errors": {
"estate_type": [
"The estate_type field contains an unsupported value: FOO."
]
},
"message": "The request validation failed"
}Request Rejected
ImmobilienScout24 Austria answered with an application error, for example a region it does not know. Non-billable and not retryable: the same request fails the same way. Published as 503; branch on `meta.retryable` rather than on the status code.
{
"meta": {
"billable": false,
"retryable": false
},
"error": {
"code": "UPSTREAM_REJECTED",
"message": "ImmobilienScout24 Austria could not accept this request. Please check the filters and retry.",
"failure_type": "invalid_request"
},
"success": false
}Temporarily Unavailable
ImmobilienScout24 Austria could not be reached. Every attempt is made again on a fresh route before this is returned, so it is always retryable. The `failure_type` is one of `upstream_unreachable`, `transport_error`, `edge_blocked`, `rate_limited` or `attempts_exhausted`. Non-billable; a later request is worth making.
{
"meta": {
"billable": false,
"retryable": true
},
"error": {
"code": "UPSTREAM_UNAVAILABLE",
"message": "The ImmobilienScout24 Austria API is temporarily unavailable. Please retry.",
"failure_type": "transport_error"
},
"success": false
}Generate Code with AI
Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.
Try It Live
Test this endpoint in our interactive playground with real data.