Developer
API, webhooks, logs
Adv
demo dataAdvanced
Advanced mode is off
This page is written for people wiring Bridge into their own tooling. Turn on advanced mode above — or
press A — to reveal the raw request inspector, HMAC signing, the dead-letter queue
and the replay console.
Your webhook
https://api.tradelinqr.com/webhook/3f9ae4b17c210
Accepts text/plain, 2 KB maximum, rate
limited to 60 a minute on your plan.
API keys
| Label | Scopes | Last used | |
|---|---|---|---|
| reporting script | signals:read trades:read | 1 h ago | |
| grafana exporter | metrics:read | 4 min ago |
Send it yourself
copy as cURL
# plain alert, exactly what TradingView posts
curl -X POST https://api.tradelinqr.com/webhook/3f9ae4b17c210 \
-H "Content-Type: text/plain" \
-d "3f9a…c210,buy,XAUUSD,vol_pct_bal_loss=0.5,sl_pips=45,tp_pips=135"
# signed mode: timestamp inside a 60s window, nonce cached server-side
TS=$(date +%s)
BODY="3f9a…c210,buy,XAUUSD,vol_lots=0.10,sl_pips=30"
SIG=$(printf "%s%s" "$BODY" "$TS" | openssl dgst -sha256 -hmac "$SECRET" -r | cut -d' ' -f1)
curl -X POST https://api.tradelinqr.com/webhook/3f9ae4b17c210 \
-H "X-Bridge-Timestamp: $TS" \
-H "X-Bridge-Signature: sha256=$SIG" \
--data-raw "$BODY"
Why sign at allThe shared secret travels in the alert body, so anyone who
can read your alert can replay it. A signature with a timestamp and a nonce cannot be replayed.
TradingView cannot sign, so use this from your own relay or bot.
Raw request inspector
advanced
POST /webhook/3f9ae4b17c210 200 18 ms
content-type text/plain; charset=utf-8
content-length 74
source-ip 52.89.214.238 (TradingView)
user-agent Go-http-client/1.1
3f9a…c210,buy,XAUUSD,vol_pct_bal_loss=0.5,
sl_pips=45,tp_pips=135
→ parsed ok
→ queued 8c1d-44e7-9a02 ttl 60s
→ fanout 2 accounts (51102 skipped: offline)
Response the connector received
advanced
GET /api/v1/pull 200 6 ms
x-bridge-signature sha256=9f21c4…e70b
x-bridge-poll-ms 250
[{"id":"8c1d-44e7-9a02",
"cmd":"buy","sym":"XAUUSD",
"vol":{"mode":"pct_bal_loss","v":0.5},
"sl":{"mode":"pips","v":45},
"tp":{"mode":"pips","v":135},
"exp":1786000060}]
signature verified in terminal ✓
Dead-letter queue
advanced
| When | Body | Why it failed | |
|---|---|---|---|
| 13:58:41 | 3f9a…,buy,XAUUSD,vol_lots=0.10,vol_dollar=250 | Two volume parameters in one alert | |
| 11:20:33 | 3f9a…,buy,GOLD,vol_lots=0.10 | Symbol not found on any bound account | |
| 09:14:02 | {"action":"buy","ticker":"XAUUSD"} | JSON body — this endpoint takes the plain alert grammar |
Replay consoleadvanced
Re-send a stored signal to a chosen account. It goes through the full pipeline, including expiry and every filter, so a replay can legitimately be rejected.
Poll tuningadvanced
The server tells each connector how often to poll. Lower is faster and noisier; the server still backs off idle terminals on its own.
Queue depth
0
Requests, last hour
14,412
24% of your rate limit
Webhook delivery logadvanced
| Time | Source IP | Bytes | Parse | Queue | Result |
|---|---|---|---|---|---|
| 14:41:15 | 52.89.214.238 | 61 | 4 ms | 9 ms | 200 |
| 14:38:44 | 52.89.214.238 | 74 | 5 ms | 11 ms | 200 |
| 13:58:41 | 52.89.214.238 | 88 | 3 ms | — | 422 |
| 12:02:09 | 203.0.113.44 | 74 | — | — | 401 |
One 401 from an unfamiliar address
203.0.113.44 is not in TradingView's published ranges. That is either your own testing or someone
who has your webhook URL. Rotating the secret invalidates it either way.