Create Property

  • API: createProperty

  • Purpose & Use Cases: You can use this API endpoint to create a property; make sure to set its bookingType to BOOK.

  • Request:

Attribute Name Data Type Required Details
bookingType PropertyBookingJourney Yes Type of the booking; Possible values: BOOK CONNECT LIST
apartmentType ApartmentType Yes Type of the apartment; Possible values: CO_LIVING APARTMENTS HMO HOUSE_SHARE HOME_STAY STUDENT_RESIDENCE_HALLS DORMITORY PURPOSE_BUILT_STUDENT_ACCOMMODATION HOUSE HOSTEL HOTEL APART_HOTEL MULTIFAMILY LODGE CONDOS TOWNHOUSE_HOME BUNGALOW TERRACE VILLA SERVICED_APARTMENT DUPLEX
name NonEmptyString Yes The name of the property
addressLine1 NonEmptyString Yes Primary street address or main location information
addressLine2 String No Additional address details
zipCode NonEmptyString Yes Postal code for the property’s address
cityId DecodedCityID Yes Unique identifier of the city for the property
latitude Float No Latitude is used together with longitude to pinpoint the exact location of a property on a map
longitude Float No Longitude is used together with Latitude to pinpoint the exact location of a property on a map
tagLine NonEmptyString No A short phrase in English that best describes the property in one sentence
tagLineCn String No A short phrase in Chinese that best describes the property in one sentence
description NonEmptyString No Description for the property
descriptionCn String No Description for the property in Chinese
externalId NonEmptyString No Unique external identifier for the property
cancellationProcess String No Text to explain the cancellation terms and process
cancellationPeriodType CancellationPeriodType No Kind of cancellation period type; Possible values: NON_REFUNDABLE BEFORE_MOVE_IN UNTIL_MOVE_IN_DAY AFTER_BOOKING_CONFIRMED
cancellationPeriodValue String No Days before or after the target date
noVisaNoPay Boolean No No need to pay if the visa is not granted
noPlaceNoPay Boolean No No need to pay if a place is not granted
  QUERY
mutation CreateProperty($input: CreatePropertyInput!) {
  createProperty(input: $input) {
    property {
      id
      externalId
      name
      slug
      status
      latitude
      longitude
      landlordId
      cityId
      country
      currency
      rentCycle
      bookingType
      zipCode
      addressLine1
      addressLine2
      apartmentType
      tagLineCn
      tagLine
      descriptionCn
      description
      propertyTerms {
        id
        title
        url
        validFrom
        validTill
        fileName
        status
      }
      facilities {
        features {
          slug
          label
          name
          group
          type
          checked
        }
        bills {
          slug
          label
          name
          group
          type
          checked
        }
        securityAndSafety {
          slug
          label
          name
          group
          type
          checked
        }
        propertyRules {
          slug
          label
          name
          group
          type
          checked
        }
      }
      links {
        id
        propertyId
        link
        area
        enabled
      }
      images {
        id
        type
        category
        contentType
        filename
        imageHash
        active
        status
        hero
      }
      videos {
        id
        path
        size
        videoHash
        fileName
        active
        status
      }
      propertyLink
      floorPlans {
        generalFloorPlanImages {
          id
          type
          category
          contentType
          filename
          imageHash
          active
          status
          hero
        }
        specificFloorPlans {
          id
          propertyId
          floorIndex
          block
          floorPlanImages {
            id
            type
            category
            contentType
            filename
            imageHash
            active
            status
            hero
          }
        }
      }
      destinationUniversities {
        id
        slug
        name
        originalName
        latitude
        longitude
        rank
        citySlug
      }
      documentations {
        label
        slug
        name
        check
      }
      confirmDueHours
      paymentDueHours
    }
  }
}

GRAPHQL VARIABLES
{
  "input": {
    "name": "open api create property name 03",
    "latitude": 51.1536621,
    "longitude": -0.1820629,
    "cityId": "eyJ0eXBlIjoiQ2l0eSIsImlkIjo0MTJ9",
    "apartmentType": "STUDENT_ACCOMMODATION",
    "bookingType": "BOOK",
    "externalId":"create property externalId",
    "zipCode":"RH6 0NP",
    "addressLine1":"Horley, Gatwick ",
    "noVisaNoPay": true,
    "noPlaceNoPay": true
  }
}
  
  • Response:
  {
    "data": {
        "createProperty": {
            "property": {
                "id": "eyJ0eXBlIjoiUHJvcGVydHkiLCJpZCI6MTA0NDg4OH0=",
                "externalId": "create property externalId",
                "name": "open api create property name 03",
                "slug": "open-api-create-property-name-03",
                "status": "NEW",
                "latitude": 51.1537,
                "longitude": -0.182063,
                "landlordId": "eyJ0eXBlIjoiTGFuZGxvcmQiLCJpZCI6NDEyN30=",
                "cityId": "eyJ0eXBlIjoiQ2l0eSIsImlkIjo0MTJ9",
                "country": "GB",
                "currency": "GBP",
                "rentCycle": "WEEKLY",
                "bookingType": "BOOK",
                "zipCode": "RH6 0NP",
                "addressLine1": "Horley, Gatwick ",
                "addressLine2": null,
                "apartmentType": "STUDENT_ACCOMMODATION",
                "tagLineCn": null,
                "tagLine": null,
                "descriptionCn": null,
                "description": null,
                "propertyTerms": [],
                "facilities": null,
                "links": [],
                "images": [],
                "videos": null,
                "propertyLink": "https://undefined/uk/london/p/open-api-create-property-name-03?preview=yes&update_cache=yes",
                "floorPlans": {
                    "generalFloorPlanImages": [],
                    "specificFloorPlans": []
                },
                "destinationUniversities": [],
                "documentations": [
                    {
                        "label": "Government-issued ID",
                        "slug": "government_issued_ID",
                        "name": "Government-issued ID",
                        "check": false
                    },
                    {
                        "label": "Guarantor's income proof",
                        "slug": "guarantors_income_proof",
                        "name": "Guarantor's income proof",
                        "check": false
                    },
                    {
                        "label": "Proof of enrollment",
                        "slug": "proof_of_enrollment",
                        "name": "Proof of enrollment",
                        "check": false
                    },
                    {
                        "label": "Visa",
                        "slug": "visa",
                        "name": "Visa",
                        "check": false
                    }
                ],
                "confirmDueHours": "HOURS_72",
                "paymentDueHours": "HOURS_72"
            }
        }
    }
}
  
  • Error Message:
Error Message Description
input.name already exist Unable to create a property because a property with the same name already exists in the specified city
input.tagLine and input.description must set when bookingType is BOOKING_WITH_CONSULTANT Unable to create a property because when bookingType = BOOKING_WITH_CONSULTANT, both tagLine and description must be provided

Update Property

  • API: updateProperty

  • Purpose & Use Cases: You can use this API endpoint to update a property’s basic information.

  • Request:

Attribute Name Data Type Required Details
propertyId DecodedPropertyID Yes Unique identifier for the property
name NonEmptyString No The name of the property
addressLine1 NonEmptyString No Primary street address or main location information
addressLine2 String No Additional address details
zipCode NonEmptyString No Postal code for the property’s address
latitude Float No Latitude is used together with longitude to pinpoint the exact location of a property on a map
longitude Float No Longitude is used together with Latitude to pinpoint the exact location of a property on a map
tagLine NonEmptyString No A short phrase in English that best describes the property in one sentence
tagLineCn String No A short phrase in Chinese that best describes the property in one sentence
description NonEmptyString No Description for the property
descriptionCn String No Description for the property in Chinese
externalId NonEmptyString No Unique external identifier for the property
cancellationPeriodType CancellationPeriodType No Kind of cancellation period type; Possible values: NON_REFUNDABLE BEFORE_MOVE_IN UNTIL_MOVE_IN_DAY AFTER_BOOKING_CONFIRMED
cancellationPeriodValue String No Days before or after the target date
  QUERY
mutation UpdateProperty($input: UpdatePropertyInput!) {
  updateProperty(input: $input) {
    property {
      id
      externalId
      name
      slug
      status
      latitude
      longitude
      landlordId
      cityId
      country
      currency
      rentCycle
      bookingType
      zipCode
      addressLine1
      addressLine2
      apartmentType
      tagLineCn
      tagLine
      descriptionCn
      description
      propertyTerms {
        id
        title
        url
        validFrom
        validTill
        fileName
        status
      }
      facilities {
        features {
          slug
          label
          name
          group
          type
          checked
        }
        bills {
          slug
          label
          name
          group
          type
          checked
        }
        securityAndSafety {
          slug
          label
          name
          group
          type
          checked
        }
        propertyRules {
          slug
          label
          name
          group
          type
          checked
        }
      }
      links {
        id
        propertyId
        link
        area
        enabled
      }
      images {
        id
        type
        category
        contentType
        filename
        imageHash
        active
        status
        hero
      }
      videos {
        id
        path
        size
        videoHash
        fileName
        active
        status
      }
      propertyLink
      floorPlans {
        generalFloorPlanImages {
          id
          type
          category
          contentType
          filename
          imageHash
          active
          status
          hero
        }
        specificFloorPlans {
          id
          propertyId
          floorIndex
          block
          floorPlanImages {
            id
            type
            category
            contentType
            filename
            imageHash
            active
            status
            hero
          }
        }
      }
      destinationUniversities {
        id
        slug
        name
        originalName
        latitude
        longitude
        rank
        citySlug
      }
      documentations {
        label
        slug
        name
        check
      }
      confirmDueHours
      paymentDueHours
    }
  }
}

GRAPHQL VARIABLES
{
  "input": {
    "propertyId": "eyJ0eXBlIjoiUHJvcGVydHkiLCJpZCI6NTc1fQ",
    "externalId":"update property externalId",
    "addressLine1": "Horley, Gatwick ",
    "addressLine2": "Horley, Gatwick",
    "description": "update property description",
    "descriptionCn": "update property descriptionCn",
    "latitude": 51.1536621,
    "longitude": -0.1820629,
    "name": "update property name",
    "tagLine": "update property tagLine",
    "tagLineCn": "update property tagLineCn",
    "zipCode": "RH6 0NP"
  }
}
  
  • Response:
  {
    "data": {
        "updateProperty": {
            "property": {
                "id": "eyJ0eXBlIjoiUHJvcGVydHkiLCJpZCI6MTA0NDg4OH0=",
                "externalId": "update property externalId",
                "name": "update property name",
                "slug": "open-api-create-property-name-03",
                "status": "EDITING",
                "latitude": 51.1537,
                "longitude": -0.182063,
                "landlordId": "eyJ0eXBlIjoiTGFuZGxvcmQiLCJpZCI6NDEyN30=",
                "cityId": "eyJ0eXBlIjoiQ2l0eSIsImlkIjo0MTJ9",
                "country": "GB",
                "currency": "GBP",
                "rentCycle": "WEEKLY",
                "bookingType": "BOOK",
                "zipCode": "RH6 0NP",
                "addressLine1": "Horley, Gatwick ",
                "addressLine2": "Horley, Gatwick",
                "apartmentType": "STUDENT_ACCOMMODATION",
                "tagLineCn": "update property tagLineCn",
                "tagLine": "update property tagLine",
                "descriptionCn": "update property descriptionCn",
                "description": "update property description",
                "propertyTerms": [],
                "facilities": null,
                "links": [],
                "images": [
                    {
                        "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE1MjU0M30=",
                        "type": "PROPERTY_IMAGE",
                        "category": "MAP",
                        "contentType": "image/png",
                        "filename": "mapbox-1748500622",
                        "imageHash": "22641c6c057d195bafcd9f67722f211e",
                        "active": false,
                        "status": "PUBLIC",
                        "hero": false
                    }
                ],
                "videos": null,
                "propertyLink": "https://undefined/uk/london/p/open-api-create-property-name-03?preview=yes&update_cache=yes",
                "floorPlans": {
                    "generalFloorPlanImages": [],
                    "specificFloorPlans": []
                },
                "destinationUniversities": [],
                "documentations": [
                    {
                        "label": "Government-issued ID",
                        "slug": "government_issued_ID",
                        "name": "Government-issued ID",
                        "check": false
                    },
                    {
                        "label": "Guarantor's income proof",
                        "slug": "guarantors_income_proof",
                        "name": "Guarantor's income proof",
                        "check": false
                    },
                    {
                        "label": "Proof of enrollment",
                        "slug": "proof_of_enrollment",
                        "name": "Proof of enrollment",
                        "check": false
                    },
                    {
                        "label": "Visa",
                        "slug": "visa",
                        "name": "Visa",
                        "check": false
                    }
                ],
                "confirmDueHours": "HOURS_72",
                "paymentDueHours": "HOURS_72"
            }
        }
    }
}
  

Get Property

  • API: getProperty

  • Purpose & Use Cases: You can use this API endpoint to retrieve the details of a property.

  • Request:

Attribute Name Data Type Required Details
id ID No Unique identifier for the property
propertyExternalId NonEmptyString No Unique external identifier for the property
  QUERY
query Property($getPropertyId: ID, $propertyExternalId: NonEmptyString) {
    getProperty(id: $getPropertyId, propertyExternalId: $propertyExternalId) {
        property {
            id
            name
            slug
            status
            addressCity
            latitude
            longitude
            landlordId
            cityId
            country
            currency
            rentCycle
            bookingType
            zipCode
            addressLine1
            addressLine2
            apartmentType
            tagLineCn
            tagLine
            descriptionCn
            description
            propertyLink
            bookNowFeesEnabled
            confirmDueHours
            paymentDueHours
            externalId
            cancellationPeriodType
            cancellationPeriodValue
            cancellationProcess
            propertyTerms {
                id
                title
                url
                validFrom
                validTill
                fileName
                status
            }
            facilities {
                features {
                    slug
                    label
                    name
                    group
                    type
                    checked
                }
                bills {
                    slug
                    label
                    name
                    group
                    type
                    checked
                }
                securityAndSafety {
                    slug
                    label
                    name
                    group
                    type
                    checked
                }
                propertyRules {
                    slug
                    label
                    name
                    group
                    type
                    checked
                }
            }
            links {
                id
                propertyId
                link
                area
                enabled
            }
            images {
                id
                type
                category
                contentType
                filename
                imageHash
                active
                status
                hero
                height
                width
                size
                position
                source
            }
            videos {
                id
                path
                size
                videoHash
                fileName
                active
                status
            }
            bookNowFees {
                id
                name
                calculationType
                calculationValue
                paymentProcessingFee
            }
            floorPlans {
                generalFloorPlanImages {
                    id
                    type
                    category
                    contentType
                    filename
                    imageHash
                    active
                    status
                    hero
                    height
                    width
                    size
                    position
                    source
                }
                specificFloorPlans {
                    id
                    propertyId
                    floorIndex
                    block
                }
            }
            universities {
                id
                slug
                name
                originalName
                latitude
                longitude
                rank
                citySlug
            }
            destinationUniversities {
                id
                slug
                name
                originalName
                latitude
                longitude
                rank
                citySlug
            }
            documentations {
                label
                slug
                name
                check
            }
        }
    }
}

GRAPHQL VARIABLES
{
  "propertyExternalId": "update property externalId"
}
  
  • Response:
  {
    "data": {
        "getProperty": {
            "property": {
                "id": "eyJ0eXBlIjoiUHJvcGVydHkiLCJpZCI6MTA0NDc3Nn0=",
                "name": "test transfer property 04",
                "slug": "test-transfer-property-04",
                "status": "PUBLISHED",
                "addressCity": "Sydney",
                "latitude": 51.5079,
                "longitude": -0.0877321,
                "landlordId": "eyJ0eXBlIjoiTGFuZGxvcmQiLCJpZCI6NDEyN30=",
                "cityId": "eyJ0eXBlIjoiQ2l0eSIsImlkIjo0MTJ9",
                "country": "GB",
                "currency": "GBP",
                "rentCycle": "WEEKLY",
                "bookingType": "BOOK",
                "zipCode": "EC4R 9HA",
                "addressLine1": "London ",
                "addressLine2": null,
                "apartmentType": "HMO",
                "tagLineCn": null,
                "tagLine": null,
                "descriptionCn": null,
                "description": null,
                "propertyLink": "https://undefined/uk/london/p/test-transfer-property-04",
                "bookNowFeesEnabled": false,
                "confirmDueHours": "HOURS_72",
                "paymentDueHours": "HOURS_72",
                "externalId": "update property externalId",
                "cancellationPeriodType": "AFTER_BOOKING_CONFIRMED",
                "cancellationPeriodValue": 9,
                "cancellationProcess": null,
                "propertyTerms": [],
                "facilities": {
                    "features": [
                        {
                            "slug": "laundry",
                            "label": "Laundry Facilities in Student's Apartment",
                            "name": "Laundry Facilities in Student's Apartment",
                            "group": "laundry_facilities",
                            "type": "PROPERTY",
                            "checked": true
                        },
                        {
                            "slug": "refrigrator",
                            "label": "Refrigerator",
                            "name": "Refrigerator",
                            "group": "",
                            "type": "PROPERTY",
                            "checked": true
                        }
                    ],
                    "bills": [],
                    "securityAndSafety": [],
                    "propertyRules": []
                },
                "links": [],
                "images": [
                    {
                        "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE0OTU3N30=",
                        "type": "PROPERTY_IMAGE",
                        "category": "MAP",
                        "contentType": "image/png",
                        "filename": "mapbox-1721895297",
                        "imageHash": "fc396e3e20163fef55aa930d9a2fc1ec",
                        "active": false,
                        "status": "PUBLIC",
                        "hero": false,
                        "height": 240,
                        "width": 1008,
                        "size": 21201,
                        "position": null,
                        "source": "mapbox-1721895297-fc396e3e20163fef55aa930d9a2fc1ec.png"
                    },
                    {
                        "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE0OTU5Nn0=",
                        "type": "PROPERTY_IMAGE",
                        "category": "GENERAL",
                        "contentType": "image/jpeg",
                        "filename": "WechatIMG1",
                        "imageHash": "114a54cfa02e8ed1e2978e8612da92d3",
                        "active": true,
                        "status": "APPROVED",
                        "hero": true,
                        "height": 1024,
                        "width": 1024,
                        "size": 76640,
                        "position": 0,
                        "source": "WechatIMG1-114a54cfa02e8ed1e2978e8612da92d3.jpg"
                    }
                ],
                "videos": null,
                "bookNowFees": [],
                "floorPlans": {
                    "generalFloorPlanImages": [],
                    "specificFloorPlans": []
                },
                "universities": [],
                "destinationUniversities": [],
                "documentations": [
                    {
                        "label": "Government-issued ID",
                        "slug": "government_issued_ID",
                        "name": "Government-issued ID",
                        "check": false
                    },
                    {
                        "label": "Guarantor's income proof",
                        "slug": "guarantors_income_proof",
                        "name": "Guarantor's income proof",
                        "check": false
                    },
                    {
                        "label": "Proof of enrollment",
                        "slug": "proof_of_enrollment",
                        "name": "Proof of enrollment",
                        "check": false
                    },
                    {
                        "label": "Visa",
                        "slug": "visa",
                        "name": "Visa",
                        "check": false
                    }
                ]
            }
        }
    }
}
  
  • Error Message:
Error Message Description
only one id is needed Unable to retrieve property data because both args.id and args.externalId were provided simultaneously. Only one identifier is allowed
id is required — at least one id must be provided Unable to retrieve property data because neither args.id nor externalId was provided
externalPropertyId is required when using externalId on this endpoint Unable to retrieve property data because externalId is provided without specifying propertyExternalId

Get Properties

  • API: getProperties

  • Purpose & Use Cases: You can use this API endpoint to retrieve the list of properties.

  • Request:

Attribute Name Data Type Required Details
pageNumber Int No The number of the page
pageSize Int No The size of the page
sortBy PropertySortBy No The field for property sorting; Possible values: UPDATED_AT CREATED_AT
sortDirection SortDirection No The propertySortDirection; Possible values: ASCENDING DESCENDING
name String No The name of the property
apartmentType ApartmentType No Type of the apartment; Possible values: CO_LIVING APARTMENTS HMO HOUSE_SHARE HOME_STAY STUDENT_RESIDENCE_HALLS DORMITORY PURPOSE_BUILT_STUDENT_ACCOMMODATION HOUSE HOSTEL HOTEL APART_HOTEL MULTI_FAMILY LODGE CONDOS TOWNHOUSE_HOME BUNGALOW TERRACE VILLA SERVICED_APARTMENT DUPLEX
cityId DecodedCityID No Unique identifier of the city for the property
country String No Property country name
bookingType BookingJourney No Type of the booking; Possible values: BOOK CONNECT LIST CONNECT_STUDENT_SUITE BOOKING_WITH_CONSULTANT
status PropertyStatus No Property status; Possible values: NEW EDITING PUBLISHED UNPUBLISHED
  QUERY
query GetProperties(
    $pageSize: Int,
    $pageNumber: Int,
    $sortBy: PropertySortBy,
    $sortDirection: SortDirection
) {
  getProperties(
    pageSize: $pageSize,
    pageNumber: $pageNumber,
    sortBy: $sortBy,
    sortDirection: $sortDirection
  ) {
    pageInfo {
      total
      totalPages
      currentPage
      pageSize
    }
    properties {
      id
      externalId
      name
      slug
      status
      addressCity
      latitude
      longitude
      landlordId
      cityId
      country
      currency
      rentCycle
      bookingType
      zipCode
      addressLine1
      addressLine2
      apartmentType
      tagLineCn
      tagLine
      descriptionCn
      description
      propertyTerms {
        id
        title
        url
        validFrom
        validTill
        fileName
        status
      }
      facilities {
        features {
          slug
          label
          name
          group
          type
          checked
        }
        bills {
          slug
          label
          name
          group
          type
          checked
        }
        securityAndSafety {
          slug
          label
          name
          group
          type
          checked
        }
        propertyRules {
          slug
          label
          name
          group
          type
          checked
        }
      }
      links {
        id
        propertyId
        link
        area
        enabled
      }
      images {
        id
        type
        category
        contentType
        filename
        imageHash
        active
        status
        hero
      }
      videos {
        id
        path
        size
        videoHash
        fileName
        active
        status
      }
      propertyLink
      floorPlans {
        generalFloorPlanImages {
          id
          type
          category
          contentType
          filename
          imageHash
          active
          status
          hero
        }
        specificFloorPlans {
          id
          propertyId
          floorIndex
          block
          floorPlanImages {
            id
            type
            category
            contentType
            filename
            imageHash
            active
            status
            hero
          }
        }
      }
      destinationUniversities {
        id
        slug
        name
        originalName
        latitude
        longitude
        rank
        citySlug
      }
      documentations {
        label
        slug
        name
        check
      }
      confirmDueHours
      paymentDueHours
    }
  }
}

GRAPHQL VARIABLES

{
  "pageSize": 1,
  "pageNumber": 1,
  "sortBy": "UPDATED_AT",
  "sortDirection": "DESCENDING"
}
  
  • Response:
  {
    "data": {
        "getProperties": {
            "pageInfo": {
                "total": 27,
                "totalPages": 27,
                "currentPage": 1,
                "pageSize": 1
            },
            "properties": [
                {
                    "id": "eyJ0eXBlIjoiUHJvcGVydHkiLCJpZCI6MTA0NDc3M30=",
                    "externalId": null,
                    "name": "test transfer property 01",
                    "slug": "test-transfer-property-01",
                    "status": "PUBLISHED",
                    "addressCity": "Sydney",
                    "latitude": 51.5072,
                    "longitude": -0.127586,
                    "landlordId": "eyJ0eXBlIjoiTGFuZGxvcmQiLCJpZCI6NDEyN30=",
                    "cityId": "eyJ0eXBlIjoiQ2l0eSIsImlkIjo0MTJ9",
                    "country": "GB",
                    "currency": "GBP",
                    "rentCycle": "WEEKLY",
                    "bookingType": "BOOK",
                    "zipCode": "ee",
                    "addressLine1": "London",
                    "addressLine2": null,
                    "apartmentType": "STUDENT_ACCOMMODATION",
                    "tagLineCn": "aaa",
                    "tagLine": "bbb",
                    "descriptionCn": "<p>c</p>",
                    "description": "<p>c</p>",
                    "propertyTerms": [
                        {
                            "id": "eyJ0eXBlIjoiUHJvcGVydHlUZXJtIiwiaWQiOjM0OH0=",
                            "title": "fancey test",
                            "url": "https://storm-frontend-cdn.dandythrust.com/payment-terms/92959cfd-c588-4476-9f41-f74047fab1ad-8b5a062c-4e61-4772-858c-d79f5d1b23d3-CRM+Cancellation+Policy++2024-2025_England+and+Wales.pdf",
                            "validFrom": "2025-03-25",
                            "validTill": null,
                            "fileName": "8b5a062c-4e61-4772-858c-d79f5d1b23d3-CRM+Cancellation+Policy++2024-2025_England+and+Wales.pdf",
                            "status": "ACTIVE"
                        }
                    ],
                    "facilities": {
                        "features": [
                            {
                                "slug": "wifi",
                                "label": "Wifi",
                                "name": "Wifi",
                                "group": "",
                                "type": "PROPERTY",
                                "checked": true
                            },
                            {
                                "slug": "streaming_services_in_common_area",
                                "label": "Streaming Services",
                                "name": "Streaming Services",
                                "group": null,
                                "type": "PROPERTY",
                                "checked": true
                            }
                        ],
                        "bills": [],
                        "securityAndSafety": [],
                        "propertyRules": []
                    },
                    "links": [],
                    "images": [
                        {
                            "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE0OTU3NH0=",
                            "type": "PROPERTY_IMAGE",
                            "category": "MAP",
                            "contentType": "image/png",
                            "filename": "mapbox-1721803824",
                            "imageHash": "2bfc0e2a499e262e38027078694819a9",
                            "active": false,
                            "status": "PUBLIC",
                            "hero": false
                        },
                        {
                            "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE0OTU3OX0=",
                            "type": "PROPERTY_IMAGE",
                            "category": "GENERAL",
                            "contentType": "image/jpeg",
                            "filename": "49b8da4f-9037-4158-a869-65e92da1d736_1721728892756589130~tplv-a9rns2rl98-web-image",
                            "imageHash": "31b6b9d4b6417f541f3cbde398f6b46c",
                            "active": true,
                            "status": "APPROVED",
                            "hero": true
                        },
                        {
                            "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE0OTgwNH0=",
                            "type": "PROPERTY_IMAGE",
                            "category": "BUILDING_EXTERIOR",
                            "contentType": "image/jpeg",
                            "filename": "34f25788bb545e6fadfa3f3cf3d322ed-e08b5422a70a210ae763ef74420f8845",
                            "imageHash": "514a3707426406cc54dd29e34f837d75",
                            "active": true,
                            "status": "APPROVED",
                            "hero": false
                        },
                        {
                            "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE0OTgwNn0=",
                            "type": "PROPERTY_IMAGE",
                            "category": "COMMON_OUTDOOR_SPACES",
                            "contentType": "image/png",
                            "filename": "h",
                            "imageHash": "5a7632a822fcd62df328a81a4f8a01b3",
                            "active": true,
                            "status": "APPROVED",
                            "hero": false
                        },
                        {
                            "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE0OTgwN30=",
                            "type": "PROPERTY_IMAGE",
                            "category": "GENERAL",
                            "contentType": "image/png",
                            "filename": "h",
                            "imageHash": "5a7632a822fcd62df328a81a4f8a01b3",
                            "active": true,
                            "status": "APPROVED",
                            "hero": false
                        },
                        {
                            "id": "eyJ0eXBlIjoiSW1hZ2UiLCJpZCI6MTE0OTgwOX0=",
                            "type": "PROPERTY_IMAGE",
                            "category": "GENERAL",
                            "contentType": "image/png",
                            "filename": "815354_af4c96ef-dc54-4fc1-a3df-f92c4ee54351_Screenshot (5315)",
                            "imageHash": "e810d8b063b532976889b4065a9b1d5e",
                            "active": true,
                            "status": "APPROVED",
                            "hero": false
                        }
                    ],
                    "videos": null,
                    "propertyLink": "https://undefined/uk/london/p/test-transfer-property-01",
                    "floorPlans": {
                        "generalFloorPlanImages": [],
                        "specificFloorPlans": []
                    },
                    "destinationUniversities": [],
                    "documentations": [
                        {
                            "label": "Government-issued ID",
                            "slug": "government_issued_ID",
                            "name": "Government-issued ID",
                            "check": false
                        },
                        {
                            "label": "Guarantor's income proof",
                            "slug": "guarantors_income_proof",
                            "name": "Guarantor's income proof",
                            "check": false
                        },
                        {
                            "label": "Proof of enrollment",
                            "slug": "proof_of_enrollment",
                            "name": "Proof of enrollment",
                            "check": false
                        },
                        {
                            "label": "Visa",
                            "slug": "visa",
                            "name": "Visa",
                            "check": false
                        }
                    ],
                    "confirmDueHours": null,
                    "paymentDueHours": null
                }
            ]
        }
    }
}
  

Check Publish Property

  • API: checkPublishProperty

  • Purpose & Use Cases: You can use this API endpoint to check if a property can be published.

  • Request:

Attribute Name Data Type Required Details
propertyId DecodedPropertyID Yes Unique identifier for the property
  QUERY

query CheckPublishProperty($input: CheckPublishPropertyInput!) {
  checkPublishProperty(input: $input) {
    success
    check
  }
}

GRAPHQL VARIABLES
{
  "input": {
    "propertyId": "eyJ0eXBlIjoiUHJvcGVydHkiLCJpZCI6NTc1fQ"
  }
}
  
  • Response:
  {
    "data": {
        "checkPublishProperty": {
            "success": true,
            "check": {
                "dueHours": {
                    "msg": "ok",
                    "status": true
                },
                "image": {
                    "msg": "ok",
                    "status": true
                },
                "rateAvailability": {
                    "msg": "ok",
                    "status": true
                },
                "contract": {
                    "msg": "ok",
                    "status": true
                },
                "commission": {
                    "msg": "ok",
                    "status": true
                },
                "paymentPlan": {
                    "msg": "ok",
                    "status": true
                }
            }
        }
    }
}
  

Property object

Attribute Name Data Type Details
id ID Unique identifier for the object
name String Property name
slug String Property slug, automatically generated from name
status PropertyStatus Property status; Possible values: NEW EDITING PUBLISHED UNPUBLISHED
addressCity String The physical geographic address of the property
latitude Float Latitude is used together with longitude to pinpoint the exact location of a property on a map
longitude Float Longitude is used together with Latitude to pinpoint the exact location of a property on a map
landlordId ID Unique identifier of the property landlord
cityId DecodedCityID Unique identifier of the city for the property, The city in which the property is sold on the Student.com platform
country String Property country name
currency String Alpha-3 currency code which generated by country
rentCycle BillingCycle Billing cycle which generated by country; Possible values: DAILY WEEKLY MONTHLY
bookingType BookingJourney Type of the booking; Possible values: BOOK CONNECT LIST CONNECT_STUDENT_SUITE BOOKING_WITH_CONSULTANT
addressLine1 String Primary street address or main location information
addressLine2 String Additional address details
zipCode String Postal code for the property’s address
apartmentType AllApartmentType Type of the apartment; Possible values: HOTEL_HOSTEL LONG_TAIL MULTI_FAMILY REAL STUDENT_ACCOMMODATION CO_LIVING APARTMENTS HMO HOUSE_SHARE HOME_STAY STUDENT_RESIDENCE_HALLS DORMITORY PURPOSE_BUILT_STUDENT_ACCOMMODATION HOUSE HOSTEL HOTEL APART_HOTEL MULTIFAMILY LODGE CONDOS TOWNHOUSE_HOME BUNGALOW TERRACE VILLA SERVICED_APARTMENT DUPLEX
tagLineCn String A short phrase in Chinese that best describes the property in one sentence
tagLine String A short phrase in English that best describes the property in one sentence
descriptionCn String Property description in Chinese
description String Property description in English
facilities PropertyFacilities Property facilities;

PropertyFacilities is an object includes,
features: PropertyFacility[],
bills: PropertyFacility[],
securityAndSafety: PropertyFacility[],
propertyRules: PropertyFacility[];

PropertyFacility is an object includes,
slug: String,
label: String,
name: String,
group: String,
type: FacilityType,
checked: Boolean;

FacilityType is the type of Facility; Possible values: PROPERTY UNIT_TYPE
documentations Documentation File types bound through the setPropertyDocumentations interface
universities University The Property is easily accessible from several universities
destinationUniversities University Only accept students who attend certain universities
cancellationPeriodType CancellationPeriodType Kind of cancellation period type; Possible values: NON_REFUNDABLE BEFORE_MOVE_IN UNTIL_MOVE_IN_DAY AFTER_BOOKING_CONFIRMED
cancellationPeriodValue String Days before or after the target date
cancellationProcess String Process of cancellation in details
confirmDueHours PropertyDueHours Hours before a booking must be confirmed; Possible values: HOURS_24 HOURS_36 HOURS_48 HOURS_60 HOURS_72 HOURS_96
paymentDueHours PropertyDueHours Hours before a payment must be made; Possible values: HOURS_24 HOURS_36 HOURS_48 HOURS_60 HOURS_72 HOURS_96
paymentDueHours PropertyDueHours Hours before a payment must be made; Possible values: HOURS_24 HOURS_36 HOURS_48 HOURS_60 HOURS_72 HOURS_96
floorPlans PropertyFloorPlan The floor plans associated with a property;

PropertyFloorPlan is an object includes,
generalFloorPlanImages: Image[],
specificFloorPlans: FloorPlan[]!;

FloorPlan is an object include,
id: ID,
propertyId: ID,
floorIndex: Int!,
block: String!,
floorPlanImages: Image[];
propertyLink String The URL linked to the property
propertyTerms propertyTerms[] The terms of the property;

PropertyTerm is an object includes,
id: ID!,
title: String!,
url: String!,
validFrom: Date,
validTill: Date,
fileName: String,
status: PropertyTermStatus;

PropertyTermStatus has possible values: ACTIVE INACTIVE EXPIRED
images Image[]! The image list of the property;

Image is an object includes,
id: ID!,
type: ImageType,
category: ImageCategory,
contentType: String,
filename: String,
imageHash: String,
active: Boolean;

status: GalleryStatus,
hero: Boolean,
height: PositiveInteger,
width: PositiveInteger,
size: PositiveInteger,
position: Int,
source: String;

ImageType has possible values: PROPERTY_IMAGE ROOM_IMAGE FLOOR_PLAN_IMAGE

GalleryStatus has possible values: INTERNAL_NEW EXTERNAL_NEW PENDING APPROVED REJECTED PUBLIC
videos video[]! The video list of the property;

Video is an object includes,
id: ID!,
path: String!,
size: Int,
fileName: String,
videoHash: String!,
active: Boolean,
status: GalleryStatus;

GalleryStatus has possible values: INTERNAL_NEW EXTERNAL_NEW PENDING APPROVED REJECTED PUBLIC