Vrbo API endpoint
Reads public traveler-facing property details, grouped amenities, photos, content sections, FAQs, and aggregate rating.
/vrbo/properties/{property_id}Returns public traveler-facing information from a Vrbo property page: the listing name and URL, any description present on the page, public city/region labels, popular amenities, and publicly displayed photos. It also preserves the amenities' public group headings and the visible property sections for house rules, important information, and property description and special features. It also includes public traveler FAQs when the page provides them; date-specific pricing FAQs are omitted because their answers become stale quickly. amenities is the flattened convenience list, while amenity_groups preserves public category headings. content_sections contains only public traveler-facing sections. If present, the response also includes the public aggregate guest rating and review count; it does not return individual review pages. Location is limited to the labels shown on the page. The endpoint does not return rates, availability, host contact details, or booking information.
property_id is the numeric Vrbo listing identifier. Some property URLs add
the suffix ha; that suffix is accepted as part of the identifier.
Example request:
GET /api/v1/vrbo/properties/961219
A blocked response or changed page structure returns an upstream error.
| Field | In the sample | Value in the sample |
|---|---|---|
| id | Has a value | |
| name | Has a value | “All Inclusive Adults Only” |
| url | Has a value | vrbo.com |
| description | Has a value | 428 characters |
| location | Has a value | “Cancún, QROO” |
| amenities | Has a value | 37 entries |
| amenity_groups | Has a value | 10 entries |
| content_sections | Has a value | 3 entries |
| faqs | Has a value | 5 entries |
| photos | Has a value | 5 entries |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| property_id (path) | string | Yes | Vrbo property ID (optionally ending in ha) | 961219 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/vrbo/properties/961219" \ -H "x-api-key: $CRAWLORA_API_KEY"
Request schema
No body schema
Response schema
#/definitions/vrbo.vrboPropertyResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | vrbo.Property | No | ||||
| data.amenities | array | No | ||||
| data.amenity_groups | array | No | ||||
| data.amenity_groups[].items | array | No | ||||
| data.amenity_groups[].name | string | No | ||||
| data.content_sections | array | No | ||||
| data.content_sections[].items | array | No | ||||
| data.content_sections[].name | string | No | ||||
| data.description | string | No | ||||
| data.faqs | array | No | ||||
| data.faqs[].answer | string | No | ||||
| data.faqs[].question | string | No | ||||
| data.id | string | No | ||||
| data.location | string | No | ||||
| data.name | string | No | ||||
| data.photos | array | No | ||||
| data.photos[].description | string | No | ||||
| data.photos[].url | string | No | ||||
| data.rating | number | No | ||||
| data.rating_label | string | No | ||||
| data.review_count | integer | No | ||||
| data.url | string | No |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/vrbo/properties/961219" \
-H "x-api-key: $CRAWLORA_API_KEY"