The Workplace Service Delivery (WSD) Search API provides endpoints to search for available locations and workplace items such as reservables, reservable modules, and available shifts.
To access this API, the caller must have the sn_wsd_core.workplace_user role and the Workplace Safety Management (sn_wsd_core) and Workplace Reservation Management (sn_wsd_rsv) plugins must be activated.
Optional. Version of the endpoint to access. For example, `v1` or `v2`. Only specify this value to use an endpoint version other than the latest. Data type: String
Name
Description
end
Required. End time to use to search for available reservable modules. This value must be later than the value specified in the start parameter.Data type: String
Format: UTC or local time (yyyy-mm-dd hh:mm:ss)
include\_reservations\_within\_days
Flag that indicates whether to return all free slots of available times in the response for each reservable for the whole day.Valid values: - true: Return all free slots. - false: Don't return all free slots. Data type: Boolean Default: false
reservable\_ids
Required. Comma-separated list of reservable sys\_ids to evaluate for availability.Data type: String Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
reservation\_ids
Comma-separated list of existing reservation sys\_ids. Pass this parameter if you want to edit the associated reservations.The time blocked for these sys\_ids for the corresponding reservables are treated as available. Data type: String Default: None Table: Workplace Reservation \[sn\_wsd\_rsv\_reservation\]
reservable\_module
Required. Sys\_id of the reservable module to include in the search. A reservable module groups similar types of workplace items.Data type: String Table: Reservable Module \[sn\_wsd\_rsv\_reservable\_module\]
schedule\_view\_obj
Details about the schedule view to return. Pass this object if you need 24-hour availability data for reservations that span more than one day. The return results will only contain available times and reservations for the specified date.For this functionality to work properly, the parameters ignore_same_day_validation and include_reservations_within_days must be set to true.
Date for which to start returning reservation availability. This date must be in the time zone specified in the schedule_view_obj.timezone parameter.Data type: String
Format: YYYY-MM-DD
schedule\_view\_obj.timezone
Building time zone to use to determine the reservation availability data to return. For example: US/Pacific.Data type: String
shift
Required if the specified reservable modules are based on a shift. Sys_id of the shift to associate with the reservation. If this parameter is passed in, the end parameter isn't required.
Required. Start time to use to search for available reservable modules. This value must be prior to the value specified in the end parameter.Data type: String
Format: UTC or local time (yyyy-mm-dd hh:mm:ss)
Name
Description
None
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header
Description
Accept
Data format of the request body. Supported types: application/json, application/xml or, text/xml. Default: application/json
Header
Description
None
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code
Description
200
Successful. The request was successfully processed.
401
Unauthorized. The user credentials are incorrect or have not been passed.
404
Not found. The requested item wasn't found.
500
Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.
Response body parameters
Name
Description
result
List of all available resevables for the specified times.Data type: Array of Objects ``` "result": [ { "availableTimes": [Array], "building": {Object}, "campus": {Object}, "email": "String", "floor": {Object}, "is_available": Boolean, "name": "String", "reservations": [Array], "sys_id": "String" } ]
</td></tr><tr><td>
result.availableTimes
</td><td>
List of dates/times that the associated reservable is available.Data type: Array
</td></tr><tr><td>
result.building
</td><td>
Details about the building associated with the reservable.Data type: Object
```
"building": {
"display_value": "String",
"name": "String",
"sys_id": "String"
}
result.building.display\_value
Display value for the building.Data type: String
result.building.name
Name of the building.Data type: String
result.building.sys\_id
Sys\_id of the associated building record.Data type: String
result.campus
Details about the campus associated with the reservable.Data type: Object ``` "campus": { "display_value": "String", "name": "String", "sys_id": "String" }
</td></tr><tr><td>
result.campus.display\_value
</td><td>
Display number of the Campus on which the reservable resides, such as East Bay.Data type: String
</td></tr><tr><td>
result.campus.name
</td><td>
Name of the campus.Data type: String
</td></tr><tr><td>
result.campus.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Campus \[sn\_wsd\_core\_campus\]
</td></tr><tr><td>
result.email
</td><td>
Email address for the associated reservable.Data type: String
</td></tr><tr><td>
result.floor
</td><td>
Details about the floor associated with the reservable.Data type: Object
```
"floor": {
"display_value": "String",
"name": "String",
"sys_id": "String"
}
result.floor.display\_value
Display number of the floor on which the reservable resides, such as 12.Data type: String
result.floor.name
Name of the floor on which the reservable resides.Data type: String
result.floor.sys\_id
Sys\_id of the associated record.Data type: String Table: Floor \[sn\_wsd\_core\_floor\]
result.is\_available
Flag that indicates whether the reservable is available to reserve.Valid values: - true: Available to reserve. - false: Not available to reserve. Data type: Boolean
</td></tr><tr><td>
result.reservations.configuration\_item
</td><td>
Configuration items corresponding to the reservation.Data type: String
Table: Configuration Item \[cmdb\_ci\]
</td></tr><tr><td>
result.reservations.end
</td><td>
Reservation end date and time.Data type: String
Format: UTC: yyyy-mm-ddThh:mm:ssZ, such as 2021-02-05T18:00:00Z
</td></tr><tr><td>
result.reservations.is\_collided
</td><td>
Flag that indicates whether the reservation collides with the start and end time of the search.This indicates that the associated reservable location is already reserved for the specified search timespan.
Possible values:
- true: Collision.
- false: No collision.
Data type: Boolean
</td></tr><tr><td>
result.reservations.location
</td><td>
Details about the location of the reservation.Data type: Object
```
"location": {
"location": "String",
"timezone": {Object}
}
result.reservations.location.location
Sys\_id of the associated location record.Data type: String Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
result.reservations.location.timezone
Details about the time zone associated with the location.Data type: Object
Optional. Version of the endpoint to access. For example, `v1` or `v2`. Only specify this value to use an endpoint version other than the latest. Data type: String
Name
Description
best\_match\_count
Number of best matched reservables to return. Data type: Number Default: 1
end
Required. End time to use to search for available reservable modules. This value must be later than the value specified in the start parameter.Data type: String
Format: UTC or local time (yyyy-mm-dd hh:mm:ss)
include\_reservable\_purposes
Flag that indicates whether to return the purpose of reserving the workplace location for each reservable in the return results.Valid values: - true: Return the reservable purposes. - false: Don't return the reservable purposes. Data type: Boolean Default: false Table: Reservable Purpose \[sn\_wsd\_rsv\_reservable\_purpose\]
include\_reservations\_within\_days
Flag that indicates whether to return all free slots of available times in the response for each reservable for the whole day.Valid values: - true: Return all free slots. - false: Don't return all free slots. Data type: Boolean Default: false
include\_standard\_services
Flag that indicates whether to return the standard services information in the response. This information is located in the Standard Service \[sn\_wsd\_rsv\_standard\_service\] table.A standard service describes basic provisions available with a reservable workplace item when the reservation is made, such as white boards, additional monitors, and similar services. For additional information on standard services, see Standard services. Valid values: - true: Return the standard services information. - false: Don't return the standard services information. Data type: Boolean Default: false
q
Required. Encoded query to use to filter the search return results. Within this query you must specify the building sys\_id and you can specify parameters such as floor, area, capacity, standard services, and reservable\_purposes.All passed parameters must be sys\_ids, except for capacity, which is a number. For example: `q=building=94e264cedb3650106c731dcd13961919^floorINfc7368cedb3650106c731dcd13961902^capacity>=1^standard_services=55c0818edb7650106c731dcd13961904^reservable_purposes=d6e5c7cd1ba4e01051848489cc4bcb81` You can locate this information in the following tables: - Area: sn\_wsd\_core\_area - Building: sn\_wsd\_core\_building - Floor: sn\_wsd\_core\_floor - Reservable purposes: sn\_wsd\_rsv\_reservable\_purpose - Standard services: sn\_wsd\_rsv\_standard\_service Data type: String
reservable\_module
Required. Sys\_id of the reservable module to include in the search. A reservable module groups similar types of workplace items.Data type: String Table: Reservable Module \[sn\_wsd\_rsv\_reservable\_module\]
start
Required. Start time to use to search for available reservable modules. This value must be prior to the value specified in the end parameter.Data type: String
Format: UTC or local time (yyyy-mm-dd hh:mm:ss)
time\_slot
Sys\_id of a time slot record for which we are trying to look for the best matching reservable.Data type: String Default: None Table: Time Slot \[sn\_wsd\_rsv\_time\_slot\]
timezone
Preferred time zone, such as Europe/Amsterdam.Data type: String Default: None
Header
Description
None
Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.
Header
Description
Accept
Data format of the response body. Supported types: application/json or application/xml. Default: application/json
Header
Description
None
Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.
Status code
Description
200
Successful. The request was successfully processed.
401
Unauthorized. The user credentials are incorrect or have not been passed.
404
Not found. The requested item wasn't found.
500
Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.
Response body parameters
Name
Description
result
Return results for the best reservable match.Data type: Object
Display number of the floor on which the reservable resides, such as 12.Data type: String
result.floorsOfSelectedBuilding.external\_id
External identifier for the floor.Data type: String
result.floorsOfSelectedBuilding.name
Name of the floor on which the reservable resides.Data type: String
result.floorsOfSelectedBuilding.sys\_id
Sys\_id of the associated record.Data type: String Table: Floor \[sn\_wsd\_core\_floor\]
result.hasMore
Flag that indicates whether there are more reservables in the return results.Possible values: - true: More reservables available. - false: No more reservables available. Data type: Boolean
result.nextItemIndex
Index for the next reservable record to fetch. Use this value when paginating through reservable records.Data type: Number
result.reservableContainers
Only returned for reservable modules whose selection\_type field is set to `container`. A container is a grouping of similar items, such as a group of desks.Data type: Array of Objects
Sys\_id of the associated building record.Data type: String
result.reservableContainers.campus
Details about the campus on which the reservable is located. Data type: Object ``` "campus": { "display_value": "String", "name": "String", "sys_id": "String" }
Table: Campus \[sn\_wsd\_core\_campus\]
</td></tr><tr><td>
result.reservableContainers.campus.display\_value
</td><td>
Display number of the Campus on which the reservable resides, such as East Bay.Data type: String
</td></tr><tr><td>
result.reservableContainers.campus.name
</td><td>
Name of the campus.Data type: String
</td></tr><tr><td>
result.reservableContainers.campus.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Campus \[sn\_wsd\_core\_campus\]
</td></tr><tr><td>
result.reservableContainers.capacity
</td><td id="reservableContainers_capacity-reserv-entry">
Maximum number of occupants for the reservable.Data type: Number
</td></tr><tr><td>
result.reservableContainers.display\_value
</td><td id="reservableContainers_display_value-reserv-entry">
Display value for the reservable container.Data type: String
</td></tr><tr><td>
result.reservableContainers.floor
</td><td id="reservableContainers_floor-reserv-entry">
Details about the floor associated with the reservable container.Data type: Object
</td></tr><tr><td>
result.reservableContainers.floor.display\_value
</td><td>
Display number of the floor on which the reservable resides, such as 12.Data type: String
</td></tr><tr><td>
result.reservableContainers.floor.name
</td><td>
Name of the floor on which the reservable resides.Data type: String
</td></tr><tr><td>
result.reservableContainers.floor.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Floor \[sn\_wsd\_core\_floor\]
</td></tr><tr><td>
result.reservableContainers.image
</td><td>
Details about an image that represents the layout for the associated reservable.Data type: Object
"image": { "link": "String", "sys_id": "String" }
Table: Images \[db\_image\]
</td></tr><tr><td>
result.reservableContainers.image.link
</td><td>
Link to an image that represents the layout for this reservable.Data type: String
Table: Images \[db\_image\]
</td></tr><tr><td>
result.reservableContainers.image.sys\_id
</td><td>
Sys\_id of the associated image record.Data type: String
</td></tr><tr><td>
result.reservableContainers.sys\_id
</td><td id="reservableContainers_sys_id-reserv-container">
Sys\_id of the associated container record.Data type: String
Table: The table in which this resides can be configured for any container type. By default it is in the Area \[sn\_wsd\_core\_area\] table.
</td></tr><tr><td>
result.reservableUnits
</td><td id="reservableUnit-reserv-entry">
Details about the reservable units that match the specified search criteria. A reservable unit is a single reservable item such as a desk or a chair.Data type: Array of Objects
</td></tr><tr><td>
result.reservableUnits.area
</td><td id="reservableUnit_area-reserv-entry">
Details about the area in which the reservable module is located.Data type: Object
Table: Area \[sn\_wsd\_core\_area\]
</td></tr><tr><td>
result.reservableUnits.area.display\_value
</td><td id="reservableUnit_area_display_value-reserv-entry">
Display value for the reservable module area.Data type: String
</td></tr><tr><td>
result.reservableUnits.area.sys\_id
</td><td id="reservableUnit_area_sys_id-reserv-entry">
Sys\_id of the area record associated with the reservable.Data type: String
</td></tr><tr><td>
result.reservableUnits.availableTimes
</td><td id="availableTimes-reserv-entry">
List of dates/times that the associated reservable is available.Data type: Array
</td></tr><tr><td>
result.reservableUnits.building
</td><td id="reservableUnit_building-reserv-entry">
Details about the building in which the reservable is located.Data type: Object
Table: Building \[sn\_wsd\_core\_building\]
</td></tr><tr><td>
result.reservableUnits.building.display\_value
</td><td>
Display value for the building.Data type: String
</td></tr><tr><td>
result.reservableUnits.building.sys\_id
</td><td>
Sys\_id of the associated building record.Data type: String
</td></tr><tr><td>
result.reservableUnits.campus
</td><td>
Details about the campus on which the reservable is located.
Data type: Object
```
"campus": {
"display_value": "String",
"sys_id": "String"
}
Table: Campus \[sn\_wsd\_core\_campus\]
result.reservableUnits.campus.display\_value
Display number of the Campus on which the reservable resides, such as East Bay.Data type: String
result.reservableUnits.campus.sys\_id
Sys\_id of the associated record.Data type: String Table: Campus \[sn\_wsd\_core\_campus\]
result.reservableUnits.capacity
Maximum number of occupants for the reservable.Data type: Number
result.reservableUnits.defaultPrivacyValue
Flag that indicates the default privacy setting for the reservable.For additional information on these privacy settings, see Location privacy settings and impact. Possible values: - true: Privacy setting for the reservable can be overridden. - false: Privacy setting for the reservable can't be overridden. Data type: Boolean
result.reservableUnits.description
Brief description of the reservable.Data type: String
result.reservableUnits.email
Email address for the reservable.Data type: String
result.reservableUnits.external\_id
External ID of the reservable used to sync a space mapped in CMS. This value is only populated if there is a map associated with this location. Data type: String
result.reservableUnits.floor
Details about the floor on which the reservable is located. Data type: Object ``` "floor": { "display_value": "String", "sys_id": "String" }
Table: Floor \[sn\_wsd\_core\_floor\]
</td></tr><tr><td>
result.reservableUnits.floor.display\_value
</td><td>
Display number of the floor on which the reservable resides, such as 12.Data type: String
</td></tr><tr><td>
result.reservableUnits.floor.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Floor \[sn\_wsd\_core\_floor\]
</td></tr><tr><td>
result.reservableUnits.image
</td><td>
Details about an image that represents the layout for the associated reservable.Data type: Object
"image": { "link": "String", "sys_id": "String" }
Table: Images \[db\_image\]
</td></tr><tr><td>
result.reservableUnits.image.link
</td><td>
Link to an image that represents the layout for this reservable.Data type: String
Table: Images \[db\_image\]
</td></tr><tr><td>
result.reservableUnits.image.sys\_id
</td><td>
Sys\_id of the associated image record.Data type: String
</td></tr><tr><td>
result.reservableUnits.includedInResult
</td><td id="reservableUnit_includedInResult-reserv-entry">
Flag that indicates whether the current reservable is included in the return results.Valid values:
- true: Included in the return results.
- false: Not included in the return results.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.is\_available
</td><td id="is_available-reserv-entry">
Flag that indicates whether the reservable is available to reserve.Valid values:
- true: Available to reserve.
- false: Not available to reserve.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.is\_favorite
</td><td id="reservableUnit_is_favorite-reserv-entry">
Flag that indicates whether the reservable is flagged as one of the associated user's favorites.Valid values:
- true: Favorite.
- false: Not a favorite.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.is\_reservable
</td><td id="reservableUnit_is_reservable-reserv-entry"><p>Flag that indicates whether it's possible to reserve this reservable. <strong>Note:</strong> If the <strong>include_unavailable_items</strong> query parameter is set to true, unavailable locations are also returned. In this case, if a location is already reserved, then the <strong>is_available</strong> parameter is false, but <strong>is_reservable</strong> is true.</p>
<p>Valid values:</p>
<ul>
<li>true: Available to reserve.</li>
<li>false: Not available to reserve.</li>
</ul>
<p>Data type: Boolean</p></td></tr><tr><td>
result.reservableUnits.is\_reserved
</td><td id="reservableUnit_is_reserved-reserv-entry">
Flag that indicates whether the reservable is already reserved.Valid values:
- true: Available to reserve.
- false: Already reserved.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.is\_selected
</td><td id="reservableUnit_is_selected-reserv-entry">
Flag that indicates whether the reservable is already reserved.Valid values:
- true: Available to reserve.
- false: Already reserved.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.location\_type
</td><td id="reservableUnit_location_type-reserv-entry">
Details about the type of location of the reservable, such as workplace/desk, cafe, or gym.Data type: Object
Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
</td></tr><tr><td>
result.reservableUnits.location\_type.display\_value
</td><td>
Display value of the location type.Data type: String
</td></tr><tr><td>
result.reservableUnits.location\_type.name
</td><td id="reservableUnit_location_type_name-reserv-entry">
Name of the location type, such as basement or storage. Same as display value.Data type: String
</td></tr><tr><td>
result.reservableUnits.location\_type.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Space Type \[sn\_wsd\_core\_space\_type\]
</td></tr><tr><td>
result.reservableUnits.name
</td><td>
Name of the reservable.Data type: String
</td></tr><tr><td>
result.reservableUnits.number
</td><td>
Unique identifier of the reservable. This value is more human readable than the sys\_id.Data type: String
</td></tr><tr><td>
result.reservableUnits.order
</td><td>
Order number for the reservable.Data type: Number
</td></tr><tr><td>
result.reservableUnits.require\_approval
</td><td>
Flag that indicates whether reserving the reservable requires an approval.Possible values:
- true: Approval required.
- false: Approval isn't required.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.requires\_check\_in
</td><td>
Flag that indicates whether the reservable requires the user to check in.Valid values:
- true: Check in required.
- false: Check in isn't required.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.reservable\_purposes
</td><td>
Details about the purpose for reserving the associated reservable.Data type: Array of Objects
</td></tr><tr><td>
result.reservableUnits.reservable\_purposes.name
</td><td>
Name of the reservable.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservable\_purposes.short\_description
</td><td>
Brief description of the reservable.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservable\_purposes.sys\_id
</td><td>
Sys\_id of the reservable purpose record.Data type: String
Table: Reservable Purpose \[sn\_wsd\_rsv\_reservable\_purpose\]
</td></tr><tr><td>
result.reservableUnits.reservations
</td><td id="reservableUnit_reservations-reserv-entry"><p>Details about the reservations associated with the reservable. Only populated if the <strong>include_reservations_within_days</strong> query parameter is true and the <strong>reservation_ids</strong> parameter contains reservation IDs, meaning there are reservations already present for this reservable.Data type: Array of Objects</p>
<div class="highlight"><pre><span></span><code>"reservations": [
{
"configuration_item": "String",
"end": "String",
"is_collided": Boolean,
"location": {Object},
"number": "String",
"requested_for": {Object},
"reservation_purpose": {Object},
"start": "String",
"state": {Object},
"subject": "String",
"sys_id": "String"
}
]
</code></pre></div></td></tr><tr id="configuration_item-reserv-row"><td>
result.reservableUnits.reservations.configuration\_item
</td><td>
Configuration items corresponding to the reservation.Data type: String
Table: Configuration Item \[cmdb\_ci\]
</td></tr><tr><td>
result.reservableUnits.reservations.end
</td><td>
Reservation end date and time.Data type: String
Format: UTC: yyyy-mm-ddThh:mm:ssZ, such as 2021-02-05T18:00:00Z
</td></tr><tr id="is_collided-reserv-row"><td>
result.reservableUnits.reservations.is\_collided
</td><td>
Flag that indicates whether the reservation collides with the start and end time of the search.This indicates that the associated reservable location is already reserved for the specified search timespan.
Possible values:
- true: Collision.
- false: No collision.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.reservations.location
</td><td id="reservableUnit_reservations_location-reserv-entry">
Details about the location of the reservation.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.location.location
</td><td>
Sys\_id of the associated location record.Data type: String
Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
</td></tr><tr><td>
result.reservableUnits.reservations.location.timezone
</td><td>
Details about the time zone associated with the location.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.location.timezone.displayValue
</td><td>
Display value for the time zone to which this location belongs.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.location.timezone.value
</td><td>
Internal value for the time zone to which this location belongs.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.number
</td><td>
Unique identifier of the reservable. This value is more human readable than the sys\_id.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.requested\_for
</td><td>
Details about the person for whom the reservation was requested on behalf of.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.requested\_for.name
</td><td>
Name of the user for whom the reservation was requested for.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.requested\_for.sys\_id
</td><td>
Sys\_id of the user for whom the reservation is being requested.Data type: String
Table: User \[sys\_user\]
</td></tr><tr><td>
result.reservableUnits.reservations.reservation\_purpose
</td><td>
Details about the purpose of the reservation.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.reservation\_purpose.display\_value
</td><td>
Display value for the purpose of the reservation, such as Company meeting.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.reservation\_purpose.value
</td><td>
Internal value for the purpose of the reservation, such as company\_meeting.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.start
</td><td>
Reservation start date and time.Data type: String
Format: UTC - yyyy-mm-ddThh:mm:ssZ, such as 2021-02-05T18:00:00Z
</td></tr><tr><td>
result.reservableUnits.reservations.state
</td><td>
Details about the state of the reservation for the location.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.state.display\_value
</td><td>
Display value for the current state of the reservation, such as confirmed.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.state.value
</td><td>
Internal value for the current state of the reservation, such as 2.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.subject
</td><td>
Reservation's subject.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.sys\_id
</td><td>
Required. Sys\_id of the reservation record.
Data type: String
Table: Workplace Reservation \[sn\_wsd\_rsv\_reservation\]
</td></tr><tr><td>
result.reservableUnits.reservable\_quantity
</td><td>
Maximum number of times the associated reservable can be reserved for the same time. This value is used when assigning neighborhood spaces to an area.Data type: Integer
</td></tr><tr><td>
result.reservableUnits.showPrivacyOption
</td><td>
Flag that indicates whether an employee can override the privacy settings for the associated reservable.For additional information on these privacy settings, see <a href="../../../employee-service-management/workplace-reservation-management/location-privacy-settings-and-impact/">Location privacy settings and impact</a>.
Valid values:
- true: Privacy settings can be overridden.
- false: Privacy setting can't be overridden.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.site
</td><td>
Details about the site where the reservable resides.Data type: Object
Table: Site \[sn\_wsd\_core\_site\]
</td></tr><tr><td>
result.reservableUnits.site.display\_value
</td><td>
Display value of the site.Data type: String
</td></tr><tr><td>
result.reservableUnits.site.sys\_id
</td><td>
Sys\_id of the associated site record.Data type: String
Table: Site \[sn\_wsd\_core\_site\]
</td></tr><tr><td>
result.reservableUnits.standard\_services
</td><td>
Associated standard services, such as flip chart, projector screen, and whiteboard and markers.
Data type: Array of Objects
</td></tr><tr><td>
result.reservableUnits.standard\_services.font\_awesome\_icon
</td><td>
Name of the thumbnail icon associated with the standard service.Data type: String
</td></tr><tr><td>
result.reservableUnits.standard\_services.name
</td><td>
Name of the thumbnail icon associated with the standard service.Data type: String
</td></tr><tr><td>
result.reservableUnits.standard\_services.short\_description
</td><td>
Brief description of the standard service.Data type: String
</td></tr><tr><td>
result.reservableUnits.standard\_services.sys\_id
</td><td>
Sys\_id of the standard service record.Data type: String
Table: Standard Service \[sn\_wsd\_rsv\_standard\_service\]
</td></tr><tr><td>
result.reservableUnits.sys\_id
</td><td>
Sys\_id of the reservable record.Data type: String
Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
</td></tr><tr><td>
result.reservableUnits.tableName
</td><td>
Name of the table in which the reservable record resides. Data type: String
</td></tr><tr><td>
result.reservableUnits.title
</td><td>
Title of the reservable.Data type: String
</td></tr></tbody>
</table>
### cURL request
The following code example shows how to call this endpoint.
## WSD Search - GET /api/sn\_wsd\_rsv/search/overlapping\_reservation
Determines whether an overlapping reservation exists based on the passed parameters.
### URL format
Versioned URL: `/api/sn_wsd_rsv/{api_version}/search/overlapping_reservation`
Default URL: `/api/sn_wsd_rsv/search/overlapping_reservation`
**Note:** Available versions are specified in the [REST API Explorer](../rest-api-explorer/use-REST-API-Explorer.md). For scripted REST APIs there is additional version information on the [Scripted REST Service form](../rest-api-explorer/c_CustomWebServices.md).
### Supported request parameters
<table class="rest_api_path_parameters"><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
api\_version
</td><td id="version-entry-RESTAPI">
Optional. Version of the endpoint to access. For example, `v1` or `v2`. Only specify this value to use an endpoint version other than the latest. Data type: String
</td></tr></tbody>
</table>
<table class="rest_api_query_parameters"><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
end
</td><td>
Required. End time to use to check for overlapping reservations.Data type: String
Format: YYYY-MM-DDTHH:MM:SSZ
</td></tr><tr><td>
recurring\_pattern
</td><td>
Details about the recurring pattern for the reservation.Data type: Object
</td></tr><tr><td>
recurring\_pattern.duration
</td><td>
Length of time to check.Data type: Number
Unit: Seconds
</td></tr><tr><td>
recurring\_pattern.options
</td><td>
Details about the options associated with the recurring reservation.Data type: Object
"options": { "count": Number, "daysOfWeek": "String", "every": Number }
</td></tr><tr><td>
recurring\_pattern.options.count
</td><td>
Number of times the pattern is repeated.Data type: Number
</td></tr><tr><td>
recurring\_pattern.options.daysOfWeek
</td><td>
Days of the week to check for overlap.Valid values:
- 1 = Monday
- 2 = Tuesday
- 3 = Wednesday
- 4 = Thursday
- 5 = Friday
- 6 = Saturday
- 7 = Sunday
For example, to specify Tuesday, Thursday, and Friday, pass 245 \(no delimiter\).
Data type: String
</td></tr><tr><td>
recurring\_pattern.options.every
</td><td>Pattern repeat interval to check. For example, if this value is <code>2</code>, it checks the repeat pattern based on the selection in the <strong>repeats</strong> parameter, such as every other day or every other week.Data type: Number</td></tr><tr><td>
recurring\_pattern.options.repeats
</td><td>
Repeating pattern for the reservation overlap check.Possible values: \(case-sensitive\)
- daily
- monthly
- weekly
- yearly
Data type: String
</td></tr><tr><td>
reservable\_id
</td><td>
Sys\_id of the reservable module to check for overlapping reservations.Data type: String
Table: Reservable Module \[sn\_wsd\_rsv\_reservable\_module\]
</td></tr><tr><td>
reservation\_id
</td><td>
Sys\_id of the reservation to check for overlap. This value is needed in the edit flow of multi/group parents.Data type: String
Table: Workplace Reservation \[sn\_wsd\_rsv\_reservation\]
</td></tr><tr><td>
shift\_info\_object
</td><td>
Details of the shift to check for overlap. For additional information on shift-based reservations, see <a href="../../../employee-service-management/workplace-reservation-management/wsd-reservation-setup/">Enable shift-based reservation</a>.
Data type: Object
</td></tr><tr><td>
shift\_info\_object.applyToShift
</td><td>
Flag that indicates whether shift-based reservations are enabled for the reservable module. Valid values:
- true: Allow shift-based reservations.
- false: Don't allow shift-based reservations.
Data type: Boolean
</td></tr><tr><td>
shift\_info\_object.shift
</td><td><p>Sys_id of the shift to associate with the reservation. If this parameter is passed in, the <strong>end</strong> parameter isn't required.Data type: String</p>
<p>Table:Shift [sn_wsd_core_shift]</p></td></tr><tr><td>
shift\_info\_object.timezone
</td><td>
Time zone of the shift to check for overlap.Data type: String
</td></tr><tr><td>
start
</td><td>
Required. Start time to use to check for overlapping reservations.Data type: String
Format: YYY-MM-DDTHH:MM:SSZ
</td></tr><tr><td>
user\_id
</td><td>
Required. Sys\_id of the user to check for overlapping reservations.Data type: String
Table: User \[sys\_user\]
</td></tr></tbody>
</table>
|Name|Description|
|----|-----------|
|None| |
### Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see [Supported REST API headers](../rest-api-explorer/c_RESTAPI.md).
<table class="rest_api_request_headers"><thead><tr><th>
Header
</th><th>
Description
</th></tr></thead><tbody><tr><td>
Accept
</td><td id="accept-entry-RESTAPI">Data format of the response body. Supported types: <strong>application/json</strong> or <strong>application/xml</strong>. Default: <strong>application/json</strong></td></tr></tbody>
</table>
|Header|Description|
|------|-----------|
|None| |
### Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see [REST API HTTP response codes](../rest-api-explorer/c_RESTAPI.md).
|Status code|Description|
|-----------|-----------|
|200|Successful. The request was successfully processed.|
|400|Bad Request. A bad request type or malformed request was detected.|
|401|Unauthorized. The user credentials are incorrect or have not been passed.|
|404|Not found. The requested item wasn't found.|
|500|Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.|
### Response body parameters \(JSON or XML\)
<table><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
results
</td><td>
Details of the results of the overlap check.Data type: Object
</td></tr><tr><td>
results.isOverlapped
</td><td>
Flag that indicates whether an overlapping reservation exists. Valid values:
- true: Overlapping reservation exists.
- false: Overlapping reservation doesn’t exist.
Data type: Boolean
</td></tr><tr><td>
results.reservableId
</td><td>
In the case of a group reservation, the sys\_id of the reservable for which the overlap occurs.Data type: String
</td></tr></tbody>
</table>
### cURL request
The following code example shows how to check for a reservation overlap for a specific user and for a specific period of time denoted by the **start** and **end** parameters.
## WSD Search - GET /api/sn\_wsd\_rsv/search/reservable
Searches for available reservable items using a specified reservable model configuration.
### URL format
Versioned URL: `/api/sn_wsd_rsv/{api_version}/search/reservable`
Default URL: `/api/sn_wsd_rsv/search/reservable`
**Note:** Available versions are specified in the [REST API Explorer](../rest-api-explorer/use-REST-API-Explorer.md). For scripted REST APIs there is additional version information on the [Scripted REST Service form](../rest-api-explorer/c_CustomWebServices.md).
### Supported request parameters
<table class="rest_api_path_parameters"><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
api\_version
</td><td id="version-entry-RESTAPI">
Optional. Version of the endpoint to access. For example, `v1` or `v2`. Only specify this value to use an endpoint version other than the latest. Data type: String
</td></tr></tbody>
</table>
<table class="rest_api_query_parameters"><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
end
</td><td id="end-query-reserv-entry"><p>Required. End time to use to search for available reservable modules. This value must be later than the value specified in the <strong>start</strong> parameter.Data type: String</p>
<p>Format: UTC or local time (yyyy-mm-dd hh:mm:ss)</p></td></tr><tr><td>
exclude\_reservables
</td><td>
List of one or more sys\_ids of reservables to exclude from the search results.Data type: String or Array
Table: The table in which these sys\_ids are located is specified in the reservable\_table field in the Reservable Module \[sn\_wsd\_rsv\_reservable\_module\] table. It can be either the Space \[sn\_wsd\_core\_space\] or Room \[sn\_wsd\_core\_room\] table.
</td></tr><tr><td>
ignore\_same\_day\_validation
</td><td id="ignore_same_day_validation-reserv-entry">
Flag that indicates whether the reservation search ignores the change of the date validation between the start and end parameters.Valid values:
- true: Ignore the change date validation.
- false: Don't ignore the change date validation.
Data type: Boolean
Default: false
</td></tr><tr><td>
include\_reservable\_purposes
</td><td id="include_reservable_purposes-reserv-entry">
Flag that indicates whether to return the purpose of reserving the workplace location for each reservable in the return results.Valid values:
- true: Return the reservable purposes.
- false: Don't return the reservable purposes.
Data type: Boolean
Default: false
Table: Reservable Purpose \[sn\_wsd\_rsv\_reservable\_purpose\]
</td></tr><tr><td>
include\_reservations\_within\_days
</td><td id="include_reservations_within_days-reserv-entry">
Flag that indicates whether to return all free slots of available times in the response for each reservable for the whole day.Valid values:
- true: Return all free slots.
- false: Don't return all free slots.
Data type: Boolean
Default: false
</td></tr><tr><td>
include\_standard\_services
</td><td id="include_standard_services-reserv-entry">
Flag that indicates whether to return the standard services information in the response. This information is located in the Standard Service \[sn\_wsd\_rsv\_standard\_service\] table.A standard service describes basic provisions available with a reservable workplace item when the reservation is made, such as white boards, additional monitors, and similar services. For additional information on standard services, see <a href="../../../employee-service-management/workplace-reservation-management/standard-service/">Standard services</a>.
Valid values:
- true: Return the standard services information.
- false: Don't return the standard services information.
Data type: Boolean
Default: false
</td></tr><tr><td>
near\_by\_location\_id
</td><td><p>Required if the <strong>rsv_path</strong> parameter is set to <code>browse_near_a_person</code>. Sys_id of the location to use in the encoded query.Data type: String</p>
<p>Table: Workplace Location [sn_wsd_core_workplace_location]</p></td></tr><tr><td>
neighborhood
</td><td id="neighborhood-reserv-entry">
Required if the `rsv_path` parameter is set to `browse_by_neighborhood`.
Only available if the Space Management \(sn\_wsd\_spc\_mgmt\_neighborhood\) plugin is activated.
Sys\_id of the neighborhood record to use in the encoded query.
For additional information on neighborhood space reservations, see <a href="../../../employee-service-management/workplace-reservation-management/create-neighborhood-reservations/">Create neighborhood reservations</a>.
Data type: String
Table: Neighborhood \[sn\_wsd\_spcmgmt\_neighborhood\]
</td></tr><tr><td>
next\_item\_index
</td><td>
Index of next item to retrieve. Pass this parameter when paginating the return results.Data type: Number
Default: 0
</td></tr><tr><td>
page\_size
</td><td>
Maximum number of records to return in the return results.Data type: Number
Default: 6
</td></tr><tr><td>
q
</td><td id="q-reserv-entry">
Required. Encoded query to use to filter the search return results. Within this query you must specify the building sys\_id and you can specify parameters such as floor, area, capacity, standard services, and reservable\_purposes.All passed parameters must be sys\_ids, except for capacity, which is a number.
For example: `q=building=94e264cedb3650106c731dcd13961919^floorINfc7368cedb3650106c731dcd13961902^capacity>=1^standard_services=55c0818edb7650106c731dcd13961904^reservable_purposes=d6e5c7cd1ba4e01051848489cc4bcb81`
You can locate this information in the following tables:
- Area: sn\_wsd\_core\_area
- Building: sn\_wsd\_core\_building
- Floor: sn\_wsd\_core\_floor
- Reservable purposes: sn\_wsd\_rsv\_reservable\_purpose
- Standard services: sn\_wsd\_rsv\_standard\_service
Data type: String
</td></tr><tr><td>
reservable\_module
</td><td id="reservable_module-reserv-entry">
Required. Sys\_id of the reservable module to include in the search. A <a href="../../../employee-service-management/workplace-reservation-management/config-reservable-module/">reservable module</a> groups similar types of workplace items.Data type: String
Table: Reservable Module \[sn\_wsd\_rsv\_reservable\_module\]
</td></tr><tr><td>
reservation\_ids
</td><td id="reservation_ids-reserv-entry">
Comma-separated list of existing reservation sys\_ids. Pass this parameter if you want to edit the associated reservations.The time blocked for these sys\_ids for the corresponding reservables are treated as available.
Data type: String
Default: None
Table: Workplace Reservation \[sn\_wsd\_rsv\_reservation\]
</td></tr><tr><td>
rsv\_path
</td><td><p>Reservation path to apply to the search.Valid values:</p>
<ul>
<li>browse_all: Search all reservables.</li>
<li>browse_by_area: Search the reservables near a specific location. An area identifier must be passed in the encoded query (<strong>q</strong> parameter).</li>
<li>browse_by_neighborhood: Search the reservables near the neighborhood specified in the <strong>neighborhood</strong> parameter.</li>
<li>browse_near_a_person: Search the reservables near the workplace location of the person specified in the <strong>near_by_location_id</strong> parameter.</li>
</ul>
<p>Data type: String</p>
<p>Default: browse_all</p></td></tr><tr><td>
schedule\_view\_obj
</td><td id="schedule_view_obj-reserv-entry"><p>Details about the schedule view to return. Pass this object if you need 24-hour availability data for reservations that span more than one day. The return results will only contain available times and reservations for the specified date.For this functionality to work properly, the parameters <strong>ignore_same_day_validation</strong> and <strong>include_reservations_within_days</strong> must be set to <code>true</code>.</p>
<p>Data type: Object</p>
<div class="highlight"><pre><span></span><code>"schedule_view_obj": {
"schedule_view_date": "String",
"timezone": "String"
}
</code></pre></div></td></tr><tr><td>
schedule\_view\_obj.schedule\_view\_date
</td><td id="schedule_view_obj-schedule_view_date-reserv-entry"><p>Date for which to start returning reservation availability. This date must be in the time zone specified in the <strong>schedule_view_obj.timezone</strong> parameter.Data type: String</p>
<p>Format: YYYY-MM-DD</p></td></tr><tr><td>
schedule\_view\_obj.timezone
</td><td id="schedule_view_obj-timezone-entry">
Building time zone to use to determine the reservation availability data to return. For example: US/Pacific.Data type: String
</td></tr><tr><td>
start
</td><td id="start-query-reserv-entry"><p>Required. Start time to use to search for available reservable modules. This value must be prior to the value specified in the <strong>end</strong> parameter.Data type: String</p>
<p>Format: UTC or local time (yyyy-mm-dd hh:mm:ss)</p></td></tr><tr><td>
shift
</td><td id="shift-update_reserv-entry"><p>Sys_id of the shift to associate with the reservation. If this parameter is passed in, the <strong>end</strong> parameter isn't required.</p>
<p>For additional information on shift-based reservations, see <a href="../../../employee-service-management/workplace-reservation-management/wsd-reservation-setup/">Enable shift-based reservation</a>.</p>
<p>Data type: String</p>
<p>Table: Shift [sn_wsd_core_shift]</p></td></tr><tr><td>
sort\_by
</td><td>
Desired sort order of the returned reservable items. Valid values:
- a\_z: Ascending sort order.
- favorites\_first: Sorted by the user's favorite workplace reservables first, ascending for the rest.
- z\_a: Descending sort order.
Data type: String
Default: a\_z
</td></tr><tr><td>
timezone
</td><td id="timezone_q_parm-reserv-query">
Preferred time zone, such as Europe/Amsterdam.Data type: String
Default: None
</td></tr></tbody>
</table>
|Name|Description|
|----|-----------|
|None| |
### Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see [Supported REST API headers](../rest-api-explorer/c_RESTAPI.md).
<table class="rest_api_request_headers"><thead><tr><th>
Header
</th><th>
Description
</th></tr></thead><tbody><tr><td>
Accept
</td><td id="accept-reserv-entry">Data format of the request body. Supported types: <strong>application/json</strong>, <strong>application/xml</strong> or, <strong>text/xml</strong>. Default: <strong>application/json</strong></td></tr></tbody>
</table>
|Header|Description|
|------|-----------|
|None| |
### Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see [REST API HTTP response codes](../rest-api-explorer/c_RESTAPI.md).
|Status code|Description|
|-----------|-----------|
|200|Successful. The request was successfully processed.|
|401|Unauthorized. The user credentials are incorrect or have not been passed.|
|404|Not found. The requested item wasn't found.|
|500|Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.|
### Response body parameters
<table><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
result
</td><td>
Return results for the specified search.Data type: Object
</td></tr><tr><td>
result.filter
</td><td><p>Details about the floors, standard services, and reservable purposes of the reservables. If the <strong>include_standard_services</strong> or <strong>include_reservable_purposes</strong> parameters are set to false, <strong>standard_services</strong> and <strong>reservable_purposes</strong> are empty arrays.Data type: Object</p>
<div class="highlight"><pre><span></span><code>"filter": {
"floors": [Array],
"reservable_purposes": [Array],
"standard_services": [Array]
}
</code></pre></div></td></tr><tr><td>
result.filter.floors
</td><td>
Details about the floor on which the reservable is located.
Data type: Object
```
"floors": [
{
"display_value": "String",
"sys_id": "String"
}
]
result.filter.floors.display\_value
Display number of the floor on which the reservable resides, such as 12.Data type: String
result.filter.floors.sys\_id
Sys\_id of the associated record.Data type: String Table: Floor \[sn\_wsd\_core\_floor\]
result.filter.standard\_services
Only populated if the include_standard_services parameter is set to true. Associated standard services, such as flip chart, projector screen, and whiteboard and markers.
Brief description of the reservable.Data type: String
result.filter.reservable\_purposes.sys\_id
Sys\_id of the reservable purpose record.Data type: String Table: Reservable Purpose \[sn\_wsd\_rsv\_reservable\_purpose\]
result.hasMore
Flag that indicates whether there are more reservables in the return results.Possible values: - true: More reservables available. - false: No more reservables available. Data type: Boolean
result.nextFavIndex
Index for the next favorite reservable for the user. Use this value when paginating through the user's favorite reservables.Data type: Number
result.nextItemIndex
Index for the next reservable record to fetch. Use this value when paginating through reservable records.Data type: Number
result.reservableContainers
Only returned for reservable modules whose selection\_type field is set to `container`. A container is a grouping of similar items, such as a group of desks.Data type: Array of Objects
Sys\_id of the associated building record.Data type: String
result.reservableContainers.campus
Details about the campus on which the reservable is located. Data type: Object ``` "campus": { "display_value": "String", "name": "String", "sys_id": "String" }
Table: Campus \[sn\_wsd\_core\_campus\]
</td></tr><tr><td>
result.reservableContainers.campus.display\_value
</td><td>
Display number of the Campus on which the reservable resides, such as East Bay.Data type: String
</td></tr><tr><td>
result.reservableContainers.campus.name
</td><td>
Name of the campus.Data type: String
</td></tr><tr><td>
result.reservableContainers.campus.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Campus \[sn\_wsd\_core\_campus\]
</td></tr><tr><td>
result.reservableContainers.capacity
</td><td id="reservableContainers_capacity-reserv-entry">
Maximum number of occupants for the reservable.Data type: Number
</td></tr><tr><td>
result.reservableContainers.display\_value
</td><td id="reservableContainers_display_value-reserv-entry">
Display value for the reservable container.Data type: String
</td></tr><tr><td>
result.reservableContainers.floor
</td><td id="reservableContainers_floor-reserv-entry">
Details about the floor associated with the reservable container.Data type: Object
</td></tr><tr><td>
result.reservableContainers.floor.display\_value
</td><td>
Display number of the floor on which the reservable resides, such as 12.Data type: String
</td></tr><tr><td>
result.reservableContainers.floor.name
</td><td>
Name of the floor on which the reservable resides.Data type: String
</td></tr><tr><td>
result.reservableContainers.floor.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Floor \[sn\_wsd\_core\_floor\]
</td></tr><tr><td>
result.reservableContainers.image
</td><td>
Link to an image that represents the layout for this reservable.Data type: String
Table: Images \[db\_image\]
</td></tr><tr><td>
result.reservableContainers.image.link
</td><td>
Link to an image that represents the layout for this reservable.Data type: String
Table: Images \[db\_image\]
</td></tr><tr><td>
result.reservableContainers.image.sys\_id
</td><td>
Sys\_id of the associated image record.Data type: String
</td></tr><tr><td>
result.reservableContainers.sys\_id
</td><td id="reservableContainers_sys_id-reserv-container">
Sys\_id of the associated container record.Data type: String
Table: The table in which this resides can be configured for any container type. By default it is in the Area \[sn\_wsd\_core\_area\] table.
</td></tr><tr><td>
result.reservableUnits
</td><td id="reservableUnit-reserv-entry">
Details about the reservable units that match the specified search criteria. A reservable unit is a single reservable item such as a desk or a chair.Data type: Array of Objects
</td></tr><tr><td>
result.reservableUnits.area
</td><td id="reservableUnit_area-reserv-entry">
Details about the area in which the reservable module is located.Data type: Object
Table: Area \[sn\_wsd\_core\_area\]
</td></tr><tr><td>
result.reservableUnits.area.display\_value
</td><td id="reservableUnit_area_display_value-reserv-entry">
Display value for the reservable module area.Data type: String
</td></tr><tr><td>
result.reservableUnits.area.sys\_id
</td><td id="reservableUnit_area_sys_id-reserv-entry">
Sys\_id of the area record associated with the reservable.Data type: String
</td></tr><tr><td>
result.reservableUnits.availableTimes
</td><td id="availableTimes-reserv-entry">
List of dates/times that the associated reservable is available.Data type: Array
</td></tr><tr><td>
result.reservableUnits.building
</td><td id="reservableUnit_building-reserv-entry">
Details about the building in which the reservable is located.Data type: Object
Table: Building \[sn\_wsd\_core\_building\]
</td></tr><tr><td>
result.reservableUnits.building.display\_value
</td><td>
Display value for the building.Data type: String
</td></tr><tr><td>
result.reservableUnits.building.sys\_id
</td><td>
Sys\_id of the associated building record.Data type: String
</td></tr><tr><td>
result.reservableUnits.campus
</td><td>
Details about the campus on which the reservable is located.
Data type: Object
```
"campus": {
"display_value": "String",
"sys_id": "String"
}
Table: Campus \[sn\_wsd\_core\_campus\]
result.reservableUnits.campus.display\_value
Display number of the Campus on which the reservable resides, such as East Bay.Data type: String
result.reservableUnits.campus.sys\_id
Sys\_id of the associated record.Data type: String Table: Campus \[sn\_wsd\_core\_campus\]
result.reservableUnits.capacity
Maximum number of occupants for the reservable.Data type: Number
result.reservableUnits.description
Brief description of the reservable.Data type: String
result.reservableUnits.email
Email address for the reservable.Data type: String
result.reservableUnits.external\_id
External ID of the reservable used to sync a space mapped in CMS. This value is only populated if there is a map associated with this location. Data type: String
result.reservableUnits.floor
Details about the floor on which the reservable is located. Data type: Object ``` "floor": { "display_value": "String", "sys_id": "String" }
Table: Floor \[sn\_wsd\_core\_floor\]
</td></tr><tr><td>
result.reservableUnits.floor.display\_value
</td><td>
Display number of the floor on which the reservable resides, such as 12.Data type: String
</td></tr><tr><td>
result.reservableUnits.floor.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Floor \[sn\_wsd\_core\_floor\]
</td></tr><tr><td>
result.reservableUnits.image
</td><td>
Details about an image that represents the layout for the associated reservable.Data type: Object
"image": { "link": "String", "sys_id": "String" }
Table: Images \[db\_image\]
</td></tr><tr><td>
result.reservableUnits.image.link
</td><td>
Link to an image that represents the layout for this reservable.Data type: String
Table: Images \[db\_image\]
</td></tr><tr><td>
result.reservableUnits.image.sys\_id
</td><td>
Sys\_id of the associated image record.Data type: String
</td></tr><tr><td>
result.reservableUnits.includedInResult
</td><td id="reservableUnit_includedInResult-reserv-entry">
Flag that indicates whether the current reservable is included in the return results.Valid values:
- true: Included in the return results.
- false: Not included in the return results.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.is\_available
</td><td id="is_available-reserv-entry">
Flag that indicates whether the reservable is available to reserve.Valid values:
- true: Available to reserve.
- false: Not available to reserve.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.is\_favorite
</td><td id="reservableUnit_is_favorite-reserv-entry">
Flag that indicates whether the reservable is flagged as one of the associated user's favorites.Valid values:
- true: Favorite.
- false: Not a favorite.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.is\_reservable
</td><td id="reservableUnit_is_reservable-reserv-entry"><p>Flag that indicates whether it's possible to reserve this reservable. <strong>Note:</strong> If the <strong>include_unavailable_items</strong> query parameter is set to true, unavailable locations are also returned. In this case, if a location is already reserved, then the <strong>is_available</strong> parameter is false, but <strong>is_reservable</strong> is true.</p>
<p>Valid values:</p>
<ul>
<li>true: Available to reserve.</li>
<li>false: Not available to reserve.</li>
</ul>
<p>Data type: Boolean</p></td></tr><tr><td>
result.reservableUnits.is\_reserved
</td><td id="reservableUnit_is_reserved-reserv-entry">
Flag that indicates whether the reservable is already reserved.Valid values:
- true: Available to reserve.
- false: Already reserved.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.is\_selected
</td><td id="reservableUnit_is_selected-reserv-entry">
Flag that indicates whether the reservable is already reserved.Valid values:
- true: Available to reserve.
- false: Already reserved.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.location\_type
</td><td id="reservableUnit_location_type-reserv-entry">
Details about the type of location of the reservable, such as workplace/desk, cafe, or gym.Data type: Object
Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
</td></tr><tr><td>
result.reservableUnits.location\_type.display\_value
</td><td>
Display value of the location type.Data type: String
</td></tr><tr><td>
result.reservableUnits.location\_type.name
</td><td id="reservableUnit_location_type_name-reserv-entry">
Name of the location type, such as basement or storage. Same as display value.Data type: String
</td></tr><tr><td>
result.reservableUnits.location\_type.sys\_id
</td><td>
Sys\_id of the associated record.Data type: String
Table: Space Type \[sn\_wsd\_core\_space\_type\]
</td></tr><tr><td>
result.reservableUnits.name
</td><td>
Name of the reservable.Data type: String
</td></tr><tr><td>
result.reservableUnits.number
</td><td>
Unique identifier of the reservable. This value is more human readable than the sys\_id.Data type: String
</td></tr><tr><td>
result.reservableUnits.order
</td><td>
Order number for the reservable.Data type: Number
</td></tr><tr><td>
result.reservableUnits.require\_approval
</td><td>
Flag that indicates whether reserving the reservable requires an approval.Possible values:
- true: Approval required.
- false: Approval isn't required.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.requires\_check\_in
</td><td>
Flag that indicates whether the reservable requires the user to check in.Valid values:
- true: Check in required.
- false: Check in isn't required.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.reservable\_purposes
</td><td>
Details about the purpose for reserving the associated reservable.Data type: Array of Objects
</td></tr><tr><td>
result.reservableUnits.reservable\_purposes.name
</td><td>
Name of the reservable.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservable\_purposes.short\_description
</td><td>
Brief description of the reservable.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservable\_purposes.sys\_id
</td><td>
Sys\_id of the reservable purpose record.Data type: String
Table: Reservable Purpose \[sn\_wsd\_rsv\_reservable\_purpose\]
</td></tr><tr><td>
result.reservableUnits.reservations
</td><td id="reservableUnit_reservations-reserv-entry"><p>Details about the reservations associated with the reservable. Only populated if the <strong>include_reservations_within_days</strong> query parameter is true and the <strong>reservation_ids</strong> parameter contains reservation IDs, meaning there are reservations already present for this reservable.Data type: Array of Objects</p>
<div class="highlight"><pre><span></span><code>"reservations": [
{
"configuration_item": "String",
"end": "String",
"is_collided": Boolean,
"location": {Object},
"number": "String",
"requested_for": {Object},
"reservation_purpose": {Object},
"start": "String",
"state": {Object},
"subject": "String",
"sys_id": "String"
}
]
</code></pre></div></td></tr><tr id="configuration_item-reserv-row"><td>
result.reservableUnits.reservations.configuration\_item
</td><td>
Configuration items corresponding to the reservation.Data type: String
Table: Configuration Item \[cmdb\_ci\]
</td></tr><tr><td>
result.reservableUnits.reservations.end
</td><td>
Reservation end date and time.Data type: String
Format: UTC: yyyy-mm-ddThh:mm:ssZ, such as 2021-02-05T18:00:00Z
</td></tr><tr id="is_collided-reserv-row"><td>
result.reservableUnits.reservations.is\_collided
</td><td>
Flag that indicates whether the reservation collides with the start and end time of the search.This indicates that the associated reservable location is already reserved for the specified search timespan.
Possible values:
- true: Collision.
- false: No collision.
Data type: Boolean
</td></tr><tr><td>
result.reservableUnits.reservations.location
</td><td id="reservableUnit_reservations_location-reserv-entry">
Details about the location of the reservation.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.location.location
</td><td>
Sys\_id of the associated location record.Data type: String
Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
</td></tr><tr><td>
result.reservableUnits.reservations.location.timezone
</td><td>
Details about the time zone associated with the location.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.location.timezone.displayValue
</td><td>
Display value for the time zone to which this location belongs.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.location.timezone.value
</td><td>
Internal value for the time zone to which this location belongs.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.number
</td><td>
Unique identifier of the reservable. This value is more human readable than the sys\_id.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.requested\_for
</td><td>
Details about the person for whom the reservation was requested on behalf of.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.requested\_for.name
</td><td>
Name of the user for whom the reservation was requested for.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.requested\_for.sys\_id
</td><td>
Sys\_id of the user for whom the reservation is being requested.Data type: String
Table: User \[sys\_user\]
</td></tr><tr><td>
result.reservableUnits.reservations.reservation\_purpose
</td><td>
Details about the purpose of the reservation.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.reservation\_purpose.display\_value
</td><td>
Display value for the purpose of the reservation, such as Company meeting.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.reservation\_purpose.value
</td><td>
Internal value for the purpose of the reservation, such as company\_meeting.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.start
</td><td>
Reservation start date and time.Data type: String
Format: UTC - yyyy-mm-ddThh:mm:ssZ, such as 2021-02-05T18:00:00Z
</td></tr><tr><td>
result.reservableUnits.reservations.state
</td><td>
Details about the state of the reservation for the location.Data type: Object
</td></tr><tr><td>
result.reservableUnits.reservations.state.display\_value
</td><td>
Display value for the current state of the reservation, such as confirmed.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.state.value
</td><td>
Internal value for the current state of the reservation, such as 2.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.subject
</td><td>
Reservation's subject.Data type: String
</td></tr><tr><td>
result.reservableUnits.reservations.sys\_id
</td><td>
Required. Sys\_id of the reservation record.
Data type: String
Table: Workplace Reservation \[sn\_wsd\_rsv\_reservation\]
</td></tr><tr><td>
result.reservableUnits.reservable\_quantity
</td><td>
Maximum number of times the associated reservable can be reserved for the same time. This value is used when assigning neighborhood spaces to an area.Data type: Integer
</td></tr><tr><td>
result.reservableUnits.site
</td><td>
Details about the site where the reservable resides.Data type: Object
Table: Site \[sn\_wsd\_core\_site\]
</td></tr><tr><td>
result.reservableUnits.site.display\_value
</td><td>
Display value of the site.Data type: String
</td></tr><tr><td>
result.reservableUnits.site.sys\_id
</td><td>
Sys\_id of the associated site record.Data type: String
Table: Site \[sn\_wsd\_core\_site\]
</td></tr><tr><td>
result.reservableUnits.standard\_services
</td><td>
Associated standard services, such as flip chart, projector screen, and whiteboard and markers.
Data type: Array of Objects
</td></tr><tr><td>
result.reservableUnits.standard\_services.font\_awesome\_icon
</td><td>
Name of the thumbnail icon associated with the standard service.Data type: String
</td></tr><tr><td>
result.reservableUnits.standard\_services.name
</td><td>
Name of the thumbnail icon associated with the standard service.Data type: String
</td></tr><tr><td>
result.reservableUnits.standard\_services.short\_description
</td><td>
Brief description of the standard service.Data type: String
</td></tr><tr><td>
result.reservableUnits.standard\_services.sys\_id
</td><td>
Sys\_id of the standard service record.Data type: String
Table: Standard Service \[sn\_wsd\_rsv\_standard\_service\]
</td></tr><tr><td>
result.reservableUnits.sys\_id
</td><td>
Sys\_id of the reservable record.Data type: String
Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
</td></tr><tr><td>
result.reservableUnits.tableName
</td><td>
Name of the table in which the reservable record resides. Data type: String
</td></tr><tr><td>
result.reservableUnits.title
</td><td>
Title of the reservable.Data type: String
</td></tr><tr><td>
result.totalProcessed
</td><td>
Total number of records processed.Data type: Number
</td></tr></tbody>
</table>
### cURL request
This example shows how to search for reservables using this endpoint. Note: Line breaks have been added to the query parameters for easier reading.
## WSD Search - GET /api/sn\_wsd\_rsv/search/shift/\{building\_id\}/\{module\_id\}
Returns an encoded query that you can use to search for available shifts in the Shift \[sn\_wsd\_core\_shift\] table.
Only applicable if the appy\_to\_shift field in the specified reservable module is enabled. Otherwise, the returned encoded query string will be empty.
### URL format
Versioned URL: `/api/sn_wsd_rsv/{api_version}/search/shift/{building_id}/{module_id}`
Default URL: `/api/sn_wsd_rsv/search/shift/{building_id}/{module_id}`
**Note:** Available versions are specified in the [REST API Explorer](../rest-api-explorer/use-REST-API-Explorer.md). For scripted REST APIs there is additional version information on the [Scripted REST Service form](../rest-api-explorer/c_CustomWebServices.md).
### Supported request parameters
<table class="rest_api_path_parameters"><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
api\_version
</td><td id="version-entry-RESTAPI">
Optional. Version of the endpoint to access. For example, `v1` or `v2`. Only specify this value to use an endpoint version other than the latest. Data type: String
</td></tr><tr><td>
building\_id
</td><td>
Sys\_id of the building to include in the search query. Data type: String
Table: Building \[sn\_wsd\_core\_building\]
</td></tr><tr><td>
module\_id
</td><td>
Sys\_id of the reservable module to include in the search query. A reservable module groups similar types of workplace items, such a chairs or desks.Data type: String
Table: Reservable Module \[sn\_wsd\_core\_reservable\_module\]
</td></tr></tbody>
</table>
|Name|Description|
|----|-----------|
|None| |
<table class="rest_api_request_body"><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
end\_date
</td><td>
Shift end date and time to include in the encoded query.Data type: String
Format: yyyy-mm-dd hh:mm:ss
</td></tr><tr><td>
start\_date
</td><td>
Shift start date and time to include in the encoded query.Data type: String
Format: yyyy-mm-dd hh:mm:ss
</td></tr></tbody>
</table>
### Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see [Supported REST API headers](../rest-api-explorer/c_RESTAPI.md).
<table class="rest_api_request_headers"><thead><tr><th>
Header
</th><th>
Description
</th></tr></thead><tbody><tr><td>
Accept
</td><td id="accept-reserv-entry">Data format of the request body. Supported types: <strong>application/json</strong>, <strong>application/xml</strong> or, <strong>text/xml</strong>. Default: <strong>application/json</strong></td></tr></tbody>
</table>
|Header|Description|
|------|-----------|
|None| |
### Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see [REST API HTTP response codes](../rest-api-explorer/c_RESTAPI.md).
|Status code|Description|
|-----------|-----------|
|200|Successful. The request was successfully processed.|
|401|Unauthorized. The user credentials are incorrect or have not been passed.|
|404|Not found. The requested item wasn't found.|
|500|Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.|
### Response body parameters
<table><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
result
</td><td>
Encoded query to use to acquire the specified available shifts.Data type: Object
</td></tr><tr><td>
moduleHasShift
</td><td>
Flag that indicates whether the specified reservable module has shifts enabled.Valid values:
- true: Reservable module has shifts enabled.
- false: Reservable module doesn't has shifts enabled. No encoded query returned.
Data type: Boolean
</td></tr><tr><td>
query
</td><td>
Encoded query to use to retrieve shift information for the specified reservable module.Data type: String
</td></tr></tbody>
</table>
### cURL request
The following code example shows how to use this endpoint to obtain a shift encoded query.
## WSD Search - POST /api/sn\_wsd\_rsv/search/availability\_score
Returns an availability score for reservable items for specified timeslots.
### URL format
Versioned URL: `/api/sn_wsd_rsv/{api_version}/search/availability_score`
Default URL: `/api/sn_wsd_rsv/search/availability_score`
**Note:** Available versions are specified in the [REST API Explorer](../rest-api-explorer/use-REST-API-Explorer.md). For scripted REST APIs there is additional version information on the [Scripted REST Service form](../rest-api-explorer/c_CustomWebServices.md).
### Supported request parameters
<table class="rest_api_path_parameters"><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
api\_version
</td><td id="version-entry-RESTAPI">
Optional. Version of the endpoint to access. For example, `v1` or `v2`. Only specify this value to use an endpoint version other than the latest. Data type: String
</td></tr></tbody>
</table>
|Name|Description|
|----|-----------|
|None| |
<table class="rest_api_request_body"><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
recurringPattern
</td><td><p>Required if <strong>startEndDateTimes</strong> parameter is not specified. Recurring pattern to use to search for reservables that are available for the specified recurring events.Data type: Object</p>
<div class="highlight"><pre><span></span><code>"recurringPattern": {
"duration": Number,
"label": "String",
"options": {Object},
"repeats": "String",
"startDate": "String"
}
</code></pre></div></td></tr><tr><td>
recurringPattern.duration
</td><td>
Required. Length of time for which the reservable must be available.Data type: Number
Unit: Milliseconds
</td></tr><tr><td>
recurringPattern.label
</td><td>
Description of the recurring pattern, such as `Repeats daily, 5 times`.Data type: String
</td></tr><tr><td>
recurringPattern.options
</td><td>
Availability options for the recurring reservation to search for.Data type: Object
</td></tr><tr><td>
recurringPattern.options.count
</td><td>Required if <strong>endDate</strong> is not passed. If both are passed, <strong>count</strong> is used. Number of times to repeat the meeting pattern.Data type: Number</td></tr><tr><td>
recurringPattern.options.daysOfWeek
</td><td><p>Required if the <strong>recurringPattern.repeats</strong> parameter is set to <code>weekly</code>. Days of the week that the reservable is needed.Valid values:</p>
<ul>
<li>1 = Monday</li>
<li>2 = Tuesday</li>
<li>3 = Wednesday</li>
<li>4 = Thursday</li>
<li>5 = Friday</li>
<li>6 = Saturday</li>
<li>7 = Sunday</li>
</ul>
<p>For example, to specify Tuesday, Thursday, and Friday, pass 245 (no delimiter). If <strong>repeat</strong> is weekly, <strong>count</strong> is 5, and <strong>daysOfWeek</strong> is 245, then in the return results, the total is equal to <code>count*daysOfWeek.length</code> (5*3=15).</p>
<p>Data type: String</p></td></tr><tr><td>
recurringPattern.options.endDate
</td><td><p>Required if <strong>recurringPattern.options.count</strong> is not passed. If both are passed, <strong>count</strong> is used. End date and time of the recurrence of the meeting, such as "2022-07-08T14:00:00Z".Data type: String</p>
<p>Format: UTC yyyy-mm-dd hh:mm:ss</p></td></tr><tr><td>
recurringPattern.repeats
</td><td>
Required. Repeating pattern for the reservable.Valid values \(case-sensitive\):
- daily
- monthly
- weekly
- yearly
Data type: String
</td></tr><tr><td>
recurringPattern.startDate
</td><td>
Required. Start date and time for the recurring pattern, such as "2022-07-08T14:00:00Z".Data type: String
Format: UTC yyyy-mm-dd hh:mm:ss
</td></tr><tr><td>
reservableIds
</td><td>
Required. List of sys\_ids of the reservables to include in the availability score.Data type: Array
Table: Workplace Location \[sn\_wsd\_core\_workplace\_location\]
</td></tr><tr><td>
reservableType
</td><td>
Required. Type of reservable to include in the availability score. Used to refine the search.Valid values \(case-sensitive\):
- configuration\_item
- location
Data type: String
</td></tr><tr><td>
startEndDateTimes
</td><td><p>List of start and end dates and times in the user's timezone to search on.Data type: Array of Objects</p>
<div class="highlight"><pre><span></span><code>"startEndDateTimes": [
{
"end": "String",
"start": "String"
}
]
</code></pre></div>
<p>Default: Must specify <strong>recurringPattern</strong> parameter.</p></td></tr><tr><td>
startEndDateTimes.end
</td><td>
End date and time of the reservable.Data type: String
Format: yyyy-mm-dd hh:mm:ss
</td></tr><tr><td>
startEndDateTimes.start
</td><td>
Start date and time of the reservable.Data type: String
Format: yyyy-mm-dd hh:mm:ss
</td></tr></tbody>
</table>
### Headers
The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see [Supported REST API headers](../rest-api-explorer/c_RESTAPI.md).
<table class="rest_api_request_headers"><thead><tr><th>
Header
</th><th>
Description
</th></tr></thead><tbody><tr><td>
Accept
</td><td id="accept-entry-RESTAPI">Data format of the response body. Supported types: <strong>application/json</strong> or <strong>application/xml</strong>. Default: <strong>application/json</strong></td></tr><tr><td>
Content-Type
</td><td id="content_type-JSON-only-entry-RESTAPI">Data format of the request body. Only supports <strong>application/json</strong>.</td></tr></tbody>
</table>
|Header|Description|
|------|-----------|
|None| |
### Status codes
The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see [REST API HTTP response codes](../rest-api-explorer/c_RESTAPI.md).
|Status code|Description|
|-----------|-----------|
|200|Successful. The request was successfully processed.|
|401|Unauthorized. The user credentials are incorrect or have not been passed.|
|404|Not found. The requested item wasn't found.|
|500|Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.|
### Response body parameters
<table><thead><tr><th>
Name
</th><th>
Description
</th></tr></thead><tbody><tr><td>
result
</td><td>
Return results for the specified availability score.Data type: Object
"result": { "reservable_sys_id": {Object} }
</td></tr><tr><td>
result.reservable\_sys\_id
</td><td>
Details about the availability score.Data type: Object
"reservable_sys_id": { "available": Number, "score": "String", "total": Number }
</td></tr><tr><td>
result.reservable\_sys\_id.available
</td><td>
Number of available reservables that met the specified search criteria.Data type: Number
</td></tr><tr><td>
result.reservable\_sys\_id.score
</td><td>Availability score. Number of available reservables over the total number of reservables that met the specified search criteria. For example, if <strong>available</strong> is 2 and <strong>total</strong> is 4, the <strong>score</strong> value is 2/4.Data type: String</td></tr><tr><td>
result.reservable\_sys\_id.total
</td><td>
Total number of reservables that met the specified search criteria.Data type: Number
</td></tr></tbody>
</table>
### cURL request
The following code example shows how to call this endpoint.