Zumper Rentals - Apartments and Houses for Rent
Zumper Rentals - Apartments and Houses for Rent · GPT Actions
Zumper Rental Search
A service that allows the user to search for rental homes (apartments, houses, and condos for rent) in the US and Canada using the Zumper ChatGPT plugin.
POST /api/x/1/openai/listables/searchGet a list of current homes for rent that match a user's requirements. Returns details for each home.
原始 API 定义
{
"openapi": "3.1.0",
"info": {
"title": "Zumper Rental Search",
"description": "A service that allows the user to search for rental homes (apartments, houses, and condos for rent) in the US and Canada using the Zumper ChatGPT plugin.",
"version": "v1"
},
"servers": [
{
"url": "https://aizumper.com"
}
],
"paths": {
"/api/x/1/openai/listables/search": {
"post": {
"operationId": "getListables",
"summary": "Get a list of current homes for rent that match a user's requirements. Returns details for each home.",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/getListablesRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/getListablesResponse"
}
}
}
}
}
}
}
},
"components": {
"securitySchemes": {
"basicAuth": {
"type": "http",
"scheme": "basic"
}
},
"schemas": {
"getListablesRequest": {
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The hyphenated lower case city-statecode(/neighborhood) in which to return rental homes (e.g. san-francisco-ca, new-york-ny, or portland-or); when there are multiple possible statecodes, use the most likely. If they specify a neighborhood, add this after a '/' (lower case hyphenated), e.g. 'new-york-ny/soho' or 'san-francisco-ca/pacific-heights'."
},
"cats": {
"type": "boolean",
"description": "True if the user wants a cat-friendly place, otherwise false."
},
"dogs": {
"type": "boolean",
"description": "True if the user wants a dog-friendly place, otherwise false."
},
"minPrice": {
"type": "integer",
"description": "The minimum monthly rent that the user wants to pay."
},
"maxPrice": {
"type": "integer",
"description": "The maximum monthly rent that the user wants to pay."
},
"bedrooms": {
"type": "array",
"items": {
"type": "integer",
"enum": [
0,
1,
2,
3,
4,
5
]
},
"description": "An integer array of the number of bedrooms that the user requests (starting at 0 for studios, up to a maximum of 5), e.g. for a studio [0], for a studio or a 1 bedroom [0, 1], for 2 or 3 bedrooms [2, 3] or \"at least 2 bedrooms\" [2, 3, 4, 5]."
},
"bathroomsRange": {
"type": "array",
"items": {
"type": "integer",
"enum": [
0,
1,
2,
3,
4,
5
]
},
"description": "An integer array of the number of bathrooms that the user requests, showing only the min and max (starting at 1, up to a maximum of 5). e.g. for 1 bathroom [1], for 1, 2 or 3 bathrooms [1, 3], for at least 3 bathrooms [3, 5]."
},
"floorplans": {
"type": "integer",
"description": "1 if you're sure the user only wants to live in an apartment building; 0 if you're sure the user doesn't want to live in an apartment building."
},
"propertyTypes": {
"type": "array",
"items": {
"type": "integer",
"enum": [
1,
2,
3,
4,
5,
6,
9,
13,
14,
15,
16,
17,
21
]
},
"description": "An integer array indicating what type of home the user requests. Use only the following sets of values; [4, 15, 5, 14, 9] if specify they only want an apartment; [1, 3, 6] if they want a condo; [13, 2, 21] if they want a house; [16, 17] if they want a room in a shared home."
},
"features": {
"type": "array",
"items": {
"type": "integer",
"enum": [
2,
3,
4,
5,
6,
8,
31,
32,
66
]
},
"description": "An integer array for home features that the user requests. Use any combination of the following values (but no others); 2 for \"assisted living\" homes; 3 for current rent discounts; 4 for places available only to people with low incomes; 5 for \"section 8\" homes; 6 for senior living homes; 8 for student housing; 31 for utilities included; 32 for no security deposit; 66 for new construction."
},
"buildingAmenities": {
"type": "array",
"items": {
"type": "integer",
"enum": [
2,
3,
4,
5,
7,
8,
9,
10,
11,
12,
13,
14,
16,
17
]
},
"description": "An integer array for shared apartment building amenities that the user requests. Use any combination of the following values (but no others); 2 for concierge service; 3 for gym; 4 for on site laundry; 5 for package service; 7 for dry cleaning service; 8 for garage parking; 9 for swimming pool; 10 for storage; 11 for business center; 12 for door person; 13 for roof deck; 14 for outdoor space; 16 for wheelchair accessible; 17 for elevator."
},
"listingAmenities": {
"type": "array",
"items": {
"type": "integer",
"enum": [
2,
3,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
21,
22,
24,
25,
28,
29,
32
]
},
"description": "An integer array for home amenities that the user requests. Use any combination of the following values (but no others); 2 for air conditioning; 3 for ceiling fan; 4 for high ceilings; 5 for assigned parking; 6 for fireplace; 7 for dishwasher; 8 for balcony; 9 for garden; 10 for deck; 11 for hardwood floor; 12 for carpet; 13 for furnished; 14 for central heat; 15 for walk in closets; 16 for in unit laundry; 21 for electric vehicle charging; 22 for wifi; 24 for tv; 25 for cable tv; 28 for microwave; 29 for oven; 32 for outdoor space."
},
"minPricePerBedroomPercentile": {
"type": "string",
"description": "Only pass the specific value p75 when a user searches for luxury homes."
},
"maxPricePerBedroomPercentile": {
"type": "string",
"description": "Only pass the specific value p50 when a user searches for cheap homes."
}
}
},
"getListablesResponse": {
"type": "object",
"properties": {
"search_results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/listableResponse"
},
"description": "The homes found that match the user's requirements."
},
"search_link": {
"type": "string",
"description": "A url for more rental homes that match the user's requirements."
},
"instructions": {
"type": "string"
}
}
},
"listableResponse": {
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "The street address for the home, including e.g. house number, street name, and unit number if applicable."
},
"agent_name": {
"type": "string",
"description": "The name of the agent who is posting the home."
},
"amenity_tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of important amenities for the home (e.g. air_conditioning, dishwasher, garden)."
},
"building_amenity_tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of important building amenities for the home (e.g. gym, swimming_pool, roof_deck)."
},
"building_name": {
"type": "string",
"description": "The name of the building, if the home is an apartment."
},
"city": {
"type": "string",
"description": "The city that the home is in."
},
"city_state": {
"type": "string",
"description": "The lowercase hyphenated <city>-<statecode> that the home is in."
},
"date_available": {
"type": "string",
"description": "The date for when the home is available. If it is empty or in the past, then it is unknown."
},
"bedrooms_range": {
"type": "object",
"properties": {
"max": {
"type": "integer",
"description": "The maximum number of bedrooms for the home."
},
"min": {
"type": "integer",
"description": "The minimum number of bedrooms for the home."
}
}
},
"bedrooms": {
"type": "integer",
"description": "The number of bedrooms for the home."
},
"bathrooms_range": {
"type": "object",
"properties": {
"max": {
"type": "integer",
"description": "The maximum number of bathrooms for the home."
},
"min": {
"type": "integer",
"description": "The minimum number of bathrooms for the home."
}
}
},
"bathrooms": {
"type": "integer",
"description": "The number of bathrooms for the home."
},
"price_range": {
"type": "object",
"properties": {
"max": {
"type": "integer",
"description": "The maximum monthly rental price for the home."
},
"min": {
"type": "integer",
"description": "The minimum monthly rental price for the home."
}
}
},
"price": {
"type": "integer",
"description": "The month rental price for the home."
},
"neighborhood_name": {
"type": "string",
"description": "The name of the neighborhood the home is in."
},
"neighborhood_url": {
"type": "string",
"description": "A url for the neighborhood of the home, with information about the neighborhood and more rentals in that neighborhood."
},
"cat-friendly": {
"type": "boolean",
"description": "Whether cats are allowed for the home."
},
"dog-friendly": {
"type": "boolean",
"description": "Whether dogs are allowed for the home."
},
"large-dog-friendly": {
"type": "boolean",
"description": "Whether large dogs are allowed for the home."
},
"link": {
"type": "string",
"description": "A url for more information about the home on Zumper. Always use this exact url in the response, do not change it."
},
"phone": {
"type": "string",
"description": "The phone number to contact the landlord of the home."
},
"description": {
"type": "string",
"description": "The description of the home. Usually contains a summary of the details and the location."
},
"title": {
"type": "string",
"description": "A title to use for the home (suitable for text in links)."
},
"zipcode": {
"type": "string",
"description": "The zipcode for the home."
}
}
}
}
},
"security": [
{
"basicAuth": []
}
]
}