# Expedia — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search for hotels and flights across Expedia while viewing detailed property information to compare prices and amenities for your travel plans. Get comprehensive travel options all from one integration without manually browsing the website.

**Category:** Travel | **Website:** [expedia.com/](https://expedia.com/) | **Docs:** [parse.bot/marketplace/299df7ff-6e5e-4b07-87d0-f231c40231c4/expedia-com-api](https://parse.bot/marketplace/299df7ff-6e5e-4b07-87d0-f231c40231c4/expedia-com-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-expedia-com-api-299df7ff/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_hotel_details

Retrieve detailed information for a specific hotel including name, street address, city, and amenities. Amenities may be empty if the page loads them dynamically. The property_id can be obtained from search_hotels results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `end_date` | string | No | Check-out date for pricing context in YYYY-MM-DD format |
| `property_id` | string | Yes | Expedia property ID (e.g. '8753178', '201113'). Obtain from search_hotels results. |
| `start_date` | string | No | Check-in date for pricing context in YYYY-MM-DD format |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-expedia-com-api-299df7ff/get_hotel_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"end_date":"<string>","property_id":"<string>","start_date":"<string>"}'
```

### search_flights

Generate a flight search URL for Expedia. Actual flight results are client-side rendered and cannot be extracted via server-side scraping. Returns the constructed search URL for use in a browser.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `date` | string | No | Departure date in YYYY-MM-DD format. Omitting defaults to 14 days from today. |
| `destination` | string | Yes | Destination airport code (e.g. 'DFW', 'LAS', 'MIA') |
| `origin` | string | Yes | Origin airport code (e.g. 'JFK', 'LAX', 'ORD') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-expedia-com-api-299df7ff/search_flights \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"date":"<string>","destination":"<string>","origin":"<string>"}'
```

### search_hotels

Search for hotels and vacation rentals by destination and dates. Returns properties with name, price, rating, and property ID from server-side rendered results. Typically returns 3-5 results from the initial page load. Pagination is not supported; results are limited to what the first page load returns.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `adults` | integer | No | Number of adults |
| `destination` | string | Yes | Destination city or area (e.g. 'Las Vegas', 'New York', 'Miami') |
| `end_date` | string | Yes | Check-out date in YYYY-MM-DD format |
| `rooms` | integer | No | Number of rooms |
| `start_date` | string | Yes | Check-in date in YYYY-MM-DD format |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-expedia-com-api-299df7ff/search_hotels \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"adults":"<integer>","destination":"<string>","end_date":"<string>","rooms":"<integer>","start_date":"<string>"}'
```
