Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,341 @@
{
"swagger": "2.0",
"info": {
"title": "AllRatesToday",
"description": "Get real-time and historical currency exchange rates for 160+ currencies. Rates are sourced from Reuters/Refinitiv and interbank feeds, updated every 60 seconds.",
"version": "1.0",
"contact": {
"name": "Cahthurana G",
"email": "basnayakac8@gmail.com",
"url": "https://allratestoday.com"
}
},
"host": "allratestoday.com",
"basePath": "/",
"schemes": [
"https"
],
"consumes": [],
"produces": [
"application/json"
],
"paths": {
"/api/v1/rates": {
"get": {
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rate": {
"type": "number",
"format": "float",
"description": "The exchange rate value.",
"title": "Rate"
},
"source": {
"type": "string",
"description": "Source currency code, eg 'USD'.",
"title": "Source"
},
"target": {
"type": "string",
"description": "Target currency code, eg 'EUR'.",
"title": "Target"
},
"time": {
"type": "string",
"description": "Timestamp of the rate.",
"title": "Time"
}
}
}
}
},
"400": {
"description": "Bad Request"
},
"401": {
"description": "Unauthorized"
},
"429": {
"description": "Rate limit exceeded"
},
"500": {
"description": "Internal Server Error"
}
},
"summary": "Get Exchange Rate",
"description": "Get the live mid-market exchange rate between two currencies",
"operationId": "GetExchangeRate",
"parameters": [
{
"name": "source",
"in": "query",
"required": true,
"type": "string",
"description": "Source currency code, eg 'USD'",
"x-ms-summary": "Source currency"
},
{
"name": "target",
"in": "query",
"required": true,
"type": "string",
"description": "Target currency code, eg 'EUR'. Comma-separated for multiple targets, eg 'EUR,GBP,JPY'",
"x-ms-summary": "Target currency"
}
]
}
},
"/api/v1/symbols": {
"get": {
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"currencies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "ISO 4217 currency code, eg 'USD'.",
"title": "Code"
},
"name": {
"type": "string",
"description": "Currency name, eg 'US Dollar'.",
"title": "Name"
},
"symbol": {
"type": "string",
"description": "Currency symbol, eg '$'.",
"title": "Symbol"
}
}
},
"description": "List of supported currencies.",
"title": "Currencies"
},
"count": {
"type": "integer",
"format": "int32",
"description": "Total number of supported currencies.",
"title": "Count"
}
}
}
},
"500": {
"description": "Internal Server Error"
}
},
"summary": "List Supported Currencies",
"description": "List all supported currency codes, names, and symbols",
"operationId": "ListCurrencies",
"parameters": []
}
},
"/api/rate": {
"get": {
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"rate": {
"type": "number",
"format": "float",
"description": "The exchange rate value.",
"title": "Rate"
},
"source": {
"type": "string",
"description": "Source currency code.",
"title": "Source"
},
"target": {
"type": "string",
"description": "Target currency code.",
"title": "Target"
},
"time": {
"type": "string",
"description": "Timestamp of the rate.",
"title": "Time"
}
},
"description": "Rate data object.",
"title": "Data"
}
}
}
},
"400": {
"description": "Bad Request"
},
"500": {
"description": "Internal Server Error"
}
},
"summary": "Get Public Rate",
"description": "Get a single exchange rate between two currencies without authentication",
"operationId": "GetPublicRate",
"parameters": [
{
"name": "source",
"in": "query",
"required": true,
"type": "string",
"description": "Source currency code, eg 'USD'",
"x-ms-summary": "Source currency"
},
{
"name": "target",
"in": "query",
"required": true,
"type": "string",
"description": "Target currency code, eg 'EUR'",
"x-ms-summary": "Target currency"
}
]
}
},
"/api/v1/rates-historical": {
"get": {
"responses": {
"200": {
"description": "OK",
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rate": {
"type": "number",
"format": "float",
"description": "The exchange rate value.",
"title": "Rate"
},
"source": {
"type": "string",
"description": "Source currency code.",
"title": "Source"
},
"target": {
"type": "string",
"description": "Target currency code.",
"title": "Target"
},
"time": {
"type": "string",
"description": "Timestamp of the rate.",
"title": "Time"
}
}
}
}
},
"400": {
"description": "Bad Request"
},
"401": {
"description": "Unauthorized"
},
"429": {
"description": "Rate limit exceeded"
},
"500": {
"description": "Internal Server Error"
}
},
"summary": "Get Historical Rate",
"description": "Get historical exchange rates for a specific date range",
"operationId": "GetHistoricalRate",
"parameters": [
{
"name": "source",
"in": "query",
"required": true,
"type": "string",
"description": "Source currency code, eg 'USD'",
"x-ms-summary": "Source currency"
},
{
"name": "target",
"in": "query",
"required": true,
"type": "string",
"description": "Target currency code, eg 'EUR'",
"x-ms-summary": "Target currency"
},
{
"name": "from",
"in": "query",
"required": true,
"type": "string",
"description": "Start date in ISO format, eg '2024-01-01T00:00:00+00:00'",
"x-ms-summary": "From date"
},
{
"name": "to",
"in": "query",
"required": true,
"type": "string",
"description": "End date in ISO format, eg '2024-01-31T23:59:59+00:00'",
"x-ms-summary": "To date"
},
{
"name": "group",
"in": "query",
"required": false,
"type": "string",
"description": "Grouping interval: 'day', 'week', or 'month'",
"x-ms-summary": "Group by"
}
]
}
}
},
"definitions": {},
"parameters": {},
"responses": {},
"securityDefinitions": {
"api_key": {
"type": "apiKey",
"in": "header",
"name": "Authorization"
}
},
"security": [
{
"api_key": []
}
],
"tags": [],
"x-ms-connector-metadata": [
{
"propertyName": "Website",
"propertyValue": "https://allratestoday.com/"
},
{
"propertyName": "Privacy policy",
"propertyValue": "https://allratestoday.com/privacy"
},
{
"propertyName": "Categories",
"propertyValue": "Commerce;Finance"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"properties": {
"connectionParameters": {
"api_key": {
"type": "securestring",
"uiDefinition": {
"constraints": {
"required": "true"
},
"description": "AllRatesToday API Key (get free at allratestoday.com/register)",
"displayName": "API Key",
"tooltip": "Provide a valid AllRatesToday API Key. Format: Bearer YOUR_KEY"
}
}
},
"iconBrandColor": "#25A557",
"policyTemplateInstances": [
{
"parameters": {
"x-ms-apimTemplate-operationName": [
"GetExchangeRate",
"GetHistoricalRate"
],
"x-ms-apimTemplateParameter.headerName": "Authorization",
"x-ms-apimTemplateParameter.headerValue": "Bearer @connectionParameters('api_key')"
},
"templateId": "setheader",
"title": "Set Authorization Header"
}
],
"capabilities": [],
"publisher": "Cahthurana G",
"stackOwner": "AllRatesToday"
}
}
Loading