Property Descriptions

How to edit a property's marketing decriptions.

Overview

Create accurate, appealing, and informative descriptions to attract guests and enhance the quality of your listings. You can use the Listings API to distinguish your property with various parameters, such as:

  • The name and summary.
  • The description of the space and neighborhood.
  • Information regarding transit and how to get to the listing.

Available Endpoints

MethodEndpoint
PUT/listings/{id}

Key Parameters

Path ParameterTypeDescriptionRequired
idstringThe property ID.✔️

Marketing Descriptions

It is only necessary to include the fields you're updating in the API request. You can choose to edit all of them or a single field.


Key Parameters

Body ParameterTypeDescriptionRequired
titlestringEnter the name of the listing for marketing purposes (50-character limit).
publicDescriptionsobjectContains all the property description fields✔️

Public Descriptions

Body ParameterTypeDescriptionRequired
summarystringProperty summary description.
spacestringDescription of the space.
accessstringInstructions for accessing the property.
neighborhoodstringA description of the neighborhood within which the property is located.
transitstringTransport options and recommendations for the guest(s) to help them get around.
notesstringOther things to note.

Example

Request

curl --globoff --request PUT 'https://open-api.guesty.com/v1/listings/64f03f2794d741004fda911e' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'Authorization: Bearer {accessToken}' \
--data '{
    "title": "Enchanted Villa on the Mediterranean",
    "publicDescription": {
        "summary": "Summary description of the property.",
        "space": "Description of the space.",
        "access": "Instructions for accessing the property.",
        "neighborhood": "A description of the neighborhood within which the property is located.",
        "transit": "Transport options and recommendations available to the guest.",
        "notes": "Anything else to note about the property or location."
    }'
const myHeaders = new Headers();
myHeaders.append("accept", "application/json");
myHeaders.append("content-type", "application/json");
myHeaders.append("Authorization", "Bearer {accessToken}");

const raw = "{\n    \"title\": \"Enchanted Villa on the Mediterranean\",\n    \"publicDescription\": {\n        \"summary\": \"Summary description of the property.\",\n        \"space\": \"Description of the space.\",\n        \"access\": \"Instructions for accessing the property.\",\n        \"neighborhood\": \"A description of the neighborhood within which the property is located.\",\n        \"transit\": \"Transport options and recommendations available to the guest.\",\n        \"notes\": \"Anything else to note about the property or location.\"\n    }";

const requestOptions = {
  method: "PUT",
  headers: myHeaders,
  body: raw,
  redirect: "manual"
};

fetch("https://open-api.guesty.com/v1/listings/64f03f9094d741004fda977d", requestOptions)
  .then((response) => response.text())
  .then((result) => console.log(result))
  .catch((error) => console.error(error));
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://open-api.guesty.com/v1/listings/64f03f9094d741004fda977d',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => false,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'PUT',
  CURLOPT_POSTFIELDS =>'{
    "title": "Enchanted Villa on the Mediterranean",
    "publicDescription": {
        "summary": "Summary description of the property.",
        "space": "Description of the space.",
        "access": "Instructions for accessing the property.",
        "neighborhood": "A description of the neighborhood within which the property is located.",
        "transit": "Transport options and recommendations available to the guest.",
        "notes": "Anything else to note about the property or location."
    }',
  CURLOPT_HTTPHEADER => array(
    'accept: application/json',
    'content-type: application/json',
    'Authorization: Bearer {accessToken}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

import http.client
import json

conn = http.client.HTTPSConnection("open-api.guesty.com")
payload = "{\n    \"title\": \"Enchanted Villa on the Mediterranean\",\n    \"publicDescription\": {\n        \"summary\": \"Summary description of the property.\",\n        \"space\": \"Description of the space.\",\n        \"access\": \"Instructions for accessing the property.\",\n        \"neighborhood\": \"A description of the neighborhood within which the property is located.\",\n        \"transit\": \"Transport options and recommendations available to the guest.\",\n        \"notes\": \"Anything else to note about the property or location.\"\n    }"
headers = {
  'accept': 'application/json',
  'content-type': 'application/json',
  'Authorization': 'Bearer {accessToken}'
}
conn.request("PUT", "/v1/listings/64f03f9094d741004fda977d", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))

Response

{
  "title":"Enchanted Villa on the Mediterranean",
  "publicDescription":{
    "summary":"Summary description of the property.",
    "space":"Description of the space.",
    "access":"Instructions for accessing the property.",
    "neighborhood":"A description of the neighborhood within which the property is located.",
    "transit":"Transport options and recommendations available to the guest.",
    "notes":"Anything else to note about the property or location."
  },
  "_id":"64f03f2794d741004fda911e"
}

Property Terms

Key Parameters

Body ParameterTypeDescriptionRequired
termsobjectHolds the minimum and maximum stays fields. See the following table.
accommodatesnumberThe maximum number of people the property can accommodate.
bathroomsnumberThe number of bathrooms at the property.

Terms

Body ParameterTypeDescriptionRequired
minNightsnumberThe minimum number of nights required to book a stay.
maxNightsnumberThe maximum number of nights that can be booked with a single stay.

Example

Request

curl --request PUT 'https://open-api.guesty.com/v1/listings/64f03f2794d741004fda911e' \
--data '{
    "terms": {
        "minNights": 3,
        "maxNights": 15
    },
    "accommodates": 5,
    "bathrooms": 1
}'
var raw = "{\n    \"terms\": {\n        \"minNights\": 3,\n        \"maxNights\": 15\n    },\n    \"accommodates\": 5,\n    \"bathrooms\": 1\n}";

var requestOptions = {
  method: 'PUT',
  body: raw,
  redirect: 'manual'
};

fetch("https://open-api.guesty.com/v1/listings/64f03f2794d741004fda911e", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://open-api.guesty.com/v1/listings/64f03f2794d741004fda911e',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => false,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'PUT',
  CURLOPT_POSTFIELDS =>'{
    "terms": {
        "minNights": 3,
        "maxNights": 15
    },
    "accommodates": 5,
    "bathrooms": 1
}',
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

import http.client

conn = http.client.HTTPSConnection("open-api.guesty.com")
payload = "{\n    \"terms\": {\n        \"minNights\": 3,\n        \"maxNights\": 15\n    },\n    \"accommodates\": 5,\n    \"bathrooms\": 1\n}"
headers = {}
conn.request("PUT", "/v1/listings/64f03f2794d741004fda911e", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))

Response

{
    "terms": {
        "minNights": 3,
        "maxNights": 15
    },
    "accommodates": 5,
    "bathrooms": 1,
    "_id": "64f03f2794d741004fda911e"
}

Bed Arrangements

Room and bed arrangements are configured through the Spaces API. A detailed treatment of this can be found in Space Arrangements.


Amenities

Use the Amenities API endpoint to retrieve a list of all supported amenities and update your listing. Amenities highlight the features and functions offered at your property for guests. Guesty's Help Center provides more detailed guidance on selecting the right amenities.


Property Type

Three parameters must be set to define the type of property being managed or marketed. These descriptions synchronize with the booking channels and influence the property's visibility in searches.


Key Parameters

Body ParameterTypeDescriptionRequired
propertyTypestringSelect from: Condominium, Apartment, House, Loft, Boat, Camper/RV, Chalet, Bed & Breakfast, Villa, Tent, Cabin, Townhouse, Bungalow, Hut, or Other.
roomTypestringChoose from: Entire home/apartment, Shared room, or Private room.
otaRoomTypestringRequired by Booking.com. Use one of the following: apartment, suite, studio, dormitory_room, family, bungalow, chalet, holiday_home, villa, mobile_home, or tent.