Documentation
Documentation
https://www.fastforex.io/docs
RateLimits
https://raw.githubusercontent.com/api-evangelist/fastforex/refs/heads/main/rate-limits/fastforex-rate-limits.yml
openapi: 3.0.3
info:
title: fastFOREX.io admin crypto API
version: 2.3.2
description: Foreign & cryptocurrency exchange rate API
termsOfService: https://www.fastforex.io/terms-of-sale
contact:
email: support@fastforex.io
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://api.fastforex.io
description: Production
- url: https://api.beta.fastforex.io
description: Beta
security:
- api_key: []
- apiKeyHeader: []
- bearerAuth: []
- basicAuth: []
tags:
- name: crypto
description: Digital currencies, pairs & prices
paths:
/fetch-one:
get:
tags:
- crypto
description: Fetch a single currency exchange rate, from and to any supported physical or digital currency. Midpoint spot rate.
parameters:
- name: from
in: query
description: Base currency symbol (physical or digital), defaults to USD
required: false
allowEmptyValue: true
schema:
$ref: '#/components/schemas/AnyCurrency'
- name: to
in: query
description: Target currency symbol (physical or digital), defaults to USD
required: true
schema:
$ref: '#/components/schemas/AnyCurrency'
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
base:
$ref: '#/components/schemas/AnyCurrency'
updated:
$ref: '#/components/schemas/DateTimes'
ms:
$ref: '#/components/schemas/ResponseTime'
result:
type: object
minProperties: 1
maxProperties: 1
additionalProperties:
type: number
format: float
example:
base: USD
result:
EUR: 0.82791
updated: '2021-01-16T16:34:29Z'
ms: 4
'400':
description: Bad Request
'401':
description: Not Authorized
'403':
description: Forbidden
'429':
description: Rate limit exceeded
/convert:
get:
tags:
- crypto
description: Convert an amount of one currency into another currency (supports physical and digital currencies)
parameters:
- name: from
in: query
description: Base currency symbol (physical or digital)
required: false
allowEmptyValue: true
schema:
$ref: '#/components/schemas/AnyCurrency'
- name: to
in: query
description: Target currency symbol (physical or digital)
required: true
schema:
$ref: '#/components/schemas/AnyCurrency'
- name: amount
in: query
description: Amount of source currency to convert
required: true
schema:
type: number
format: float
minimum: 0.01
- name: precision
in: query
description: Rounding precision for converted amount, defaults to 2 decimal places
required: false
schema:
type: integer
minimum: 0
maximum: 20
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
base:
$ref: '#/components/schemas/AnyCurrency'
ms:
$ref: '#/components/schemas/ResponseTime'
amount:
type: number
format: float
result:
type: object
minProperties: 2
maxProperties: 2
properties:
rate:
type: number
format: float
additionalProperties:
type: number
format: float
example:
base: USD
amount: 199.5
result:
EUR: 164.29
rate: 0.82353
ms: 7
'400':
description: Bad Request
'401':
description: Not Authorized
'403':
description: Forbidden
'429':
description: Rate limit exceeded
/crypto/currencies:
get:
tags:
- crypto
description: Fetch a list of 500+ supported cryptocurrencies
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
ms:
$ref: '#/components/schemas/ResponseTime'
currencies:
type: object
minProperties: 200
additionalProperties:
type: string
example:
currencies:
1INCH: 1inch Network
AAVE: Aave
ACA: Acala Token
ACH: Alchemy Pay
ADA: Cardano
AERGO: Aergo
ms: 8
'400':
description: Bad Request
'401':
description: Not Authorized
'429':
description: Rate limit exceeded
/crypto/pairs:
get:
tags:
- crypto
description: Fetch a list of 400+ supported cryptocurrency pairs
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
ms:
$ref: '#/components/schemas/ResponseTime'
pairs:
type: object
minProperties: 400
additionalProperties:
$ref: '#/components/schemas/AnyCurrencyPair'
example:
pairs:
1INCH/BTC:
base: 1INCH
quote: BTC
BTC/USD:
base: BTC
quote: USD
ETH/BTC:
base: ETH
quote: BTC
ms: 8
'400':
description: Bad Request
'401':
description: Not Authorized
'429':
description: Rate limit exceeded
/crypto/fetch-prices:
get:
tags:
- crypto
description: Fetch one or more (up to 10) real-time prices for supported cryptocurrency pairs
parameters:
- name: pairs
in: query
description: Up to 10 target currency pairs, comma separated in XXX/YYY format
required: true
schema:
$ref: '#/components/schemas/CryptoCurrencyPairList'
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
ms:
$ref: '#/components/schemas/ResponseTime'
prices:
type: object
minProperties: 1
additionalProperties:
type: number
format: float
example:
prices:
BTC/USD: 20624.21
ETH/BTC: 0.075316
ms: 8
'400':
description: Bad Request
'401':
description: Not Authorized
'403':
description: Forbidden
'429':
description: Rate limit exceeded
components:
schemas:
AnyCurrencyPair:
type: object
description: Defines a currency trading pair.
properties:
base:
type: string
pattern: '[A-Z0-9]{3,6}'
description: Base currency in the pair
quote:
type: string
pattern: '[A-Z0-9]{3,6}'
description: Quote currency in the pair
example:
base: USD
quote: BTC
IsoDateTimeZone:
type: string
pattern: '[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(Z?|[+-][0-9]{2}:00)'
description: ISO8601 Datetime with optional timezone offset YYYY-MM-DDTHH:MM:SS±HH:00
example: '2021-01-26T15:30:00-05:00'
DateTimes:
description: A datetime value. If no timezone offset supplied, UTC/GMT is assumed.
oneOf:
- $ref: '#/components/schemas/DateTime'
- $ref: '#/components/schemas/IsoDateTimeZone'
- $ref: '#/components/schemas/TimestampMillis'
DateTime:
type: string
pattern: '[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}'
description: UTC/GMT datetime YYYY-MM-DD HH:MM:SS
CryptoCurrencyPairList:
type: string
pattern: '[A-Z0-9]{3,6}/[A-Z0-9]{3,6}(,[A-Z0-9]{3,6}/[A-Z0-9]{3,6})*'
description: A comma-separated list of crypto pairs
AnyCurrency:
type: string
pattern: '[A-Z0-9]{3,6}'
description: Currency code for a physical or digital/cryptocurrency
TimestampMillis:
type: number
format: int64
description: Milliseconds since Jan 1 1970 (unix timestamp with millisecond precision)
example: 1739305030072
ResponseTime:
type: number
format: int32
description: Server response time in milliseconds
securitySchemes:
api_key:
type: apiKey
name: api_key
in: query
apiKeyHeader:
type: apiKey
name: X-API-KEY
in: header
bearerAuth:
type: http
scheme: bearer
bearerFormat: api_key
basicAuth:
type: http
scheme: basic
externalDocs:
description: Find out more about fastFOREX.io
url: https://www.fastforex.io
x-samples-languages:
- curl
- node
- ruby
- javascript
- python
- php
- go
- java
- swift
x-proxy-enabled: false