Listing Query
Last updated
Was this helpful?
Last updated
Was this helpful?
To understand what is necessary and how to use GraphQl, in Master Data page we explain what is necessary to do
type Query {
listings(input: ListingFilterListPaging): [Listing]
avgListingActivity(input: AvgActivityFilter): AvgListingActivity
listingCounts(input: ListingCountsFilter): ListingCounts
}
type AvgListingActivity {
activeListings: Int
}
type ListingCounts {
listingsMissingViewings: Int
listingsMissingContracts: Int
activeAndPublished: Int
olderThan30Days: Int
listingsInContracting: Int
listingsContractingCompleted: Int
listingsMoveinCompleted: Int
}
type Listing {
id: String
title: String
type: String
isArchived: Boolean
isActive: Boolean
companyId: String
listingResponsible: User
contractDetails: ListingContractDetails
coverPicture: IFile
pictures: [IFile]
documents: [IFile]
floorplans: [IFile]
company: Company
status: LISTING_STATUS
amenities: ListingAmenities
listingInformation: ListingInformation
availableFrom: Date
propertyId: String
property: Property
unitId: String
unit: Unit
descriptions: ListingDescription
createdAt: DateTime
updatedAt: DateTime
}
type ListingAmenities {
amenitiesIncluded: [AMENITIES_INCLUDED] # See this type under units page
parking: UnitParkingType # See this type under units page
qualityOfAmenities: String
condition: String
lastRenovationYear: Int
heatingType: String
mainEnergySource: String
energyPerformanceCertificateAvailability: ENERGY_PERFORMANCE_CERTIFICATE_AVAILABILITY
energyCertificateCreationDate: ENERGY_CERTIFICATE_CREATION_DATE
buildingEnergyRatingType: BUILDING_ENERGY_RATING_TYPE
thermalCharacteristic: Float
energyConsumptionContainsWarmWater: Boolean
energyEfficiencyClass: ENERGY_EFFICIENCY_CLASS
}
type ListingDescription {
object: String
amenities: String
location: String
other: String
}
type ListingContractDetails {
currency: String
rent: Float
totalMonthlyRent: Float
parkingRent: Float
deposit: Float
heatingCostsIncluded: Boolean
utilityCosts: Float
heatingCosts: Float
petsAllowed: String
displayAmount: Float
hasCommission: Boolean
commission: String
commissionNote: String
commissionType: String
}
enum UNIT_TYPE {
APARTMENT
HOUSE
PARKING
OFFICE
STORE
GASTRONOMY
INDUSTRY
SPECIAL_PURPOSE
LAN
}
enum LISTING_TYPE {
RENT_APARTMENT
SELL_APARTMENT
RENT_SHORT_TERM_APARTMENT
RENT_HOUSE
SELL_HOUSE
RENT_PARKING
SELL_PARKING
RENT_RESIDENTIAL_LAND
SELL_RESIDENTIAL_LAND
RENT_OFFICE
SELL_OFFICE
RENT_STORE
SELL_STORE
RENT_GASTRONOMY
SELL_GASTRONOMY
RENT_INDUSTRY
SELL_INDUSTRY
RENT_SPECIAL_PURPOSE
SELL_SPECIAL_PURPOSE
RENT_COMMERCIAL_LAND
SELL_COMMERCIAL_LAND
}
enum LISTING_STATUS {
OPEN_FOR_CANDIDATES
OPEN_FOR_APPLICANTS
CONTRACTING_STARTED
CONTRACTING_COMPLETED
MOVE_IN_COMPLETED
IS_INACTIVE
IS_ARCHIVED
}
enum CANDIDATE_SOURCE {
APPLIED_EVERREAL
MANUAL_EVERREAL_CANDIDATE
MANUAL_EVERREAL_SCHEDULED
MANUAL_EVERREAL_APPLICANT
IMMOSCOUT24
WG_GESUCHT
IMMOWELT
IMMONET
IVD24
NWZ
OPENIMMO_GENERIC
EBAY
OFFLINE_CONTRACT
}
input ListingFilter {
from: Date
to: Date
candidateSources: [CANDIDATE_SOURCE]
companyId: String
propertyGroupId: String
propertyId: String
ownerId: String
listingId: String
external: Boolean
fullSearch: String
isArchived: Boolean
isActive: Boolean
internalAdvertiseId: String
availableFrom: Date
externalPropertyId: String
scoringTemplateId: String
propertyCity: String
propertyName: String
propertyStreet: String
listingType: LISTING_TYPE
status: LISTING_STATUS
responsibleFullName: String
unitName: String
unitId: String
externalUnitId: String
unitType: UNIT_TYPE
priceMin: Float
priceMax: Float
roomsMin: Int
roomsMax: Int
surfaceMin: Int
surfaceMax: Int
livingSurfaceMin: Int
livingSurfaceMax: Int
heightMax: Int
heightMin: Int
listingResponsibleUserId: String
projectId: String
candidateEmail: String
candidateIsWinner: Boolean
}
input ListingFilterListPaging {
filter: ListingFilter
paging: GraphPaging
sort: GraphSorting
}
input ListingCountsFilter {
userId: String
companyId: String
}
Usage:
query listingsQuery(
$from: Date
$to: Date
$companyId: String
$propertyId: String
$propertyGroupId: String
$ownerId: String
$listingId: String
$isArchived: Boolean
$isActive: Boolean
$fullSearch: String
) {
listings(
input: {
paging: { take: 100, skip: 0 }
filter: {
from: $from
to: $to
companyId: $companyId
propertyGroupId: $propertyGroupId
propertyId: $propertyId
ownerId: $ownerId
listingId: $listingId
isArchived: $isArchived
isActive: $isActive
fullSearch: $fullSearch
}
}
) {
id
title
type
isArchived
isActive
companyId
amenities{
amenitiesIncluded
qualityOfAmenities
}
floorplans {
name
resourceId
resourcePath
}
property {
objectId
name
category
fullAddress
}
unit {
id
objectId
name
}
contractDetails {
currency
rent
totalMonthlyRent
}
}
}
Variables:
You can used any variable in ListingFilter
to
{
"listingId": "fce90f3a-b8e4-4bc6-b6c0-2539acef5cdc",
"propertyId": "e7cde0a1-9708-4fce-b36e-d8b8bcaa695f",
"isActive": true,
"isArchived": false,
"fullSearch": "Hermannstrasse"
}