Parrot test panel

Stream Deck secret (optional)

If the bridge has STREAM_DECK_SECRET set, paste the same value here (or set NEXT_PUBLIC_STREAM_DECK_TEST_KEY for local builds — never commit real secrets). Sent as x-stream-deck-key. Leave empty when the bridge has no secret.

Why there is no sound

  1. Audio plays on the overlay tab — keep it open and ONLINE.
  2. Click Enable audio once on the overlay.
  3. TTS needs message.audioUrl in the JSON when the bridge has TTS enabled.

Local bridge

Usually http://127.0.0.1:8787 while pnpm dev runs the Fastify app.

/health

Stream Deck (POST)

Simulate events (POST)

Copy cURL (all routes on this bridge)
# Local bridge — Stream Deck routes
curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/hello"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/please-share"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/thanks-likes"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/thanks-share"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/pirate-maxx"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/exit"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/return"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/peck"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/victory-dance"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/dancing-squawk"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/squawk-feeding-time"

# Local bridge — Simulate events
curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"username":"TestMate"}' \
  "http://127.0.0.1:8787/api/test/follow"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"username":"SubMate"}' \
  "http://127.0.0.1:8787/api/test/subscribe"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"giftName":"Cannonball","username":"Scallywag42"}' \
  "http://127.0.0.1:8787/api/test/gift"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"milestone":5000}' \
  "http://127.0.0.1:8787/api/test/like-milestone"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"username":"Matey"}' \
  "http://127.0.0.1:8787/api/test/share"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"username":"Crew","text":"Rust never sleeps!"}' \
  "http://127.0.0.1:8787/api/test/comment"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"note":"Full raid!"}' \
  "http://127.0.0.1:8787/api/test/chaos"

Railway bridge

Paste your deployed bridge origin (no path). Prefills from NEXT_PUBLIC_RAILWAY_BRIDGE_HTTP when set.

/health

Stream Deck (POST)

Simulate events (POST)

Copy cURL (all routes on this bridge)
# Railway bridge — Stream Deck routes
curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/hello"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/please-share"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/thanks-likes"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/thanks-share"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/pirate-maxx"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/exit"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/return"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/peck"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/victory-dance"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/dancing-squawk"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{}' \
  "http://127.0.0.1:8787/api/streamdeck/squawk-feeding-time"

# Railway bridge — Simulate events
curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"username":"TestMate"}' \
  "http://127.0.0.1:8787/api/test/follow"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"username":"SubMate"}' \
  "http://127.0.0.1:8787/api/test/subscribe"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"giftName":"Cannonball","username":"Scallywag42"}' \
  "http://127.0.0.1:8787/api/test/gift"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"milestone":5000}' \
  "http://127.0.0.1:8787/api/test/like-milestone"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"username":"Matey"}' \
  "http://127.0.0.1:8787/api/test/share"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"username":"Crew","text":"Rust never sleeps!"}' \
  "http://127.0.0.1:8787/api/test/comment"

curl -sS -X POST \
  -H "Content-Type: application/json" \
  -d '{"note":"Full raid!"}' \
  "http://127.0.0.1:8787/api/test/chaos"