# Graana Listing Details API Documentation

Scrappa's `GET /api/graana/listing` returns the full record of one Graana property by `id`. Take the id from `id` on a search result.

## What you get

All fields of a search row, with every image in `images`, plus `address`, `description`, `condition`, `built_year`, `days_on_graana`, `expires_at`, `availability`, `latitude`, `longitude` and `country_code`. `features` holds the groups `primary`, `secondary`, `utility`, `communication` and `nearby` as objects such as `{"kitchen": 1, "parking": true}`; a group the poster left empty is `null`. `agency` holds `id`, `url`, `name`, `address`, `phone`, `email`, `website`, `description` and `logo`. `detail_level` is `full`.

## Contact data

The agency contact data is public on Graana and is returned. The personal phone number of the person who posted the listing and their account record are never returned.

## Not available

Graana publishes no fees, no agent profile, no reviews and no price history for a listing. The poster is `poster_name` and the agency.

## Notes

An id that does not exist returns `404`, which is never billed.

- **Documentation:** [https://scrappa.co/docs/graana-api/graana_listing](https://scrappa.co/docs/graana-api/graana_listing)
- **API group:** Graana API
- **Endpoint:** `GET https://scrappa.co/api/graana/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` | integer | Yes | Listing id from search, for example 1559223. |

## Example request

```bash
#!/bin/bash

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

## Example response

```json
{
    "success": true,
    "listing": {
        "id": 1559223,
        "url": "https://www.graana.com/property/1559223",
        "title": "5 Marla House for Sale",
        "purpose": "sale",
        "type": "residential",
        "subtype": "house",
        "price": {
            "amount": 29500000,
            "currency": "PKR"
        },
        "area": {
            "size": 5,
            "unit": "marla"
        },
        "bedrooms": 5,
        "bathrooms": 5,
        "location": {
            "area_id": 9580,
            "area": "Wapda Town",
            "city_id": 2,
            "city": "Lahore"
        },
        "agency_id": 2344,
        "poster_name": "M Qaisar",
        "status": "published",
        "verified": false,
        "total_images": 3,
        "cover_image": "https://images.graana.com/images/original/cc517755497c782be011d5fefbb0d8d0",
        "images": [
            {
                "url": "https://images.graana.com/images/original/8fe6eb3dd4661ca841ecce8dadd750f4",
                "type": "image"
            },
            {
                "url": "https://images.graana.com/images/original/cc517755497c782be011d5fefbb0d8d0",
                "type": "cover"
            }
        ],
        "created_at": "2026-10-24T09:32:45.278Z",
        "detail_level": "full",
        "address": "Wapda Town",
        "description": "5 Marla House Available For Sale In Wapda Town Lahore",
        "condition": "Any",
        "built_year": null,
        "days_on_graana": null,
        "expires_at": "2027-03-24T09:32:45.000Z",
        "availability": null,
        "latitude": 31.43428,
        "longitude": 74.25969,
        "country_code": "+92",
        "features": {
            "primary": {
                "kitchen": 1,
                "parking": true,
                "tvLounge": 1,
                "drawingRoom": 1
            },
            "secondary": null,
            "utility": {
                "gas": true,
                "security": true,
                "sewerage": true,
                "electricity": true,
                "waterSupply": true
            },
            "communication": {
                "internetAccess": true,
                "satelliteOrCableTv": true
            },
            "nearby": {
                "mosque": true,
                "schools": true,
                "hospitals": true,
                "restaurants": true
            }
        },
        "agency": {
            "id": 2344,
            "url": "https://www.graana.com/agencies/2344",
            "name": "Qasim Estate & Builders",
            "address": "Chashma Road, Block K-2, Phase 1 Wapda Town, Lahore",
            "phone": "03000000001",
            "email": "agency@example.com",
            "website": null,
            "description": "Qasim Estate & Builders is working in the Wapda Town Phase 1, Lahore.",
            "logo": "https://images.graana.com/images/original/tj6efnhnw3y41nitjo0h"
        }
    },
    "meta": {
        "endpoint_family": "listing",
        "billable": true,
        "attempts": 1
    }
}
```

## Errors

| Status | Error | Description |
| --- | --- | --- |
| 404 | Not Found | Nothing exists with that identifier on Graana (`not_found`). Non-billable. |
| 422 | Validation Error | A query parameter is missing, unknown or unusable. Unknown parameters and unknown values are rejected, never ignored. Non-billable. |
| 503 | Upstream Unavailable | Graana could not be reached after retries, answered with an error or changed its format (`upstream_unavailable`, `upstream_blocked`, `parser_drift`). 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)
