# List city properties

Returns one page of a TripAdvisor location list. Requires `geo_id` and `location_slug` from the same TripAdvisor URL. `data` is null when no list page was served.

- Platform: TripAdvisor
- Request: `GET https://api.toolzerhub.com/v1/tripadvisor/list`
- Auth: `x-api-key` header
- Cost: 1 credit per successful request. Failed requests are not billed.
- Page: https://docs.toolzerhub.com/reference/tripadvisor/listings/get-trip-advisor-list

| Parameter | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| `geo_id` | query | yes | integer | TripAdvisor's id for the city or region — the g number in its URL, e.g. geo_id=60713 for /Hotels-g60713-San_Francisco_California-Hotels.html. Each row also carries its own geo_id, which can differ from the one you asked for. |
| `location_slug` | query | yes | string | The underscored place name from the same URL, e.g. San_Francisco_California. Required alongside geo_id because there is no lookup that turns a geo id into a slug. Trimmed of leading/trailing slashes only; otherwise used as given. |
| `kind` | query | no | enum: hotels, restaurants, attractions | Which of the city's three list pages to read. hotels and restaurants rows are fully populated; attractions rows carry only name and coordinates. See coverage on the response. Default: hotels. |
| `offset` | query | no | integer | TripAdvisor's own oa cursor. Moves in steps of 30: page two is offset=30. Must be a multiple of 30 — a non-multiple is rejected rather than rounded. Default: 0. |

## Example request

```bash
curl "https://api.toolzerhub.com/v1/tripadvisor/list?geo_id=<geo_id>&location_slug=<location_slug>" \
  -H "x-api-key: $TOOLZERHUB_API_KEY"
```

Success responses are wrapped as `{ "data": ... }`. Errors return `{ "error": { "code", "status", "message", "retryable", "details" } }`. See https://docs.toolzerhub.com/docs/responses-and-errors.
