# World Cup Ticket Scraper 2026 – Live Resale Prices (`openclawai/worldcup-tickets-scraper`) Actor

Scrape live 2026 FIFA World Cup resale ticket inventory — prices, sections, rows, deal scores and venues — with rich filters for team, host country, date and price.

- **URL**: https://apify.com/openclawai/worldcup-tickets-scraper.md
- **Developed by:** [Pika Choo](https://apify.com/openclawai) (community)
- **Categories:** E-commerce, AI, Travel
- **Stats:** 11 total users, 3 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 ticket listings

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## ⚽ World Cup Ticket Scraper

**Live resale ticket data for the 2026 FIFA World Cup — every match, every section, real-time prices — in one clean, structured feed.**

Track the entire tournament's secondary market without visiting a single ticket site. This actor scans the resale market for you and returns one consistent, deduplicated dataset: which matches have tickets, the cheapest seat per match, full section/row/price breakdowns, and the best-value listings. Filter by team, host country, date, price, section and more.

Perfect for **price tracking, deal alerts, market analysis, resale arbitrage, travel planning, and dashboards.**

### How it works

Give it your filters and a mode, and it does the rest — discovering every World Cup match, pulling the live inventory, normalizing it into one schema, and removing duplicates. No tokens, no API keys, no setup. Residential proxies (on by default) keep coverage wide and runs reliable.

### Two modes

| Mode | Returns |
|---|---|
| 🎟️ **Listings** (deep scan) | One row per individual ticket listing — section, row, quantity, all-in price, price before fees, value score, delivery type, and the match. |
| 📅 **Matches** | One summary row per match — venue, city, host country, date, and the lowest available price. |

### Filters

| Filter | What it does |
|---|---|
| **Teams / Match** | Only matches involving the teams you list (e.g. `Brazil`, `USA`) |
| **Host country / city** | Only matches in chosen host countries or cities |
| **Date from / to** | Restrict to a date window (`YYYY-MM-DD`) |
| **Min / Max price** | Price band on the all-in ticket price |
| **Section** | Match a section or seating level (e.g. `Lower`, `VIP`, `114`) |
| **Min ticket quantity** | Only listings that can seat your group together |
| **Delivery type** | e.g. mobile delivery only |
| **Best-deal filter** | Surface only the strongest-value listings |

### Output fields

| Field | Description |
|---|---|
| `item_type` | `listing` or `event` |
| `match` | Match name (teams + stage) |
| `event_date` | Local kickoff date/time |
| `venue` / `venue_city` / `venue_country` | Where it's played |
| `section` / `section_group` / `row` | Seat location |
| `quantity` | Tickets available together in this listing |
| `price` | All-in price (fees included) |
| `price_before_fees` | Base price before fees, when available |
| `currency` | Price currency |
| `deal_score` | Relative value score (lower = better deal) |
| `deal_tags` | Deal labels (e.g. `cheapest`, `flash`) |
| `delivery_type` / `ticket_type` | How the ticket is delivered |
| `scraped_at` | When the row was captured (ISO 8601) |

#### Example output row

```json
{
  "item_type": "listing",
  "match": "Mexico vs South Africa — World Cup, Group A (Match 1)",
  "event_date": "2026-06-11T13:00:00",
  "venue": "Estadio Azteca",
  "venue_city": "Mexico City",
  "venue_country": "MX",
  "section": "114",
  "section_group": "Lower",
  "row": "12",
  "quantity": 2,
  "price": 2235.0,
  "price_before_fees": 1942.0,
  "currency": "USD",
  "deal_score": 0.88,
  "deal_tags": ["cheapest"],
  "delivery_type": "mobile",
  "scraped_at": "2026-06-04T12:00:00+00:00"
}
````

### Example input

```json
{
  "mode": "listings",
  "teams": ["Mexico", "USA"],
  "countries": ["Mexico", "USA", "Canada"],
  "dateFrom": "2026-06-11",
  "dateTo": "2026-07-19",
  "minPrice": 200,
  "maxPrice": 5000,
  "maxMatches": 25,
  "maxListingsPerMatch": 100
}
```

### Tips

- **Keep residential proxies on** (the default) — they unlock the widest inventory coverage and keep runs reliable.
- Start with a low **Max matches** and **Max listings per match** for fast, cheap test runs, then scale up.
- Prices move constantly during the tournament — schedule the actor to re-run and track changes over time.
- Leave all filters empty to pull the entire tournament.

# Actor input Schema

## `mode` (type: `string`):

Choose what to return. 'Listings' is the deep scan — one row per individual ticket listing (section, row, price, deal score). 'Matches' returns one summary row per match with its lowest available price.

## `teams` (type: `array`):

Only return matches involving these teams (e.g. "Brazil", "USA", "Mexico"). Leave empty for all matches. One per line.

## `countries` (type: `array`):

Only return matches in these host countries or cities (e.g. "USA", "Mexico", "Canada", "Los Angeles"). Leave empty for all locations. One per line.

## `dateFrom` (type: `string`):

Only include matches on or after this date (YYYY-MM-DD).

## `dateTo` (type: `string`):

Only include matches on or before this date (YYYY-MM-DD).

## `minPrice` (type: `integer`):

Only return tickets priced at or above this amount (all-in price).

## `maxPrice` (type: `integer`):

Only return tickets priced at or below this amount (all-in price).

## `section` (type: `string`):

Only return listings whose section or seating level matches this text (e.g. "Lower", "VIP", "114"). Partial match.

## `minQuantity` (type: `integer`):

Only return listings that can seat at least this many people together.

## `deliveryType` (type: `array`):

Only return listings with these delivery methods (e.g. "mobile"). Leave empty for all.

## `maxDealScore` (type: `integer`):

Advanced: only return listings at or below this value-score (lower = better relative value). Leave empty for all.

## `maxMatches` (type: `integer`):

How many matches to scan inventory for. Lower this for faster, cheaper runs.

## `maxListingsPerMatch` (type: `integer`):

Cap on the number of individual listings returned per match (Listings mode).

## `proxyConfiguration` (type: `object`):

Residential proxies are strongly recommended — they unlock the widest inventory coverage and avoid rate limits. Defaults to Apify residential proxies.

## Actor input object example

```json
{
  "mode": "events",
  "teams": [
    "Brazil",
    "Argentina"
  ],
  "countries": [
    "USA",
    "Canada"
  ],
  "dateFrom": "2026-06-11",
  "dateTo": "2026-07-19",
  "maxMatches": 10,
  "maxListingsPerMatch": 50,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "mode": "events",
    "maxMatches": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("openclawai/worldcup-tickets-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "mode": "events",
    "maxMatches": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("openclawai/worldcup-tickets-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "mode": "events",
  "maxMatches": 10
}' |
apify call openclawai/worldcup-tickets-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=openclawai/worldcup-tickets-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "World Cup Ticket Scraper 2026 – Live Resale Prices",
        "description": "Scrape live 2026 FIFA World Cup resale ticket inventory — prices, sections, rows, deal scores and venues — with rich filters for team, host country, date and price.",
        "version": "0.1",
        "x-build-id": "29lu7g9iBUNI4BwBv"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/openclawai~worldcup-tickets-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-openclawai-worldcup-tickets-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/openclawai~worldcup-tickets-scraper/runs": {
            "post": {
                "operationId": "runs-sync-openclawai-worldcup-tickets-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/openclawai~worldcup-tickets-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-openclawai-worldcup-tickets-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "mode"
                ],
                "properties": {
                    "mode": {
                        "title": "🎯 Mode",
                        "enum": [
                            "listings",
                            "events"
                        ],
                        "type": "string",
                        "description": "Choose what to return. 'Listings' is the deep scan — one row per individual ticket listing (section, row, price, deal score). 'Matches' returns one summary row per match with its lowest available price.",
                        "default": "events"
                    },
                    "teams": {
                        "title": "🏳️ Teams / Match",
                        "type": "array",
                        "description": "Only return matches involving these teams (e.g. \"Brazil\", \"USA\", \"Mexico\"). Leave empty for all matches. One per line.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "countries": {
                        "title": "🌎 Host Country / City",
                        "type": "array",
                        "description": "Only return matches in these host countries or cities (e.g. \"USA\", \"Mexico\", \"Canada\", \"Los Angeles\"). Leave empty for all locations. One per line.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "dateFrom": {
                        "title": "📆 Date from",
                        "type": "string",
                        "description": "Only include matches on or after this date (YYYY-MM-DD)."
                    },
                    "dateTo": {
                        "title": "📆 Date to",
                        "type": "string",
                        "description": "Only include matches on or before this date (YYYY-MM-DD)."
                    },
                    "minPrice": {
                        "title": "💵 Min price",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only return tickets priced at or above this amount (all-in price)."
                    },
                    "maxPrice": {
                        "title": "💵 Max price",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only return tickets priced at or below this amount (all-in price)."
                    },
                    "section": {
                        "title": "🪑 Section",
                        "type": "string",
                        "description": "Only return listings whose section or seating level matches this text (e.g. \"Lower\", \"VIP\", \"114\"). Partial match."
                    },
                    "minQuantity": {
                        "title": "👥 Min ticket quantity",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Only return listings that can seat at least this many people together."
                    },
                    "deliveryType": {
                        "title": "📲 Delivery type",
                        "type": "array",
                        "description": "Only return listings with these delivery methods (e.g. \"mobile\"). Leave empty for all.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxDealScore": {
                        "title": "🔥 Best-deal filter",
                        "type": "integer",
                        "description": "Advanced: only return listings at or below this value-score (lower = better relative value). Leave empty for all."
                    },
                    "maxMatches": {
                        "title": "📊 Max matches to scan",
                        "minimum": 1,
                        "maximum": 200,
                        "type": "integer",
                        "description": "How many matches to scan inventory for. Lower this for faster, cheaper runs.",
                        "default": 10
                    },
                    "maxListingsPerMatch": {
                        "title": "📊 Max listings per match",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Cap on the number of individual listings returned per match (Listings mode).",
                        "default": 50
                    },
                    "proxyConfiguration": {
                        "title": "🛡️ Proxy Configuration",
                        "type": "object",
                        "description": "Residential proxies are strongly recommended — they unlock the widest inventory coverage and avoid rate limits. Defaults to Apify residential proxies.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
