Skip to content
Dashboard

Update a property.

PATCH
/properties/{id}
curl --request PATCH \
--url https://api-us.suiteop.com/api/v1/properties/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "data": { "bathroomCount": 1, "bedCount": 1, "bedroomCount": 1, "checkInDescriptionId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "city": "example", "codeDisplay": "dynamic", "codeEntryKey": "example", "codeValidationKey": "example", "countryCode": "example", "coverImageUrl": "example", "defaultCheckInHour": 1, "defaultCheckOutHour": 1, "descriptionId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "formattedAddress": "example", "groupCodeDisplay": "dynamic", "groupCodeEntryKey": "example", "groupCodeValidationKey": "example", "hasCheckInInstructionTimer": true, "hideTimerHours": 1, "houseRulesId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "internalAccessNotes": "example", "isAddressHidden": true, "isBackupSwapDisabled": true, "isBookable": true, "isCodeOverrideFixed": true, "isInspectionRequired": true, "latitude": 1, "longitude": 1, "maxGuests": 1, "name": "example", "nickname": "example", "postalCode": "example", "propertyGroupId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "reviewRequestUrl": "https://example.com", "state": "example", "streetAddress": "example", "timezone": "example", "unitNumber": "example", "wifiName": "example", "wifiPassword": "example" } }'

Update property fields (name, address, capacity, WiFi, codes, flags).

id
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
Media type application/json
object
data
required
object
bathroomCount
number
bedCount
integer
<= 9007199254740991
bedroomCount
integer
<= 9007199254740991
checkInDescriptionId
Any of:
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
city
string
codeDisplay
Any of:
string
Allowed values: dynamic fixed import
codeEntryKey
Any of:
string
codeValidationKey
Any of:
string
<= 8 characters
countryCode
string
<= 2 characters
coverImageUrl
Any of:
string
defaultCheckInHour
Any of:
integer
<= 23
defaultCheckOutHour
Any of:
integer
<= 23
descriptionId
Any of:
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
formattedAddress
string
groupCodeDisplay
Any of:
string
Allowed values: dynamic fixed import
groupCodeEntryKey
Any of:
string
groupCodeValidationKey
Any of:
string
<= 8 characters
hasCheckInInstructionTimer
boolean
hideTimerHours
Any of:
integer
<= 9007199254740991
houseRulesId
Any of:
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
internalAccessNotes
Any of:
string
isAddressHidden
boolean
isBackupSwapDisabled
boolean
isBookable
boolean
isCodeOverrideFixed
boolean
isInspectionRequired
boolean
latitude
number
longitude
number
maxGuests
integer
>= 1 <= 9007199254740991
name
string
>= 1 characters
nickname
string
postalCode
string
propertyGroupId
Any of:
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
reviewRequestUrl
Any of:
string format: uri
state
string
streetAddress
string
timezone
string
unitNumber
string
wifiName
Any of:
string
wifiPassword
Any of:
string

Success.

Media type application/json
object
data
required

Response payload.

object
averageRating
required
Any of:
number
bathroomCount
required
Any of:
number
bedCount
required
Any of:
number
bedroomCount
required
Any of:
number
city
required
Any of:
string
cleaningStatus
required
Any of:
string
countryCode
required
Any of:
string
coverImageUrl
required
Any of:
string
createdAt
required
string format: date-time
defaultCheckInHour
required
Any of:
number
defaultCheckOutHour
required
Any of:
number
formattedAddress
required
Any of:
string
hasCheckInInstructionTimer
required
boolean
hideTimerHours
required
Any of:
number
id
required
string
inspectionStatus
required
Any of:
string
internalAccessNotes
required
Any of:
string
isAddressHidden
required
boolean
isBackupSwapDisabled
required
boolean
isBookable
required
boolean
isDisabled
required
boolean
isInspectionRequired
required
boolean
latitude
required
Any of:
string
longitude
required
Any of:
string
maintenanceStatus
required
Any of:
string
maxGuests
required
Any of:
number
name
required
string
nickname
required
Any of:
string
postalCode
required
Any of:
string
propertyGroupId
required
Any of:
string
readinessStatus
required
Any of:
string
state
required
Any of:
string
streetAddress
required
Any of:
string
timezone
required
Any of:
string
unitNumber
required
Any of:
string
updatedAt
required
string format: date-time
wifiName
required
Any of:
string
meta
required

Response metadata present on every success response.

object
pagination

Present on list responses.

object
limit
required

Page size used for this request.

integer
offset
required

Number of items skipped.

integer
total
required

Total number of matching items (across all pages).

integer
requestId
required

Unique identifier for this request.

string
Example generated
{
"data": {
"averageRating": 1,
"bathroomCount": 1,
"bedCount": 1,
"bedroomCount": 1,
"city": "example",
"cleaningStatus": "example",
"countryCode": "example",
"coverImageUrl": "example",
"createdAt": "2026-04-15T12:00:00Z",
"defaultCheckInHour": 1,
"defaultCheckOutHour": 1,
"formattedAddress": "example",
"hasCheckInInstructionTimer": true,
"hideTimerHours": 1,
"id": "example",
"inspectionStatus": "example",
"internalAccessNotes": "example",
"isAddressHidden": true,
"isBackupSwapDisabled": true,
"isBookable": true,
"isDisabled": true,
"isInspectionRequired": true,
"latitude": "example",
"longitude": "example",
"maintenanceStatus": "example",
"maxGuests": 1,
"name": "example",
"nickname": "example",
"postalCode": "example",
"propertyGroupId": "example",
"readinessStatus": "example",
"state": "example",
"streetAddress": "example",
"timezone": "example",
"unitNumber": "example",
"updatedAt": "2026-04-15T12:00:00Z",
"wifiName": "example"
},
"meta": {
"pagination": {
"limit": 1,
"offset": 1,
"total": 1
},
"requestId": "example"
}
}
X-RateLimit-Limit
integer

Maximum requests per minute for this API key.

X-RateLimit-Remaining
integer

Remaining requests in the current rate-limit window.

X-RateLimit-Reset
integer

Unix epoch seconds when the rate-limit window resets.

X-Request-Id
string

Unique identifier for this request (matches meta.requestId in the body).

400

Media type application/json
ValidationError

Error envelope returned for HTTP 400 responses.

object
error
required
object
code
required

Machine-readable error code.

string
details

Optional structured details (omitted when undefined).

object
key
additional properties
any
message
required

Human-readable error message.

string
type
required

Error type.

string
Allowed values: validation_error
meta
required
object
requestId
required
string
Example
{
"error": {
"type": "validation_error"
}
}
X-RateLimit-Limit
integer

Maximum requests per minute.

X-RateLimit-Remaining
integer

Remaining requests in the current window.

X-RateLimit-Reset
integer

Unix epoch seconds when the window resets.

X-Request-Id
string

Request correlation id (also in meta.requestId).

401

Media type application/json
AuthenticationError

Error envelope returned for HTTP 401 responses.

object
error
required
object
code
required

Machine-readable error code.

string
details

Optional structured details (omitted when undefined).

object
key
additional properties
any
message
required

Human-readable error message.

string
type
required

Error type.

string
Allowed values: authentication_error
meta
required
object
requestId
required
string
Example
{
"error": {
"type": "authentication_error"
}
}
X-Request-Id
string

Request correlation id (also in meta.requestId).

403

Media type application/json
AuthorizationError

Error envelope returned for HTTP 403 responses.

object
error
required
object
code
required

Machine-readable error code.

string
details

Optional structured details (omitted when undefined).

object
key
additional properties
any
message
required

Human-readable error message.

string
type
required

Error type.

string
Allowed values: authorization_error
meta
required
object
requestId
required
string
Example
{
"error": {
"type": "authorization_error"
}
}
X-RateLimit-Limit
integer

Maximum requests per minute.

X-RateLimit-Remaining
integer

Remaining requests in the current window.

X-RateLimit-Reset
integer

Unix epoch seconds when the window resets.

X-Request-Id
string

Request correlation id (also in meta.requestId).

404

Media type application/json
NotFoundError

Error envelope returned for HTTP 404 responses.

object
error
required
object
code
required

Machine-readable error code.

string
details

Optional structured details (omitted when undefined).

object
key
additional properties
any
message
required

Human-readable error message.

string
type
required

Error type.

string
Allowed values: not_found_error
meta
required
object
requestId
required
string
Example
{
"error": {
"type": "not_found_error"
}
}
X-RateLimit-Limit
integer

Maximum requests per minute.

X-RateLimit-Remaining
integer

Remaining requests in the current window.

X-RateLimit-Reset
integer

Unix epoch seconds when the window resets.

X-Request-Id
string

Request correlation id (also in meta.requestId).

409

Media type application/json
ConflictError

Error envelope returned for HTTP 409 responses.

object
error
required
object
code
required

Machine-readable error code.

string
details

Optional structured details (omitted when undefined).

object
key
additional properties
any
message
required

Human-readable error message.

string
type
required

Error type.

string
Allowed values: conflict_error
meta
required
object
requestId
required
string
Example
{
"error": {
"type": "conflict_error"
}
}
X-RateLimit-Limit
integer

Maximum requests per minute.

X-RateLimit-Remaining
integer

Remaining requests in the current window.

X-RateLimit-Reset
integer

Unix epoch seconds when the window resets.

X-Request-Id
string

Request correlation id (also in meta.requestId).

422

Media type application/json
BusinessRuleError

Error envelope returned for HTTP 422 responses.

object
error
required
object
code
required

Machine-readable error code.

string
details

Optional structured details (omitted when undefined).

object
key
additional properties
any
message
required

Human-readable error message.

string
type
required

Error type.

string
Allowed values: business_rule_error
meta
required
object
requestId
required
string
Example
{
"error": {
"type": "business_rule_error"
}
}
X-RateLimit-Limit
integer

Maximum requests per minute.

X-RateLimit-Remaining
integer

Remaining requests in the current window.

X-RateLimit-Reset
integer

Unix epoch seconds when the window resets.

X-Request-Id
string

Request correlation id (also in meta.requestId).

429

Media type application/json
RateLimitError

Error envelope returned for HTTP 429 responses.

object
error
required
object
code
required

Machine-readable error code.

string
details

Optional structured details (omitted when undefined).

object
key
additional properties
any
message
required

Human-readable error message.

string
type
required

Error type.

string
Allowed values: rate_limit_error
meta
required
object
requestId
required
string
Example
{
"error": {
"type": "rate_limit_error"
}
}
Retry-After
integer

Number of seconds to wait before retrying.

X-RateLimit-Limit
integer

Maximum requests per minute.

X-RateLimit-Remaining
integer

Remaining requests in the current window.

X-RateLimit-Reset
integer

Unix epoch seconds when the window resets.

X-Request-Id
string

Request correlation id (also in meta.requestId).

500

Media type application/json
InternalError

Error envelope returned for HTTP 500 responses.

object
error
required
object
code
required

Machine-readable error code.

string
details

Optional structured details (omitted when undefined).

object
key
additional properties
any
message
required

Human-readable error message.

string
type
required

Error type.

string
Allowed values: internal_error
meta
required
object
requestId
required
string
Example
{
"error": {
"type": "internal_error"
}
}
X-RateLimit-Limit
integer

Maximum requests per minute.

X-RateLimit-Remaining
integer

Remaining requests in the current window.

X-RateLimit-Reset
integer

Unix epoch seconds when the window resets.

X-Request-Id
string

Request correlation id (also in meta.requestId).