---
title: "Resolve a link or reference to its property"
method: POST
path: "/v1/property-sourcing/properties/resolve"
tags: ["platform---property-sourcing"]
---

# Resolve a link or reference to its property

`POST /v1/property-sourcing/properties/resolve`

## Request

- Base URL: `https://platform.casafari.com`
- URL: `https://platform.casafari.com/v1/property-sourcing/properties/resolve`
- Auth: HTTP bearer

Send exactly one of `url` (a portal or agency link to one home), `reference` (the reference an agency gives the home) or `listing_id`, and get back the property it belongs to, with its `prop_` id. The country comes from `country`, else from the link's domain, else from the account's only country. 25 tokens.

## Request body

- PropertySourcingResolveRequest: Exactly one of url, reference or listing_id.
  - `url` string: An http(s) link to one listing, on a portal or an agency website.
  - `reference` string: The listing's reference.
  - `listing_id` integer: A listing id.
  - `country` string: ISO 3166-1 alpha-2 code; read from the link's domain when left out.

## Response `200`

The matching properties.

- PropertySourcingResolveResult
  - `results` PropertySourcingResult[]
    - `id` string: Opaque property id, `prop_...`.
    - `type` string, nullable: Property type.
    - `operation` 'sale' | 'rent'
    - `price` PlatformPrice
      - `amount` number, nullable: Asking price; null when the price is on request.
      - `currency` string, nullable: ISO 4217 currency code.
      - `per_sqm` number, nullable: Asking price per m².
    - `bedrooms` number, nullable
    - `living_area_sqm` number, nullable
    - `location` PlatformLocation
      - `id` integer, nullable: Location id.
      - `name` string, nullable: Location name.
      - `coordinates` object, nullable: Latitude and longitude.
        - `lat` number
        - `lon` number
    - `first_seen` string, nullable: When the property came on the market for this operation.
    - `listings_count` integer, nullable: How many listings advertise it; known on a property read with expand=listings, null in search results.
    - `matched_tags` string[], nullable: The phrases of a plain-language search this property matched; null for structured searches.
  - `total` integer

## Other responses

- `400`: Not exactly one of url, reference or listing_id, or the country cannot be told (`invalid_request`).
- `401`: Missing or unknown API key or token.
- `402`: No tokens left to fund the call (`payment_required`).
- `403`: The account is not entitled to this country (`not_entitled`).
- `404`: No property matches (`not_found`).

---

[API](https://skmtc.dev/casafari/apis/casafari-api.md) · [All operations](https://skmtc.dev/casafari/apis/casafari-api/llms.txt) · [OpenAPI document](https://skmtc.dev/casafari/apis/casafari-api/revisions/6743b99d4bf9?raw)
