# Zoopla Sold Properties

Find sold property records for a location, with cursor pagination and optional last-sale date bounds.

- **Documentation:** [https://scrappa.co/docs/zoopla-api/zoopla_sold](https://scrappa.co/docs/zoopla-api/zoopla_sold)
- **API group:** Zoopla API
- **Endpoint:** `GET https://scrappa.co/api/zoopla/sold`

## Authentication

Send your Scrappa API key in the `X-API-KEY` request header. Paid endpoints also support accountless x402 payments when called without an API key.

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `location` | string | Yes | Location or geographic identifier to search. |
| `first` | integer | No | Maximum number of records to return. Defaults to 50. |
| `after` | string | No | Cursor returned by the previous page. |
| `from_last_sale_date` | string | No | Include sales on or after this date. |
| `to_last_sale_date` | string | No | Include sales on or before this date. |

## Example request

```bash
#!/bin/bash

curl -X GET \
    -H "x-api-key: YOUR_API_KEY_HERE" \
    "https://scrappa.co/api/zoopla/sold?location=sw1a&first=50"
```

## Example response

```json
{
    "success": true,
    "geo_identifier": "sw1a",
    "properties": [
        {
            "uprn": "100023337105",
            "address": {
                "fullAddress": "Westminster, London"
            },
            "history": {
                "historicSales": [
                    {
                        "date": "2024-02-14",
                        "price": 875000
                    }
                ]
            }
        }
    ],
    "count": 1,
    "pagination": {
        "total_results": 218,
        "total_results_is_capped": false,
        "has_next_page": true,
        "end_cursor": "cursor-token"
    },
    "silent_empty": false
}
```

## Errors

| Status | Error | Description |
| --- | --- | --- |
| 401 | Unauthorized | Authentication is required to use this endpoint. |
| 422 | Validation Error | One or more input parameters are missing or invalid. |
| 404 | Integration Disabled | This integration is currently disabled on the server. Availability is switched per environment, so it can be off during a staged rollout. |
| 500 | Internal Error | The request could not be processed because of a fault in this service, not the data source. No credit is charged. |
| 503 | Unusable Upstream Response | The data source answered but the response could not be used: empty, oversized, undecodable, or carrying errors with no usable data. No credit is charged. |
| 503 | Upstream Unavailable | The data source could not complete this request. Try again later. |

## More Scrappa resources

- [API documentation](https://scrappa.co/docs)
- [Full LLM-readable API reference](https://scrappa.co/llms-full.txt)
- [OpenAPI specification](https://scrappa.co/docs/api.json)
- [Pricing](https://scrappa.co/pricing)
