Integrate our AI trading signals into your applications, trading bots, and platforms
Developer Access: The UR Trading Expert API allows developers to integrate our AI trading signals into their own applications, trading bots, and platforms. This documentation covers authentication, endpoints, and usage examples.
The UR Trading Expert API provides:
All API requests should be made to:
https://api.urtradingexpert.com/v1
All API requests require authentication using an API key. Include your API key in the request header:
Authorization: Bearer YOUR_API_KEY
To obtain an API key:
API rate limits vary by subscription tier:
Rate limit headers are included in all responses:
X-RateLimit-Limit - Total requests allowedX-RateLimit-Remaining - Requests remainingX-RateLimit-Reset - Unix timestamp when limit resets/signals
Retrieve recent trading signals.
Query Parameters:
asset (optional) - Filter by asset (BTC, ETH, EURUSD, etc.)limit (optional) - Number of signals to return (default: 10, max: 100)offset (optional) - Pagination offsetExample Request:
GET /v1/signals?asset=BTC&limit=20
Authorization: Bearer YOUR_API_KEY
Example Response:
{
"signals": [
{
"id": "sig_123456",
"asset": "BTC/USDT",
"direction": "BUY",
"entry": 67250.00,
"take_profit": 69500.00,
"stop_loss": 66100.00,
"confidence": 87,
"risk_reward": 2.5,
"timestamp": "2025-01-15T10:30:00Z",
"analysis": "Strong bullish momentum..."
}
],
"total": 150,
"limit": 20,
"offset": 0
}
/signals/{signal_id}
Retrieve a specific signal by its ID.
Example Request:
GET /v1/signals/sig_123456
Authorization: Bearer YOUR_API_KEY
/account
Get information about your account and subscription.
Example Response:
{
"user_id": "user_123",
"username": "trader123",
"subscription_tier": "premium",
"subscription_status": "active",
"expires_at": "2025-02-15T00:00:00Z",
"api_requests_remaining": 850,
"api_requests_limit": 1000
}
/webhooks
Create a webhook to receive signal notifications.
Request Body:
{
"url": "https://your-app.com/webhooks/signals",
"secret": "your_webhook_secret",
"events": ["signal.created"],
"filters": {
"assets": ["BTC", "ETH"],
"min_confidence": 75
}
}
Available webhook events:
signal.created - New signal generatedsignal.updated - Signal updated (e.g., TP/SL adjusted)signal.closed - Signal closed (TP or SL hit)Webhook payloads are sent as POST requests to your configured URL:
{
"event": "signal.created",
"timestamp": "2025-01-15T10:30:00Z",
"data": {
"id": "sig_123456",
"asset": "BTC/USDT",
"direction": "BUY",
"entry": 67250.00,
"take_profit": 69500.00,
"stop_loss": 66100.00,
"confidence": 87
}
}
Each webhook request includes a signature header for verification:
X-UR-Signature: sha256=abc123...
Verify the signature using your webhook secret to ensure requests are authentic.
All errors follow this format:
{
"error": {
"code": "INVALID_API_KEY",
"message": "The provided API key is invalid",
"details": {}
}
}
INVALID_API_KEY - API key is missing or invalidRATE_LIMIT_EXCEEDED - Too many requestsINVALID_PARAMETER - Invalid request parameterNOT_FOUND - Resource not foundSUBSCRIPTION_REQUIRED - Endpoint requires active subscriptionINTERNAL_ERROR - Server errorimport requests
API_KEY = "your_api_key"
BASE_URL = "https://api.urtradingexpert.com/v1"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
# Get recent signals
response = requests.get(
f"{BASE_URL}/signals",
headers=headers,
params={"asset": "BTC", "limit": 10}
)
signals = response.json()
print(signals)
const API_KEY = 'your_api_key';
const BASE_URL = 'https://api.urtradingexpert.com/v1';
async function getSignals() {
const response = await fetch(`${BASE_URL}/signals?asset=BTC&limit=10`, {
headers: {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
}
});
const signals = await response.json();
console.log(signals);
}
getSignals();
Official SDKs are available for popular languages:
pip install ur-trading-expertnpm install ur-trading-expertgo get github.com/urtradingexpert/go-sdkCheck our GitHub for the latest SDKs and examples.
For API support and questions:
Note: API access is available for Premium and VIP subscribers. Free trial users have limited API access. For production use, we recommend implementing proper error handling, rate limiting, and webhook signature verification.