{"openapi":"3.1.0","info":{"title":"CurrencyBeacon (BYOK) API","version":"0.1.0","description":"CurrencyBeacon (BYOK) lets an AI assistant read your own CurrencyBeacon data through the CurrencyBeacon API with a key you supply (CurrencyBeacon API key). Read-only: 5 tools (get_latest_rates, get_historical_rates, convert_currency, get_timeseries, list_currencies). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached; it is only ever sent...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-currencybeacon.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-currencybeacon/docs"},"termsOfService":"https://connectorbay.com/byok-currencybeacon/terms"},"servers":[{"url":"https://byok-currencybeacon.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-currencybeacon/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/get_latest_rates":{"post":{"operationId":"get_latest_rates","summary":"Get the latest exchange rates from a base currency to all supported currencies, or to a chosen list. Use for \"What are t","description":"Get the latest exchange rates from a base currency to all supported currencies, or to a chosen list. Use for \"What are the current USD to EUR and GBP rates\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"base":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Base currency code, for example USD (default), EUR or GBP.","title":"Base"},"symbols":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Limit the answer to these currency codes, comma-separated, for example 'EUR,GBP,JPY'. Leave empty for all.","title":"Symbols"}},"title":"get_latest_ratesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_historical_rates":{"post":{"operationId":"get_historical_rates","summary":"Get exchange rates for one past date (back to 1996) from a base currency. Use for \"What was the USD to EUR rate on 2023-","description":"Get exchange rates for one past date (back to 1996) from a base currency. Use for \"What was the USD to EUR rate on 2023-12-25\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"date":{"description":"Date as YYYY-MM-DD.","maxLength":10,"title":"Date","type":"string"},"base":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Base currency code, for example USD (default), EUR or GBP.","title":"Base"},"symbols":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Limit the answer to these currency codes, comma-separated, for example 'EUR,GBP,JPY'. Leave empty for all.","title":"Symbols"}},"required":["date"],"title":"get_historical_ratesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/convert_currency":{"post":{"operationId":"convert_currency","summary":"Convert an amount between two currencies at the real-time mid-market rate, or at a past date's rate. Use for \"How much i","description":"Convert an amount between two currencies at the real-time mid-market rate, or at a past date's rate. Use for \"How much is 100 USD in GBP\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"from_currency":{"description":"Currency code to convert from, for example USD.","maxLength":10,"title":"From Currency","type":"string"},"to_currency":{"description":"Currency code to convert to, for example GBP.","maxLength":10,"title":"To Currency","type":"string"},"amount":{"description":"Amount to convert.","maximum":1000000000000,"minimum":0,"title":"Amount","type":"number"},"date":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Optional date (YYYY-MM-DD) to use that day's rate.","title":"Date"}},"required":["from_currency","to_currency","amount"],"title":"convert_currencyArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_timeseries":{"post":{"operationId":"get_timeseries","summary":"Get daily exchange rates between two dates (Startup and Professional plans only; the range limit depends on the plan, ty","description":"Get daily exchange rates between two dates (Startup and Professional plans only; the range limit depends on the plan, typically 365 days). Use for \"Show USD rates between 2024-01-01 and 2024-03-15\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"start_date":{"description":"First date, YYYY-MM-DD.","maxLength":10,"title":"Start Date","type":"string"},"end_date":{"description":"Last date, YYYY-MM-DD.","maxLength":10,"title":"End Date","type":"string"},"base":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Base currency code, for example USD (default), EUR or GBP.","title":"Base"}},"required":["start_date","end_date"],"title":"get_timeseriesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_currencies":{"post":{"operationId":"list_currencies","summary":"List the supported currencies (fiat and crypto) with names, symbols and codes. Use for \"Which currencies does CurrencyBe","description":"List the supported currencies (fiat and crypto) with names, symbols and codes. Use for \"Which currencies does CurrencyBeacon support\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_currenciesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}