Guestit
Search, price and compare Guestit's managed stays in Sweden. Continue booking on guestit.se.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"core-mcp": {
"url": "https://core.guestit.se/mcp"
}
}
}Remote endpoints
https://core.guestit.se/mcpstreamable-httpWhat it can do
Tool inventory
Tools (4)
π’resolve_destination(query, locale)
Find the Guestit destination for a place name before searching stays. Pass the place alone, such as Γ re or Stockholm. Returns only places with Guestit stays, at most one. When nothing matches, ask the user about a larger place nearby.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120,
"pattern": "\\S.*\\S"
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"destinations",
"search",
"details",
"compare"
]
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"calculated_at": {
"type": "string"
},
"requested_stay": {
"anyOf": [
{
"type": "object",
"properties": {
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
},
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"start_date",
"end_date",
"num_guests"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"destinations": {
"type": "array",
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"location_id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"country_code": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"location_id",
"slug",
"name",
"country_code",
"type"
],
"additionalProperties": false
}
},
"stays": {
"type": "array",
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"not_found"
]
},
"listing_slug": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"summary": {
"type": [
"string",
"null"
]
},
"website_url": {
"type": [
"string",
"null"
]
},
"rating_score": {
"type": [
"number",
"null"
]
},
"num_reviews": {
"type": [
"integer",
"null"
]
},
"cancellation_policy": {
"type": [
"string",
"null"
]
},
"house_rules": {
"type": [
"string",
"null"
]
},
"occupancy": {
"anyOf": [
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer"
},
"num_bedrooms": {
"type": "integer"
},
"num_beds": {
"type": "integer"
},
"pets_allowed": {
"type": [
"boolean",
"null"
]
}
},
"required": [
"num_guests",
"num_bedrooms",
"num_beds",
"pets_allowed"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"images": {
"type": "array",
"maxItems": 4,
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"alt_text": {
"type": [
"string",
"null"
]
}
},
"required": [
"url",
"alt_text"
],
"additionalProperties": false
}
},
"amenities": {
"type": "array",
"items": {
"type": "string"
}
},
"price": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"estimated",
"unavailable",
"dates_required"
]
},
"currency": {
"type": "string",
"enum": [
"SEK"
]
},
"total_minor": {
"type": [
"integer",
"null"
]
},
"unit": {
"type": [
"string",
"null"
],
"enum": [
"night",
"month",
null
]
},
"unit_price_minor": {
"type": [
"integer",
"null"
]
},
"cleaning_fee_minor": {
"type": [
"integer",
"null"
]
},
"guest_fees": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"amount_minor": {
"type": "integer"
}
},
"required": [
"name",
"amount_minor"
],
"additionalProperties": false
}
},
"payment_schedule": {
"type": "array",
"items": {
"type": "object",
"properties": {
"payment_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"from": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"amount_minor": {
"type": "integer"
}
},
"required": [
"payment_date",
"from",
"to",
"amount_minor"
],
"additionalProperties": false
}
},
"inventory_held": {
"const": false
},
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
}
},
"required": [
"status",
"currency",
"total_minor",
"unit",
"unit_price_minor",
"cleaning_fee_minor",
"guest_fees",
"payment_schedule",
"inventory_held",
"start_date",
"end_date"
],
"additionalProperties": false
}
},
"required": [
"status",
"listing_slug",
"name",
"summary",
"website_url",
"rating_score",
"num_reviews",
"occupancy",
"images",
"amenities",
"price"
],
"additionalProperties": false
}
},
"pagination": {
"anyOf": [
{
"type": "object",
"properties": {
"page": {
"type": "integer"
},
"total_pages": {
"type": "integer"
},
"total_count": {
"type": "integer",
"description": "Indexed match count. May exceed currently public or bookable results; not a fresh inventory count."
}
},
"required": [
"page",
"total_pages",
"total_count"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"applied_filters": {
"anyOf": [
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"location_id": {
"type": "string",
"pattern": "^[0-9]+$",
"maxLength": 20
},
"with_pets": {
"type": "boolean",
"default": false
},
"min_bedrooms": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"nightly_rate_min": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Minimum indexed average nightly rate in SEK. This is not an all-in stay total."
},
"nightly_rate_max": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Maximum indexed average nightly rate in SEK. The final stay total includes the applicable fees."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc"
],
"default": "relevance"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 1
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 5
}
},
"required": [
"location_id",
"num_guests"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"locale",
"calculated_at",
"requested_stay",
"destinations",
"stays",
"pagination",
"applied_filters"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}π’search_stays(num_guests, start_date, end_date, locale, location_id, ...)
Search public Guestit accommodation using a location_id from resolve_destination. Refine by resending the full filter set. Each stay is a short card; read house rules and the cancellation policy with stay_details or compare_stays before recommending one. Prices are estimates for the supplied dates and guests, with no inventory hold. Stays that fail the live check for those dates are left out, so a page can hold fewer than its limit. Nightly-rate filters use indexed average rates in SEK, not final stay totals. Pagination counts reflect the search index; current public rows may be fewer. Complete booking on the returned Guestit website link, which opens with the dates and guests filled in.
Input Schema
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"location_id": {
"type": "string",
"pattern": "^[0-9]+$",
"maxLength": 20
},
"with_pets": {
"type": "boolean",
"default": false
},
"min_bedrooms": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"nightly_rate_min": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Minimum indexed average nightly rate in SEK. This is not an all-in stay total."
},
"nightly_rate_max": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Maximum indexed average nightly rate in SEK. The final stay total includes the applicable fees."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc"
],
"default": "relevance"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 1
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 5
}
},
"required": [
"location_id",
"num_guests"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"destinations",
"search",
"details",
"compare"
]
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"calculated_at": {
"type": "string"
},
"requested_stay": {
"anyOf": [
{
"type": "object",
"properties": {
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
},
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"start_date",
"end_date",
"num_guests"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"destinations": {
"type": "array",
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"location_id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"country_code": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"location_id",
"slug",
"name",
"country_code",
"type"
],
"additionalProperties": false
}
},
"stays": {
"type": "array",
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"not_found"
]
},
"listing_slug": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"summary": {
"type": [
"string",
"null"
]
},
"website_url": {
"type": [
"string",
"null"
]
},
"rating_score": {
"type": [
"number",
"null"
]
},
"num_reviews": {
"type": [
"integer",
"null"
]
},
"cancellation_policy": {
"type": [
"string",
"null"
]
},
"house_rules": {
"type": [
"string",
"null"
]
},
"occupancy": {
"anyOf": [
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer"
},
"num_bedrooms": {
"type": "integer"
},
"num_beds": {
"type": "integer"
},
"pets_allowed": {
"type": [
"boolean",
"null"
]
}
},
"required": [
"num_guests",
"num_bedrooms",
"num_beds",
"pets_allowed"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"images": {
"type": "array",
"maxItems": 4,
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"alt_text": {
"type": [
"string",
"null"
]
}
},
"required": [
"url",
"alt_text"
],
"additionalProperties": false
}
},
"amenities": {
"type": "array",
"items": {
"type": "string"
}
},
"price": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"estimated",
"unavailable",
"dates_required"
]
},
"currency": {
"type": "string",
"enum": [
"SEK"
]
},
"total_minor": {
"type": [
"integer",
"null"
]
},
"unit": {
"type": [
"string",
"null"
],
"enum": [
"night",
"month",
null
]
},
"unit_price_minor": {
"type": [
"integer",
"null"
]
},
"cleaning_fee_minor": {
"type": [
"integer",
"null"
]
},
"guest_fees": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"amount_minor": {
"type": "integer"
}
},
"required": [
"name",
"amount_minor"
],
"additionalProperties": false
}
},
"payment_schedule": {
"type": "array",
"items": {
"type": "object",
"properties": {
"payment_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"from": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"amount_minor": {
"type": "integer"
}
},
"required": [
"payment_date",
"from",
"to",
"amount_minor"
],
"additionalProperties": false
}
},
"inventory_held": {
"const": false
},
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
}
},
"required": [
"status",
"currency",
"total_minor",
"unit",
"unit_price_minor",
"cleaning_fee_minor",
"guest_fees",
"payment_schedule",
"inventory_held",
"start_date",
"end_date"
],
"additionalProperties": false
}
},
"required": [
"status",
"listing_slug",
"name",
"summary",
"website_url",
"rating_score",
"num_reviews",
"occupancy",
"images",
"amenities",
"price"
],
"additionalProperties": false
}
},
"pagination": {
"anyOf": [
{
"type": "object",
"properties": {
"page": {
"type": "integer"
},
"total_pages": {
"type": "integer"
},
"total_count": {
"type": "integer",
"description": "Indexed match count. May exceed currently public or bookable results; not a fresh inventory count."
}
},
"required": [
"page",
"total_pages",
"total_count"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"applied_filters": {
"anyOf": [
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"location_id": {
"type": "string",
"pattern": "^[0-9]+$",
"maxLength": 20
},
"with_pets": {
"type": "boolean",
"default": false
},
"min_bedrooms": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"nightly_rate_min": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Minimum indexed average nightly rate in SEK. This is not an all-in stay total."
},
"nightly_rate_max": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Maximum indexed average nightly rate in SEK. The final stay total includes the applicable fees."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc"
],
"default": "relevance"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 1
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 5
}
},
"required": [
"location_id",
"num_guests"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"locale",
"calculated_at",
"requested_stay",
"destinations",
"stays",
"pagination",
"applied_filters"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}π’stay_details(num_guests, start_date, end_date, locale, listing_slug)
Read a public Guestit listing, house rules, cancellation policy and dated price estimate. Supply both dates and the guest count for an estimate. Fees shown are already included in the total. This does not reserve inventory or take payment. Open website_url to continue on Guestit; it opens with the dates and guests filled in.
Input Schema
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"listing_slug": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"listing_slug",
"num_guests"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"destinations",
"search",
"details",
"compare"
]
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"calculated_at": {
"type": "string"
},
"requested_stay": {
"anyOf": [
{
"type": "object",
"properties": {
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
},
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"start_date",
"end_date",
"num_guests"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"destinations": {
"type": "array",
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"location_id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"country_code": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"location_id",
"slug",
"name",
"country_code",
"type"
],
"additionalProperties": false
}
},
"stays": {
"type": "array",
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"not_found"
]
},
"listing_slug": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"summary": {
"type": [
"string",
"null"
]
},
"website_url": {
"type": [
"string",
"null"
]
},
"rating_score": {
"type": [
"number",
"null"
]
},
"num_reviews": {
"type": [
"integer",
"null"
]
},
"cancellation_policy": {
"type": [
"string",
"null"
]
},
"house_rules": {
"type": [
"string",
"null"
]
},
"occupancy": {
"anyOf": [
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer"
},
"num_bedrooms": {
"type": "integer"
},
"num_beds": {
"type": "integer"
},
"pets_allowed": {
"type": [
"boolean",
"null"
]
}
},
"required": [
"num_guests",
"num_bedrooms",
"num_beds",
"pets_allowed"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"images": {
"type": "array",
"maxItems": 4,
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"alt_text": {
"type": [
"string",
"null"
]
}
},
"required": [
"url",
"alt_text"
],
"additionalProperties": false
}
},
"amenities": {
"type": "array",
"items": {
"type": "string"
}
},
"price": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"estimated",
"unavailable",
"dates_required"
]
},
"currency": {
"type": "string",
"enum": [
"SEK"
]
},
"total_minor": {
"type": [
"integer",
"null"
]
},
"unit": {
"type": [
"string",
"null"
],
"enum": [
"night",
"month",
null
]
},
"unit_price_minor": {
"type": [
"integer",
"null"
]
},
"cleaning_fee_minor": {
"type": [
"integer",
"null"
]
},
"guest_fees": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"amount_minor": {
"type": "integer"
}
},
"required": [
"name",
"amount_minor"
],
"additionalProperties": false
}
},
"payment_schedule": {
"type": "array",
"items": {
"type": "object",
"properties": {
"payment_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"from": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"amount_minor": {
"type": "integer"
}
},
"required": [
"payment_date",
"from",
"to",
"amount_minor"
],
"additionalProperties": false
}
},
"inventory_held": {
"const": false
},
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
}
},
"required": [
"status",
"currency",
"total_minor",
"unit",
"unit_price_minor",
"cleaning_fee_minor",
"guest_fees",
"payment_schedule",
"inventory_held",
"start_date",
"end_date"
],
"additionalProperties": false
}
},
"required": [
"status",
"listing_slug",
"name",
"summary",
"website_url",
"rating_score",
"num_reviews",
"occupancy",
"images",
"amenities",
"price"
],
"additionalProperties": false
}
},
"pagination": {
"anyOf": [
{
"type": "object",
"properties": {
"page": {
"type": "integer"
},
"total_pages": {
"type": "integer"
},
"total_count": {
"type": "integer",
"description": "Indexed match count. May exceed currently public or bookable results; not a fresh inventory count."
}
},
"required": [
"page",
"total_pages",
"total_count"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"applied_filters": {
"anyOf": [
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"location_id": {
"type": "string",
"pattern": "^[0-9]+$",
"maxLength": 20
},
"with_pets": {
"type": "boolean",
"default": false
},
"min_bedrooms": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"nightly_rate_min": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Minimum indexed average nightly rate in SEK. This is not an all-in stay total."
},
"nightly_rate_max": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Maximum indexed average nightly rate in SEK. The final stay total includes the applicable fees."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc"
],
"default": "relevance"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 1
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 5
}
},
"required": [
"location_id",
"num_guests"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"locale",
"calculated_at",
"requested_stay",
"destinations",
"stays",
"pagination",
"applied_filters"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}π’compare_stays(num_guests, start_date, end_date, locale, listing_slugs)
Compare two to four distinct Guestit listings for the same dates and number of guests. Retains missing or unavailable listings. Prices include applicable fees and do not hold inventory or confirm a booking.
Input Schema
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"listing_slugs": {
"type": "array",
"minItems": 2,
"maxItems": 4,
"uniqueItems": true,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
}
},
"required": [
"listing_slugs",
"num_guests",
"start_date",
"end_date"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"view": {
"type": "string",
"enum": [
"destinations",
"search",
"details",
"compare"
]
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"calculated_at": {
"type": "string"
},
"requested_stay": {
"anyOf": [
{
"type": "object",
"properties": {
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
},
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"start_date",
"end_date",
"num_guests"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"destinations": {
"type": "array",
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"location_id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"country_code": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"location_id",
"slug",
"name",
"country_code",
"type"
],
"additionalProperties": false
}
},
"stays": {
"type": "array",
"maxItems": 10,
"items": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"found",
"not_found"
]
},
"listing_slug": {
"type": "string"
},
"name": {
"type": [
"string",
"null"
]
},
"summary": {
"type": [
"string",
"null"
]
},
"website_url": {
"type": [
"string",
"null"
]
},
"rating_score": {
"type": [
"number",
"null"
]
},
"num_reviews": {
"type": [
"integer",
"null"
]
},
"cancellation_policy": {
"type": [
"string",
"null"
]
},
"house_rules": {
"type": [
"string",
"null"
]
},
"occupancy": {
"anyOf": [
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer"
},
"num_bedrooms": {
"type": "integer"
},
"num_beds": {
"type": "integer"
},
"pets_allowed": {
"type": [
"boolean",
"null"
]
}
},
"required": [
"num_guests",
"num_bedrooms",
"num_beds",
"pets_allowed"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"images": {
"type": "array",
"maxItems": 4,
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"alt_text": {
"type": [
"string",
"null"
]
}
},
"required": [
"url",
"alt_text"
],
"additionalProperties": false
}
},
"amenities": {
"type": "array",
"items": {
"type": "string"
}
},
"price": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"estimated",
"unavailable",
"dates_required"
]
},
"currency": {
"type": "string",
"enum": [
"SEK"
]
},
"total_minor": {
"type": [
"integer",
"null"
]
},
"unit": {
"type": [
"string",
"null"
],
"enum": [
"night",
"month",
null
]
},
"unit_price_minor": {
"type": [
"integer",
"null"
]
},
"cleaning_fee_minor": {
"type": [
"integer",
"null"
]
},
"guest_fees": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"amount_minor": {
"type": "integer"
}
},
"required": [
"name",
"amount_minor"
],
"additionalProperties": false
}
},
"payment_schedule": {
"type": "array",
"items": {
"type": "object",
"properties": {
"payment_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"from": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"to": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"amount_minor": {
"type": "integer"
}
},
"required": [
"payment_date",
"from",
"to",
"amount_minor"
],
"additionalProperties": false
}
},
"inventory_held": {
"const": false
},
"start_date": {
"type": [
"string",
"null"
]
},
"end_date": {
"type": [
"string",
"null"
]
}
},
"required": [
"status",
"currency",
"total_minor",
"unit",
"unit_price_minor",
"cleaning_fee_minor",
"guest_fees",
"payment_schedule",
"inventory_held",
"start_date",
"end_date"
],
"additionalProperties": false
}
},
"required": [
"status",
"listing_slug",
"name",
"summary",
"website_url",
"rating_score",
"num_reviews",
"occupancy",
"images",
"amenities",
"price"
],
"additionalProperties": false
}
},
"pagination": {
"anyOf": [
{
"type": "object",
"properties": {
"page": {
"type": "integer"
},
"total_pages": {
"type": "integer"
},
"total_count": {
"type": "integer",
"description": "Indexed match count. May exceed currently public or bookable results; not a fresh inventory count."
}
},
"required": [
"page",
"total_pages",
"total_count"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"applied_filters": {
"anyOf": [
{
"type": "object",
"properties": {
"num_guests": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"start_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"end_date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "YYYY-MM-DD. Supply both dates. Check-in must be within 730 days and the stay cannot exceed 730 nights."
},
"locale": {
"type": "string",
"enum": [
"en",
"sv"
],
"default": "en"
},
"location_id": {
"type": "string",
"pattern": "^[0-9]+$",
"maxLength": 20
},
"with_pets": {
"type": "boolean",
"default": false
},
"min_bedrooms": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"nightly_rate_min": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Minimum indexed average nightly rate in SEK. This is not an all-in stay total."
},
"nightly_rate_max": {
"type": "number",
"minimum": 0,
"maximum": 1000000,
"description": "Maximum indexed average nightly rate in SEK. The final stay total includes the applicable fees."
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc"
],
"default": "relevance"
},
"page": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 1
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 5
}
},
"required": [
"location_id",
"num_guests"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"view",
"locale",
"calculated_at",
"requested_stay",
"destinations",
"stays",
"pagination",
"applied_filters"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Community
Evidence