Skip to content

Quickstart

From zero to your first grounded World Cup answer in five minutes.

1. Get an API key

  1. Go to machina.gg/world-cup-api and pick a tier — Free includes 100 credits, no card required.
  2. Sign in (or sign up) — you land on your organization's APIs tab in Machina Studio.
  3. Copy the key from Your API key.

Keys are organization-scoped and carry product-only permissions: they can call this API and nothing else on the Machina platform.

2. Verify the key — for free

/health costs 0 credits. Use it to validate your setup before spending anything:

bash
curl -X POST https://api.machina.gg/world-cup/v1/health \
  -H "X-Api-Token: $WORLD_CUP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
json
{
  "data": {
    "product": "world_cup_market_intelligence",
    "store_reachable": true,
    "version": "0.1.0"
  },
  "meta": { "code": 200 },
  "status": "success"
}

3. Discover fixtures

/get-schedule (1 credit) returns fixtures with their event_urn — the canonical id every per-fixture endpoint accepts:

bash
curl -X POST https://api.machina.gg/world-cup/v1/get-schedule \
  -H "X-Api-Token: $WORLD_CUP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"team": "Brazil", "limit": 3}'
json
{
  "data": {
    "schedule": {
      "events": [
        {
          "name": "Brazil vs Morocco - FIFA World Cup 2026",
          "event_urn": "urn:machina:sport:soccer:event:brazil-vs-morocco:20260613:wor",
          "start_date": "2026-06-13T22:00:00+00:00",
          "venue": "MetLife Stadium",
          "status": "ns"
        }
      ]
    }
  }
}

You usually don't need the URN

Skills and signal endpoints also accept a natural event description — {"event": "Brazil vs Morocco"} — plus optional team, opponent and date (YYYY-MM-DD) to disambiguate. The URN is the precise path; natural language is the convenient one.

4. Get something you can publish

A betting signal for that fixture (18 credits):

bash
curl -X POST https://api.machina.gg/world-cup/v1/get-signal \
  -H "X-Api-Token: $WORLD_CUP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"event": "Brazil vs Morocco", "bankroll": "1000"}'

Or a finished, source-cited match preview card (40 credits):

bash
curl -X POST https://api.machina.gg/world-cup/v1/skills/match-preview \
  -H "X-Api-Token: $WORLD_CUP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"event": "Brazil vs Morocco"}'

5. Or skip REST entirely — use MCP

If your consumer is an AI agent (Claude Code, Cursor, anything MCP-compatible):

bash
claude mcp add --transport sse world-cup-intelligence \
  https://worldcup-mcp.org.machina.gg/sse \
  --header "X-Api-Token: $WORLD_CUP_API_KEY"

Then just ask: "get the betting signal for Brazil vs Morocco". See Connect an agent.

Next steps