# Wolt — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.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.

> Browse and discover restaurants, stores, and food items available on the Wolt delivery platform, with access to detailed menus, venue information, and the ability to search across categories and cities. Filter venues by location, explore their complete offerings, and find specific items to compare options across the Wolt network.

**Category:** Food & Dining | **Website:** [wolt.com/](https://wolt.com/) | **Docs:** [parse.bot/marketplace/a7730aee-2b8c-4600-872f-3b9854bc3607/wolt-com-api](https://parse.bot/marketplace/a7730aee-2b8c-4600-872f-3b9854bc3607/wolt-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get discovery page

Get discovery/home page content for a location. Returns promotional banners, venue sections, and navigation categories available at the given coordinates.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | string | Yes | Latitude of the location (e.g. 60.17 for Helsinki). |
| `lon` | string | Yes | Longitude of the location (e.g. 24.94 for Helsinki). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/get-discovery-page \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<string>","lon":"<string>"}'
```

### Get top venues

Get top 5 venues for a location, extracted from the restaurant listing sorted by default relevance.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | string | Yes | Latitude of the location (e.g. 60.17 for Helsinki). |
| `lon` | string | Yes | Longitude of the location (e.g. 24.94 for Helsinki). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/get-top-venues \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<string>","lon":"<string>"}'
```

### Get venue details

Get detailed info for a specific venue including address, opening hours, delivery configuration, ratings, and real-time availability status.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `venue_slug` | string | Yes | Venue slug identifier (e.g. mcdonalds-forum-katutaso). Obtainable from list_restaurants or search_venues results. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/get-venue-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"venue_slug":"<string>"}'
```

### Get venue item details

Get details for a specific menu item including customization options and variant groups. Requires both the venue slug and item ID from get_venue_menu.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `item_id` | string | Yes | Item ID from the venue menu. Obtainable from get_venue_menu results. |
| `venue_slug` | string | Yes | Venue slug identifier (e.g. mcdonalds-forum-katutaso). Obtainable from list_restaurants or search_venues results. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/get-venue-item-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"item_id":"<string>","venue_slug":"<string>"}'
```

### Get venue menu

Get full menu for a venue including all categories, items with prices, and customization options.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `venue_slug` | string | Yes | Venue slug identifier (e.g. mcdonalds-forum-katutaso). Obtainable from list_restaurants or search_venues results. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/get-venue-menu \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"venue_slug":"<string>"}'
```

### List categories

List available food categories for a location. Categories are city-specific and can be used with list_venues_by_category.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | string | Yes | Latitude of the location (e.g. 60.17 for Helsinki). |
| `lon` | string | Yes | Longitude of the location (e.g. 24.94 for Helsinki). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/list-categories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<string>","lon":"<string>"}'
```

### List cities

List all supported cities and their coordinates. Useful for discovering valid lat/lon values to use with other endpoints.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/list-cities \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### List restaurants

List all restaurants for a location. Returns venue listings with filtering and sorting options. Includes categories section and full venue-vertical-list.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | string | Yes | Latitude of the location (e.g. 60.17 for Helsinki). |
| `lon` | string | Yes | Longitude of the location (e.g. 24.94 for Helsinki). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/list-restaurants \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<string>","lon":"<string>"}'
```

### List stores

List grocery stores for a location. Returns grocery venue listings filtered from search results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | string | Yes | Latitude of the location (e.g. 60.17 for Helsinki). |
| `lon` | string | Yes | Longitude of the location (e.g. 24.94 for Helsinki). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/list-stores \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<string>","lon":"<string>"}'
```

### List venues by category

List venues filtered by category slug. Uses search to find venues matching the category name. Category slugs are city-specific — use list_categories with the same lat/lon to discover valid slugs for a given location.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_slug` | string | Yes | Category slug to filter by (e.g. pizza, sushi, salad). Must be a valid slug for the given location — obtain from list_categories endpoint with the same coordinates. |
| `lat` | string | Yes | Latitude of the location (e.g. 60.17 for Helsinki). |
| `lon` | string | Yes | Longitude of the location (e.g. 24.94 for Helsinki). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/list-venues-by-category \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category_slug":"<string>","lat":"<string>","lon":"<string>"}'
```

### Search items

Search for food/menu items across all restaurants in a city. Returns matching menu items with venue info. If lat/lon are omitted, defaults to Helsinki.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | string | No | Latitude of the location. Defaults to Helsinki (60.17) if omitted. |
| `lon` | string | No | Longitude of the location. Defaults to Helsinki (24.94) if omitted. |
| `query` | string | Yes | Search query (e.g. pizza, burger, pasta). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/search-items \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<string>","lon":"<string>","query":"<string>"}'
```

### Search venues

Search for restaurants or stores by query. Returns matching venues for the given location. If lat/lon are omitted, defaults to Helsinki.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | string | No | Latitude of the location. Defaults to Helsinki (60.17) if omitted. |
| `lon` | string | No | Longitude of the location. Defaults to Helsinki (24.94) if omitted. |
| `query` | string | Yes | Search query (e.g. sushi, pizza, McDonald's). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/wolt/search-venues \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<string>","lon":"<string>","query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.