Web-page view of https://agent.index.cy/openapi.json for tools that read pages and follow links. The text below is the complete answer; every address in it is a link you can open. Command-line tools get the raw form.

{
    "openapi": "3.1.0",
    "info": {
        "title": "index.cy agent API",
        "version": "1.0.0",
        "description": "Search property for sale and rent in Cyprus. Human-readable instructions: https://agent.index.cy/agent.md"
    },
    "servers": [
        {
            "url": "https://agent.index.cy"
        }
    ],
    "paths": {
        "/v1/listings": {
            "get": {
                "operationId": "searchListings",
                "summary": "Search listings for sale or rent",
                "parameters": [
                    {
                        "name": "deal",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "sale",
                                "rent"
                            ],
                            "default": "sale"
                        }
                    },
                    {
                        "name": "district",
                        "in": "query",
                        "description": "District. Comma separated for several. One of: famagusta, larnaca, limassol, nicosia, paphos.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "location",
                        "in": "query",
                        "description": "Town, village or area. Comma separated for several. Slugs come from /v1/locations.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "property_type",
                        "in": "query",
                        "description": "Property type. Comma separated for several. One of: apartment, building, house, land-plots, office, commercial.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "bedrooms",
                        "in": "query",
                        "description": "Bedrooms. Comma separated for several. One of: studio, 1, 2, 3, 4, 5, 6.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "bathrooms",
                        "in": "query",
                        "description": "Bathrooms. Comma separated for several. One of: 1, 2, 3, 4, 5.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "condition",
                        "in": "query",
                        "description": "Condition. Comma separated for several. One of: brand-new, pre-owned, under-construction.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "year_built",
                        "in": "query",
                        "description": "Year built. Comma separated for several. One of: 1990-and-older, 1991-2000, 2001-2010, 2009, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028, 2029, 2030.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "energy_class",
                        "in": "query",
                        "description": "Energy class. Comma separated for several. One of: a, a-plus, b, b-plus, c, d, e.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "furnishing",
                        "in": "query",
                        "description": "Furnishing. Comma separated for several. One of: furnished, partially-furnished, unfurnished.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "pool",
                        "in": "query",
                        "description": "Pool. Comma separated for several. One of: common, no, private, yes.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "parking",
                        "in": "query",
                        "description": "Parking. Comma separated for several. One of: covered, no, uncovered, yes.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "heating",
                        "in": "query",
                        "description": "Heating. Comma separated for several. One of: autonomous-heating, central-heating, no, radiators, underfloor-heating, yes.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "air_conditioning",
                        "in": "query",
                        "description": "Air conditioning. Comma separated for several. One of: all-rooms, no, partial, yes.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "amenities",
                        "in": "query",
                        "description": "Amenities. Comma separated for several. One of: air-conditioning, alarm, balcony, bbq-zone, bike-parking, elevator, fireplace, garden, guest-wc, gym, heating, parking, pool, roof-garden, spasauna, storage-room.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "view",
                        "in": "query",
                        "description": "View. Comma separated for several. Sale only. One of: city-view, mountains-view, sea-view.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "pets",
                        "in": "query",
                        "description": "Pets. Comma separated for several. Rent only. One of: allowed, not-allowed.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "seller_type",
                        "in": "query",
                        "description": "Seller type. Comma separated for several. One of: agency, developer, property-owner.",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "price_min",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "price_max",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "area_min",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "area_max",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "plot_min",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "plot_max",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "listed_within_days",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "project_id",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "company_id",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 0
                        }
                    },
                    {
                        "name": "near",
                        "in": "query",
                        "description": "lat,lng",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "radius_km",
                        "in": "query",
                        "schema": {
                            "type": "number",
                            "default": 2,
                            "maximum": 100
                        }
                    },
                    {
                        "name": "bbox",
                        "in": "query",
                        "description": "sw_lat,sw_lng,ne_lat,ne_lng",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "good_deal",
                        "in": "query",
                        "description": "Sale only.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "1"
                            ]
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "maxLength": 100
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "recommended",
                                "newest",
                                "price_asc",
                                "price_desc",
                                "area_asc",
                                "area_desc",
                                "price_m2_asc",
                                "price_m2_desc"
                            ]
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "schema": {
                            "type": "integer",
                            "minimum": 1,
                            "maximum": 25,
                            "default": 10
                        }
                    },
                    {
                        "name": "cursor",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "detail",
                        "in": "query",
                        "description": "full returns everything about each result, at most 10 per page.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "summary",
                                "full"
                            ],
                            "default": "summary"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "default": {
                        "$ref": "#/components/responses/Error"
                    }
                }
            }
        },
        "/v1/listings/{id}": {
            "get": {
                "operationId": "getListing",
                "summary": "Everything about one listing",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "include",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "estimate"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "default": {
                        "$ref": "#/components/responses/Error"
                    }
                }
            }
        },
        "/v1/listings/{id}/similar": {
            "get": {
                "operationId": "similarListings",
                "summary": "Similar live listings",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "default": {
                        "$ref": "#/components/responses/Error"
                    }
                }
            }
        },
        "/v1/listings/lookup": {
            "get": {
                "operationId": "lookupListing",
                "summary": "Listing id from an index.cy link or a reference number",
                "parameters": [
                    {
                        "name": "url",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ref",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "default": {
                        "$ref": "#/components/responses/Error"
                    }
                }
            }
        },
        "/v1/locations": {
            "get": {
                "operationId": "resolveLocation",
                "summary": "Place name to location slug",
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "default": {
                        "$ref": "#/components/responses/Error"
                    }
                }
            }
        },
        "/v1/meta": {
            "get": {
                "operationId": "getMeta",
                "summary": "Every search parameter with its allowed values",
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "default": {
                        "$ref": "#/components/responses/Error"
                    }
                }
            }
        }
    },
    "components": {
        "responses": {
            "Error": {
                "description": "Error with a hint that says what to do next",
                "content": {
                    "application/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "error": {
                                    "type": "object",
                                    "properties": {
                                        "code": {
                                            "type": "string"
                                        },
                                        "message": {
                                            "type": "string"
                                        },
                                        "hint": {
                                            "type": "string"
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}