> ## Documentation Index
> Fetch the complete documentation index at: https://easybroker-staging.readme.io/llms.txt
> Use this file to discover all available pages before exploring further.

# List all properties

Returns a list of properties from your organization.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "version": "1.0",
    "title": "EasyBroker API",
    "description": "API for accessing and working with EasyBroker accounts. To get started click the Authorize button below and enter your API key."
  },
  "externalDocs": {
    "description": "View the getting started guide in Spanish",
    "url": "https://dev.easybroker.com/docs/api-de-easybroker"
  },
  "security": [
    {
      "ApiKeyAuth": []
    }
  ],
  "servers": [
    {
      "url": "https://api.stagingeb.com/v1",
      "description": "API URL"
    }
  ],
  "paths": {
    "/properties": {
      "get": {
        "tags": [
          "Properties"
        ],
        "summary": "List all properties",
        "description": "Returns a list of properties from your organization.",
        "parameters": [
          {
            "$ref": "#/components/parameters/page"
          },
          {
            "$ref": "#/components/parameters/limit"
          },
          {
            "$ref": "#/components/parameters/property_types"
          },
          {
            "$ref": "#/components/parameters/property_search"
          },
          {
            "$ref": "#/components/parameters/property_statuses_search"
          },
          {
            "$ref": "#/components/parameters/property_sort_by_search"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful property list request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyList"
                }
              }
            }
          },
          "400": {
            "description": "At least one param has an invalid format",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string",
                      "example": "The properties statuses format is invalid"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/UnauthorizedError"
          }
        }
      }
    }
  },
  "components": {
    "parameters": {
      "property_types": {
        "in": "query",
        "name": "search[property_types][]",
        "required": false,
        "explode": true,
        "schema": {
          "type": "array",
          "items": {
            "type": "string",
            "example": "apartment"
          }
        }
      },
      "property_search": {
        "in": "query",
        "name": "search",
        "required": false,
        "style": "deepObject",
        "explode": true,
        "schema": {
          "$ref": "#/components/schemas/PropertySearchParams"
        }
      },
      "property_statuses_search": {
        "in": "query",
        "name": "search[statuses][]",
        "required": false,
        "explode": true,
        "schema": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "published",
              "not_published",
              "reserved",
              "sold",
              "rented",
              "suspended",
              "flagged",
              "disapproved"
            ]
          }
        }
      },
      "property_sort_by_search": {
        "in": "query",
        "name": "search[sort_by]",
        "required": false,
        "explode": true,
        "schema": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "updated_at-asc",
              "updated_at-desc"
            ]
          }
        }
      },
      "page": {
        "name": "page",
        "in": "query",
        "required": false,
        "description": "Content's page",
        "schema": {
          "type": "integer",
          "default": 1
        }
      },
      "limit": {
        "name": "limit",
        "in": "query",
        "required": false,
        "description": "Max results per page (Maximum: 50)",
        "schema": {
          "type": "integer",
          "maximum": 50,
          "default": 20
        }
      }
    },
    "responses": {
      "UnauthorizedError": {
        "description": "API key is missing or invalid",
        "content": {
          "application/json": {
            "schema": {
              "type": "object",
              "properties": {
                "error": {
                  "type": "string",
                  "example": "Your API key is invalid"
                }
              }
            }
          }
        }
      }
    },
    "schemas": {
      "Pagination": {
        "required": [
          "limit",
          "page",
          "total,",
          "next_page"
        ],
        "properties": {
          "limit": {
            "type": "integer",
            "format": "int64",
            "maximum": 50,
            "example": 20
          },
          "page": {
            "type": "integer",
            "format": "int64",
            "example": 1
          },
          "total": {
            "type": "integer",
            "format": "int64",
            "example": 1
          },
          "next_page": {
            "type": "string",
            "example": null
          }
        }
      },
      "PropertyList": {
        "properties": {
          "pagination": {
            "$ref": "#/components/schemas/Pagination"
          },
          "content": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PropertyForList"
            }
          }
        }
      },
      "PropertyForListBase": {
        "properties": {
          "public_id": {
            "type": "string",
            "example": "EB-XXX123"
          },
          "title": {
            "type": "string",
            "example": "Beautiful property in Condesa"
          },
          "title_image_full": {
            "type": "string",
            "example": "http://assets.easybroker.com/property_images/123/456/EB-010101.jpg"
          },
          "title_image_thumb": {
            "type": "string",
            "example": "http://assets.easybroker.com/property_images/123/456/EB-010101.jpg?version=1713484800&width=200"
          },
          "bedrooms": {
            "type": "integer"
          },
          "bathrooms": {
            "type": "integer"
          },
          "parking_spaces": {
            "type": "integer"
          },
          "location": {
            "type": "string",
            "example": "Condesa, Cuauhtemoc"
          },
          "property_type": {
            "type": "string",
            "example": "Apartment"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "example": "2020-03-01T23:26:53.402Z"
          }
        }
      },
      "PropertyForList": {
        "allOf": [
          {
            "properties": {
              "agent": {
                "type": "string",
                "example": "John Smith"
              }
            }
          },
          {
            "$ref": "#/components/schemas/PropertyForListBase"
          },
          {
            "properties": {
              "show_prices": {
                "type": "boolean",
                "example": true
              },
              "share_commission": {
                "type": "boolean",
                "example": true
              }
            }
          },
          {
            "properties": {
              "operations": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/PropertyOperationWithCommission"
                }
              }
            }
          }
        ]
      },
      "PropertyOperationWithCommission": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/PropertyOperationSaleOrRentalWithCommission"
          },
          {
            "$ref": "#/components/schemas/PropertyOperationTemporaryRental"
          }
        ]
      },
      "PropertyOperationSaleOrRentalWithCommission": {
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "sale",
              "rental"
            ]
          },
          "amount": {
            "type": "number",
            "format": "double",
            "example": 500000
          },
          "formatted_amount": {
            "type": "string",
            "example": "$500,000 USD"
          },
          "currency": {
            "type": "string",
            "example": "USD"
          },
          "unit": {
            "type": "string",
            "enum": [
              "total",
              "square_meter",
              "hectare"
            ],
            "description": "Some properties, like warehouses, are sold and rented per square meter. Some terrains are rented per hectare."
          },
          "commission": {
            "$ref": "#/components/schemas/PropertyCommission"
          }
        }
      },
      "PropertyCommission": {
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "percentage",
              "months",
              "amount"
            ],
            "example": "amount",
            "description": "Months type only applies for rental operation."
          },
          "value": {
            "type": "number",
            "format": "double",
            "example": 10000
          },
          "currency": {
            "type": "string",
            "example": "USD"
          }
        }
      },
      "PropertyOperationTemporaryRental": {
        "required": [
          "type",
          "currency"
        ],
        "properties": {
          "type": {
            "type": "string",
            "example": "temporary_rental"
          },
          "amount": {
            "type": "number",
            "format": "double",
            "example": 500
          },
          "formatted_amount": {
            "type": "string",
            "example": "$500 USD"
          },
          "currency": {
            "type": "string",
            "example": "USD"
          },
          "period": {
            "type": "string",
            "enum": [
              "monthly",
              "weekly",
              "daily"
            ],
            "description": "Used for temporary rentals"
          }
        }
      },
      "PropertySearchParams": {
        "type": "object",
        "description": "Optional search parameters",
        "properties": {
          "updated_after": {
            "type": "string",
            "format": "date-time",
            "example": "2020-03-01T23:26:53.402Z"
          },
          "updated_before": {
            "type": "string",
            "format": "date-time",
            "example": "2025-03-01T23:26:53.402Z"
          },
          "operation_type": {
            "type": "string",
            "enum": [
              "sale",
              "rental",
              "temporary_rental"
            ]
          },
          "min_price": {
            "type": "integer",
            "example": 500000,
            "description": "operation_type is required"
          },
          "max_price": {
            "type": "integer",
            "example": 3000000,
            "description": "operation_type is required"
          },
          "min_bedrooms": {
            "type": "integer",
            "example": 1
          },
          "min_bathrooms": {
            "type": "integer",
            "example": 1
          },
          "min_parking_spaces": {
            "type": "integer",
            "example": 1
          },
          "min_construction_size": {
            "type": "integer",
            "example": 100,
            "description": "construction size in square meters"
          },
          "max_construction_size": {
            "type": "integer",
            "example": 1000,
            "description": "construction size in square meters"
          },
          "min_lot_size": {
            "type": "integer",
            "example": 100,
            "description": "lot size in square meters"
          },
          "max_lot_size": {
            "type": "integer",
            "example": 1000,
            "description": "lot size in square meters"
          }
        }
      }
    },
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "X-Authorization",
        "description": "You can find your API key in the general settings section of your EasyBroker account. It's only accessible for account administrators."
      }
    }
  },
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "_id": {
    "buffer": {
      "0": 99,
      "1": 142,
      "2": 110,
      "3": 111,
      "4": 217,
      "5": 194,
      "6": 135,
      "7": 0,
      "8": 24,
      "9": 185,
      "10": 196,
      "11": 37
    }
  }
}
```