# Properties Query

### **Introduction**

Our property query will get you the list of properties from the respective company. We provides ability to filter the property query by externalId, propertyId, ownerId, propertyGroupId and fullSearch over property name. Please make sure the paging option is used to fetch more items.

### Property Group Query

To query a property group from Everreal use `properties` query

```graphql
type Query {
  properties(input: PropertiesFilterListPaging): [Property]
}
```

**Schema**

```graphql
input PropertiesFilterListPaging {
  filter: PropertiesFilter
  paging: GraphPaging
  sort: GraphSorting
}

input PropertiesFilter {
  id: String
  companyId: String
  propertyId: String @deprecated(reason: "propertyId is deprecated. Use id instead.")
  externalId: String
  propertyGroupId: String
  ownerId: String
  fullSearch: String
  updatedAt: IDateRange
}

input IDateRange {
  from: String
  to: String
}

input GraphPaging {
  skip: Int
  take: Int
}
input GraphSorting {
  fieldName: String
  direction: String
}

type Property {
  id: String
  objectId: String
  externalId: String
  name: String
  category: String
  subtype: String
  type: String
  ownershipType: String
  fullAddress: String
  ownerId: String
  yearBuilt: Int
  noOfStories: Int
  createdAt: DateTime
  updatedAt: DateTime
  company: Company
  address: Address
  descriptions: PropertyDescription
  owner: Owner
  listings: [Listing]
  units: [Unit]
  group: PropertyGroup
  responsibilityType: PROPERTY_RESPONSIBILITY_TYPE
  responsibleUserId: String
  responsibleUser: ResponsibleUser
}

type ResponsibleUser {
  id: String
  email: String
  firstName: String
  lastName: String
}

type Company {
  id: String
  name: String
  partnerId: String
  listings: [Listing]
}

type Address {
  street: String
  number: String
  zip: String
  city: String
  country: String
  location: GeoLocation
}

type Listing {
  id: String
  title: String
  type: String
  companyId: String
  listingResponsible: User
  contractDetails: ListingContractDetails
  coverPicture: IFile
  pictures: [IFile]
  documents: [IFile]
  floorplans: [IFile]
  company: Company
  property: Property
  unit: Unit
  createdAt: DateTime
  updatedAt: DateTime
}

type Unit {
  id: String
  objectId: String
  name: String
  category: String
  type: String
  subtype: String
  leasingStatuses: UnitLeasingStatuses
  availability: [Availability]
  leasingStatusEnum: String
  leasingStatusesEnum: [String]
  floorNumber: Float
  surface: Float
  livingSurface: Float
  hasMainStorage: Boolean
  rooms: UnitRooms
  owner: Owner
  property: Property
  createdAt: DateTime
  updatedAt: DateTime
}

type PropertyDescription {
  object: String
  amenities: String
  location: String
  other: String
}
```

***Example for property Query***

{% tabs %}
{% tab title="GraphQL" %}

```graphql
{
  properties(
    input: {
      filter: { externalId: "IE-U-32" }
      paging: { skip: 0, take: 10 }
    }
  ) {
    id
    name
    responsibleUser {
      id
      email
    }
    objectId
    category
    subtype
    type
    ownerId
    yearBuilt
    noOfStories
    units {
      id
    }
    group {
      name
    }
    responsibilityType
    responsibleUser {
      email
    }
  }
}

```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://api-docs.everreal.co/endpoints/properties/properties-query.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
