# Qasa Listing Details API Documentation

Scrappa's `GET /api/qasa/listing` returns the full record of one Qasa rental home by its numeric `id` from search.

## What you get

`rent`, `monthly_cost`, the tenant fee (`tenant_fee` with factor and total), `cleaning_fee`, `rooms`, `bedrooms`, `size`, `floor`, `building_floors`, `build_year`, `energy_class`, `tenure_type`, `rental_type`, `home_type`, tenant rule flags, renovation years, the rental period (`duration`), `amenities`, the address with `postal_code`, exact coordinates, nearby public transport in `points_of_interest` (Sweden), all `images` and a `landlord` summary with the `uid` for the landlord endpoint.

## Status

`status` tells whether the home is still on the market. Archived homes can still be read. A home that never existed returns `404`.

## Notes

`monthly_cost` is the monthly rent plus the tenant base fee, the same as in search. Detailed lists of extra costs and house rules are not included yet; `additional_costs` lists only their type.

- **Documentation:** [https://scrappa.co/docs/qasa-api/qasa_listing](https://scrappa.co/docs/qasa-api/qasa_listing)
- **API group:** Qasa API
- **Endpoint:** `GET https://scrappa.co/api/qasa/listing`

## 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 |
| --- | --- | --- | --- |
| `id` | string | Yes | Numeric Qasa listing id from search, for example 1492414. |

## Example request

```bash
#!/bin/bash

curl -X GET \
    -H "x-api-key: YOUR_API_KEY_HERE" \
    "https://scrappa.co/api/qasa/listing?id=1492414"
```

## Example response

```json
{
    "success": true,
    "listing": {
        "id": "1492414",
        "url": "https://qasa.com/se/en/home/1492414",
        "status": "normal",
        "market": "sweden",
        "currency": "SEK",
        "rent": 27372,
        "monthly_cost": 29000,
        "tenant_fee": {
            "availability": "mandatory",
            "factor": 0.0595,
            "total": 1628
        },
        "rooms": 3,
        "bedrooms": 2,
        "size": 74,
        "build_year": 2025,
        "energy_class": "B",
        "home_type": "apartment",
        "duration": {
            "start_optimal": "2026-12-01T00:00:00Z",
            "end_optimal": null,
            "start_asap": false,
            "until_further_notice": true,
            "possibility_of_extension": false
        },
        "amenities": [
            {
                "id": "29254168",
                "type": "recycling",
                "detail": null
            }
        ],
        "location": {
            "locality": "Stockholm",
            "street": "Kristinehovsgatan",
            "postal_code": "11729",
            "country_code": "SE",
            "latitude": 59.3166772,
            "longitude": 18.043096
        },
        "points_of_interest": [
            {
                "category": "bus_stop",
                "name": "Varvsgatan",
                "distance_m": 104,
                "latitude": 59.316176,
                "longitude": 18.041559,
                "metadata": {
                    "lines": [
                        "74"
                    ]
                }
            }
        ],
        "images": [
            {
                "id": "22202803",
                "url": "https://example.com/home.jpg",
                "type": "home_picture",
                "order": 1,
                "primary": true
            }
        ],
        "landlord": {
            "uid": "m3zynqzj",
            "name": "Anna",
            "company_name": null,
            "professional": false,
            "pro_agent": false
        }
    },
    "meta": {
        "endpoint_family": "listing",
        "billable": true,
        "attempts": 1
    }
}
```

## Errors

| Status | Error | Description |
| --- | --- | --- |
| 404 | Not Found | Nothing exists with that identifier on Qasa (`not_found`). Non-billable. |
| 422 | Validation Error | A query parameter is missing, unknown or unusable. Unknown parameters are rejected, never ignored. Non-billable. |
| 503 | Upstream Unavailable | Qasa could not be reached after retries, answered with an error, or its area list is not available (`upstream_unavailable`, `upstream_blocked`, `parser_drift`, `area_list_unavailable`). Retryable and never billed. Clients are never rate limited. |

## 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)
