FXRatesAPI Convert API

Convert an amount between two currencies.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/fxratesapi-convert-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

fxratesapi-convert-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: FXRates Convert API
  description: 'FXRatesAPI is a foreign exchange rates REST API serving real-time and historical currency exchange rates for 185+ fiat currencies plus major cryptocurrencies and precious metals. All endpoints return JSON over HTTPS from the base host https://api.fxratesapi.com. A limited tier is usable without an API key; a paid API key (passed as the api_key query parameter or an Authorization Bearer header) raises quotas, increases update frequency, and unlocks base-currency switching.


    Endpoint paths, methods, and parameters below are grounded in live probes of the API on 2026-07-12. Response schemas are modeled from the observed JSON payloads rather than a provider-published machine-readable schema, and only parameters confirmed during probing are asserted; additional optional parameters may exist.'
  version: '1.0'
  contact:
    name: FXRatesAPI
    url: https://fxratesapi.com
  termsOfService: https://fxratesapi.com/legal/terms-conditions
servers:
- url: https://api.fxratesapi.com
  description: FXRatesAPI production
security:
- {}
- apiKeyQuery: []
- bearerAuth: []
tags:
- name: Convert
  description: Convert an amount between two currencies.
paths:
  /convert:
    get:
      operationId: convertCurrency
      tags:
      - Convert
      summary: Convert an amount between currencies
      description: Converts an amount from one currency to another using the latest rate, or a historical rate when a date is supplied.
      parameters:
      - name: from
        in: query
        required: true
        description: Source currency code (ISO 4217).
        schema:
          type: string
          example: USD
      - name: to
        in: query
        required: true
        description: Target currency code (ISO 4217).
        schema:
          type: string
          example: EUR
      - name: amount
        in: query
        required: true
        description: Amount of the source currency to convert.
        schema:
          type: number
          example: 100
      - name: date
        in: query
        required: false
        description: Optional date (YYYY-MM-DD) to convert at a historical rate.
        schema:
          type: string
          format: date
      - name: api_key
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Conversion result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConvertResponse'
        '400':
          $ref: '#/components/responses/Error'
components:
  schemas:
    ConvertResponse:
      type: object
      description: Modeled from the observed /convert JSON payload.
      properties:
        success:
          type: boolean
          example: true
        query:
          type: object
          properties:
            from:
              type: string
              example: USD
            to:
              type: string
              example: EUR
            amount:
              type: number
              example: 100
        info:
          type: object
          properties:
            rate:
              type: number
              example: 0.8511001313
        historical:
          type: boolean
          example: false
        date:
          type: string
          format: date-time
          example: '2026-01-01T23:59:00.000Z'
        timestamp:
          type: integer
          example: 1767311940
        result:
          type: number
          example: 85.11001313
    ErrorResponse:
      type: object
      description: Modeled from observed error payloads. FXRatesAPI returns success=false with either a nested error object ({message}) or a flat error string plus a description field, depending on the endpoint and failure mode.
      properties:
        success:
          type: boolean
          example: false
        error:
          oneOf:
          - type: string
            example: missing_from_currency
          - type: object
            properties:
              message:
                type: string
                example: Endpoint Not Found
        description:
          type: string
          example: The from currency is required for the convert endpoint.
  responses:
    Error:
      description: Error response.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    apiKeyQuery:
      type: apiKey
      in: query
      name: api_key
      description: API key passed as the api_key query parameter.
    bearerAuth:
      type: http
      scheme: bearer
      description: 'API key passed as an Authorization: Bearer <API_KEY> header.'