API Documentation
Use our public API to access real-time Syrian Pound exchange rate data
Base URL
AI Agent & Developer Resources
Machine-readable files that let AI agents and developer tools understand the LiraScope API quickly.
Free API Access
Public endpoints are freely accessible without any account or API key. Up to 300 requests/month per IP address.
Authentication
The API is public and does not require authentication for public endpoints
/rates/*/crypto/*/gold/*/pricing
300 requests/month per IP — completely free
/client/*
Subscribe for higher limits and advanced features
Endpoints
Get Latest Rates
Retrieve the latest exchange rates from Central Bank and black market sources
/rates/latestQuery Parameters
Comma-separated list of currencies (e.g., USD,EUR)
Language code (ar, en, de) - Default: ar
Example Request
curl "https://lirascope.syria-cloud.sy/api/v1/rates/latest?currencies=USD,EUR&lang=en"Example Response
{
"disclaimer": "...",
"timestampUtc": "2026-01-29T02:00:00Z",
"cbsRates": [
{
"currency": "USD",
"buy": 110.00,
"sell": 111.00,
"mid": 110.50,
"timestampUtc": "2026-01-29T01:59:47Z",
"isManualOverride": false
}
],
"marketRates": [
{
"currency": "USD",
"buy": 116.80,
"sell": 117.50,
"mid": 117.15,
"timestampUtc": "2026-01-29T01:54:46Z",
"isManualOverride": false
},
{
"currency": "EUR",
"buy": 138.40,
"sell": 140.30,
"mid": 139.35,
"timestampUtc": "2026-01-29T01:54:46Z",
"isManualOverride": false
}
],
"effectiveRates": [...]
}Get USD-Based Rates
Retrieve the latest exchange rates with USD as the base currency
/rates/usd-basedQuery Parameters
Language code (ar, en, de) - Default: ar
Example Request
curl "https://lirascope.syria-cloud.sy/api/v1/rates/usd-based?lang=en"Example Response
{
"disclaimer": "...",
"base": "USD",
"date": "2026-03-10",
"timestampUtc": "2026-03-10T12:00:00Z",
"rates": [
{ "currency": "AED", "buy": 3.6594, "sell": 3.6814, "mid": 3.6704 },
{ "currency": "CHF", "buy": 0.8798, "sell": 0.8851, "mid": 0.8824 },
{ "currency": "EGP", "buy": 49.721, "sell": 50.019, "mid": 49.870 },
{ "currency": "EUR", "buy": 0.9174, "sell": 0.9229, "mid": 0.9201 },
{ "currency": "GBP", "buy": 0.7820, "sell": 0.7867, "mid": 0.7843 },
{ "currency": "KWD", "buy": 0.3066, "sell": 0.3085, "mid": 0.3075 },
{ "currency": "SAR", "buy": 3.7477, "sell": 3.7702, "mid": 3.7590 },
{ "currency": "TRY", "buy": 43.945, "sell": 44.209, "mid": 44.077 }
]
}Response Fields
Latest Crypto Prices
Get the latest cryptocurrency prices in USD with 24h change data.
/crypto/latestQuery Parameters
Response language (ar, en, de)
Example Request
curl "https://lirascope.syria-cloud.sy/api/v1/crypto/latest?lang=en"Latest Gold Prices
Get the latest gold prices in USD with 24h change data.
/gold/latestQuery Parameters
Response language (ar, en, de)
Example Request
curl "https://lirascope.syria-cloud.sy/api/v1/gold/latest?lang=en"Response Fields
Rate Limits
To protect the API from abuse, the following rate limits are applied to all public endpoints.
| Tier | Auth | Monthly | Per Minute | Per Hour |
|---|---|---|---|---|
| Free (by IP) | No Auth | 300 | 5 | 100 |
| Starter | API Key Required | 10,000 | 100 | 1,000 |
| Professional | API Key Required | 500,000 | 500 | 20,000 |
| Enterprise | API Key Required | Unlimited | Unlimited | Unlimited |
Upgrade to a paid plan for higher limits. View Plans
Rate Limit Headers
All API responses include rate limit information:
X-Rate-Limit-Limit: 5 X-Rate-Limit-Remaining: 3 X-Rate-Limit-Reset: 2026-02-04T10:15:00Z
HTTP 429 Response
When rate limit is exceeded:
{
"error": "Rate limit exceeded. Please retry after 45 seconds.",
"retryAfter": 45
}Private API & Webhooks
The Private API lets you build integrations with signed webhook alerts for exchange rate conditions.
Private API Authentication
All /client/* endpoints require a public key and a private key sent in the request headers.
Example Request
curl -X GET https://lirascope.syria-cloud.sy/api/v1/client/me \ -H "X-Api-Key: lsp_pub_a1b2c3..." \ -H "X-Api-Secret: lsp_prv_d4e5f6..."
⚠️ The private key is shown only once at creation time. Save it immediately in a secure location.
Client Profile
View your account information and registered webhook count.
/client/meExample Response
{
"id": "3fa85f64-...",
"name": "My Integration",
"publicKey": "lsp_pub_a1b2c3...",
"isActive": true,
"createdUtc": "2026-03-08T00:00:00Z",
"lastUsedUtc": "2026-03-08T12:00:00Z",
"webhookCount": 2
}Webhooks
Register URLs to receive automatic alerts when rate conditions are met.
/client/webhooks— List all webhooks/client/webhooks— Create a new webhookExample Request
curl -X POST https://lirascope.syria-cloud.sy/api/v1/client/webhooks \
-H "X-Api-Key: lsp_pub_a1b2c3..." \
-H "X-Api-Secret: lsp_prv_d4e5f6..." \
-H "Content-Type: application/json" \
-d '{
"webhookUrl": "https://my-server.com/hooks/rate-alert",
"currency": "USD",
"source": "MARKET",
"alertType": 0,
"thresholdValue": 15000.0,
"label": "USD high alert"
}'Alert Types
/client/webhooks/{id}— Update a webhook/client/webhooks/{id}— Delete a webhookWebhook Payload
When an alert condition is met, LiraScope sends a POST request to your configured webhook URL.
Headers
Content-Type: application/json X-LiraScope-Signature: sha256=<hex-digest> X-LiraScope-Event: rate_alert
Example Response
{
"event": "rate_alert",
"currency": "USD",
"source": "MARKET",
"alertType": "ABOVE",
"threshold": 15000.0,
"currentRate": 15250.0,
"previousRate": 14800.0,
"label": "USD high alert",
"webhookId": "7c9e6679-...",
"timestampUtc": "2026-03-08T12:30:00Z"
}Signature Verification
Verify the payload authenticity using HMAC-SHA256 with your public key as the secret.
// JavaScript / Node.js
const crypto = require('crypto');
function verifySignature(body, publicKey, signatureHeader) {
const expected = crypto.createHmac('sha256', publicKey)
.update(body).digest('hex');
const received = signatureHeader.replace('sha256=', '');
return crypto.timingSafeEqual(
Buffer.from(expected), Buffer.from(received)
);
}Webhook Reliability
- Webhooks that fail 10 consecutive times are automatically disabled.
- Re-enable via the dashboard or the PUT /client/webhooks/{id} endpoint.
- The lastDeliveryStatusCode and consecutiveFailures fields show delivery health.
Support
For support or to report issues, please contact info@omarino.de