Updates a unit's (room type’s) details, such as its size and amenities. You can also use this mutation to remove (disable) an amenity or other details. When updating a unit, you must specify the Expedia property ID and unit ID.
Use the metadata query to retrieve the list of allowed values for the various fields in each unit (such as bed type). This helper query is especially important when defining unit amenities. Be sure to review the details in the metadata query's reference page for an explanation of how to read amenity metadata.
Field value used for these field types: enum, string, trilean, int,
and decimal. When the amenity type is trilean and the value is set to
true, the amenity is included on the PDP. When set to false, the amenity
definition is stored but disabled it on the PDP, similar to how amenities are
disabled using AmenityValueInput : available.
Field value used for these field types: enum, string, trilean, int,
and decimal. Note that if this is set to trilean, the value must be set to
true to include the amenity on the PDP. If value is set to false, the
amenity definition is stored but disabled it on the PDP, similar to how
amenities are disabled using AmenityValueInput : available.
Amenity field value. Note that if the amenity value type is trilean, the
value must be set to true to include the amenity on the PDP. If value is set
to false, the amenity definition is stored but disabled it on the property,
similar to how amenities are disabled using AmenityValueInput : available.
Bed types offered in the room. Vacation rentals are limited to a single bed
group with multiple bed types. Conventional lodging may have two bed groups to
represent alternatives. For example, a hotel might have a room type with 1 king
bed or 2 full beds.
Bed types offered in the room. Vacation rentals are limited to a single bed
group with multiple bed types. Conventional lodging may have two bed groups to
represent alternatives. For example, a hotel might have a room type with 1 king
bed or 2 full beds. To remove a bed group from a space, send null (empty array)
for bed groups, though at least one bed group must be defined for a unit. Note the following:
When bedding is not provided when a unit is created, one twin bed is defined for the unit (default).
When a space is created for a unit, bedding on the unit level is removed and
will only be present within the space. Once a unit has a space defined, bedding
can only be managed within the space (using updateUnitSpaces or
deleteUnitSpace).
Compliance status for mandatory requirements only (at the unit level) according
to the local jurisdiction's regulatory requirements. If invalid information is
provided for an optional regulatory requirement, or if regulatory information is
set in a jurisdiction that does not require regulatory information, status:
COMPLIANT is returned. For optional requirements, a warning is returned in the
warningStatus field of the updateUnitRegistration mutation's payload.
Field
Description
reason
Not nullable.
Reason why the unit is in or out of compliance. The label used for the
registration number in this string comes from the numberTypeLabel field on
the RegistrationNumberRequirement type.
The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.
Locale code used to localize the text, which conforms to the BCP-47 (RFC 5646)
standard, such as fr-FR. Use the metadata query to retrieve the list of
supported locales.
Checks the consistency of the information in our systems at the property level
to determine whether the registration information is sufficient to fulfill the
requirements of the property's district. We do not recommend including this
field in the query because it does not provide the true value for some properties.
If false is returned for a unit, you can use the Product API to identify
active units, though false may be returned for inactive units that have
incorrect regulatory information.
Compliance status for mandatory requirements only (at the unit level)
according to the local jurisdiction's regulatory requirements. If invalid
information is provided for an optional regulatory requirement, or if
regulatory information is set in a jurisdiction that does not require
regulatory information, status: COMPLIANT is returned. For optional
requirements, a warning is returned in the warningStatus field of the
updateUnitRegistration mutation's payload.
Note: We strongly recommend that you include this field in your
implementation even though it is nullable. This field provides an audit trail
for reporting purposes.
Category values for regulatory categories. Most of jurisdiction districts only
allow for two categories, HOTEL and VACATION_RENTAL, though more values
GRAPHQL_VALIDATION_FAILED are provided to satisfy local government requirements.
Name
Description
HOTEL
BED_AND_BREAKFAST
HOTEL_OR_BNB
PRIMARY_HOME
PRIMARY_HOME_WITH_EXCEPTION
SECONDARY_HOME
VACATION_RENTAL
LONG_TERM_ONLY
SHORT_TERM_RENTAL
MINPAKU
SIMPLE_LODGING
EVENT
SPECIAL
NO_LICENSE
HOTEL_RYOKAN
RYOKAN
PRIMARY_OR_SECONDARY
TRANSIENT_OCCUPANCY_RESIDENTIAL_STRUCTURE
MOTEL
HOME_SHARING_NUMBER
VACATION_RENTAL_OTHER
HOSTEL
CAMPING_SITES
RURAL_LODGING
APARTMENT_HOTEL
RegulatoryStatus
Enum
Values for regulatory status.
Name
Description
COMPLIANT
Unit meets all regulatory requirements.
COMPLIANT_ACTION_NEEDED
Unit meets requirements to remain listed but will need to provide
additional information (or other action) in order to not be delisted.
NOT_COMPLIANT
Unit does not meet all regulatory requirements and cannot be shown.
NOT_COMPLIANT_ACTION_NEEDED
Unit is not compliant, but enforcement hasn't started yet. Action should be
taken for the listing to be compliant after enforcement date.
NOT_ALLOWED
Platform does not allow units in this jurisdiction; no actions from partner can affect status.
NONE
Unit's status cannot be determined.
String
String
The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Surcharge
Object
Extra amount to charge for an extra bed.
Field
Description
amount
Amount of the surcharge. Must be defined if type is not 'Free'.
Amenities available in the unit. You can filter by amenity name or whether
it's available (active) by specifying the filters argument (type:
AmenitiesFiltersInput).
Registration information for the unit or room type. You can specify the
locale argument to retrieve the results in a specific language; specify the
four-letter ISO code for language. Use a four-character code that indicates
language and region, such as fr_FR for French in France.
Attributes that determine if unit has accessibility.
Field
Description
accessibilityTypeOverride
Type of accessibility to be included in the name as specified; this will
override includeAccessibility if present. Use the metadata query for the
list of supported values.
Whether to include bed type on the unit name. Not all bed combinations are
fully displayed in the room name. Some combinations are displayed as “multiple
beds” in the unit name.
Whether to include unit smoking preferences in the unit name. When
smokingPolicy is set to SMOKING_AND_NON_SMOKING and includeSmokingPolicy
is set to true, the room name will specify SMOKING only.
Partner's transaction ID that uniquely identifies the request, which can be
used to associate requests and responses for troubleshooting purposes. This ID
must be unique across requests and cannot be reused. However, if a request
needs to be retried, such as because it failed or timed out, the ID provided
in the original request should be used. The ID can be in any format as long as
it uniquely identifies the request.
Maximum occupancy of the unit in total and by age category. If not specified,
occupancy is based on the defined bed group(s). When neither occupancy nor bed
group(s) are defined, one twin bed and occupancy of 1 are the defaults.
Attributes used to build a unit name.
-unitClass, unitType, and customLabel are always used, if provided.
Total character length for a unit name is 100 characters. If the length
exceeds 100 characters, some attributes might be omitted from unit name.
Only one of includeBedType and bedroomDetails can be specified. If both are provided, only includeBedType is used.
Only two of these attributes can be stored at a time (listed here in ranking
order): accessibility, includeSmokingPolicy, featuredAmenity, view, and location.
Use the metadata query for the list of supported values for each field.
Whether to include bed type on the unit name. Not all bed combinations are
fully displayed in the room name. Some combinations are displayed as “multiple
beds” in the unit name.
Whether to include unit smoking preferences in the unit name. When
smokingPolicy is set to SMOKING_AND_NON_SMOKING and includeSmokingPolicy
is set to true, the room name will specify SMOKING only.
Maximum occupancy of the unit in total and by age category. If not specified,
occupancy is based on the defined bed group(s). When neither occupancy nor bed
group(s) are defined, one twin bed and occupancy of 1 are the defaults.
Field
Description
adults
Maximum number of adults that can reside in the unit; this will be at least 1 and less than or equal to the total.
Partner's transaction ID that identifies the request, which can be used to
correlate with partner's transaction logs. This ID must be unique across
requests and cannot be reused.