Custom Webhook API

Send trading signals from any source using Algrow's webhook endpoint.

Endpoint

POST https://api.algrow.biz/api/signals/webhook?token=YOUR_TOKEN

Your unique webhook token can be found in the Signals page of your Algrow dashboard.

Authentication

Signals are authenticated via the token query parameter. Each account has a unique token. You can regenerate it from Settings if compromised.

Keep your webhook token secret. Anyone with the token can send signals to your account.

Request Format

Send a POST request with a JSON body:

{
  "symbol": "NIFTY",
  "action": "buy",
  "quantity": 50,
  "price": 24500.50,
  "order_type": "market",
  "strategy_id": "optional-uuid"
}

Fields

FieldTypeRequiredDescription
symbolstringYesTrading symbol (e.g., NIFTY, RELIANCE)
actionstringYes"buy" or "sell"
quantitynumberYesNumber of shares/lots
pricenumberNoLimit price (0 or omit for market)
order_typestringNo"market", "limit", "stop" (default: market)
strategy_idstringNoLink signal to a specific strategy

Response

Success (200)

{
  "status": "received",
  "signal_id": "sig_abc123",
  "message": "Signal received and queued for processing"
}

Error (400/401)

{
  "error": "Invalid token",
  "message": "The webhook token is invalid or expired"
}

Examples

cURL

curl -X POST \
  "https://api.algrow.biz/api/signals/webhook?token=YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"symbol":"NIFTY","action":"buy","quantity":50}'

Python

import requests

url = "https://api.algrow.biz/api/signals/webhook"
params = {"token": "YOUR_TOKEN"}
payload = {
    "symbol": "NIFTY",
    "action": "buy",
    "quantity": 50,
    "order_type": "market"
}

response = requests.post(url, params=params, json=payload)
print(response.json())

Node.js

const response = await fetch(
  "https://api.algrow.biz/api/signals/webhook?token=YOUR_TOKEN",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      symbol: "NIFTY",
      action: "buy",
      quantity: 50,
    }),
  }
);
const data = await response.json();
console.log(data);