Citi · Schema

FXQuoteResponse

BankingFinancial ServicesOpen BankingPaymentsTreasuryISO 20022Commercial CardsForeign ExchangeCustodyTrade FinanceCorporate BankingAPI Gateway

Properties

Name Type Description
action string Defines the action of the message. Value will be rate-response.
jsonReqId string The unique identifier for the JSON request. Format is alphanumeric.
senderCompId string The Citi-assigned value used to identify the firm sending the message. May contain special characters ( ‘_’, ‘.’, ‘-‘).
onBehalfOfCompId string The Citi-assigned value used to identify the sub-entity. May contain special characters ( ‘_’, ‘.’, ‘-‘)
sendingTime string The time of message transmission. Always expressed in UTC (Universal Time Coordinated, also known as 'GMT'), format: YYYYMMDD-HH:MM:SS.mmm.
errorCode integer The error code associated with the response. See the Error Codes tab for a complete list.
errorMessage string The error message associated with the response. See the Error Codes tab for a complete list.
ifxRates array
View JSON Schema on GitHub

JSON Schema

citi-fxquote-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/citi/main/json-schema/citi-fxquote-response-schema.json",
  "title": "FXQuoteResponse",
  "x-generated": "2026-10-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/citi-fxgateway-api-openapi.yml#/components/schemas/FXQuoteResponse",
  "type": "object",
  "required": [
    "action",
    "jsonReqId",
    "senderCompId",
    "onBehalfOfCompId",
    "sendingTime"
  ],
  "properties": {
    "action": {
      "type": "string",
      "description": "Defines the action of the message. Value will be rate-response.",
      "maxLength": 20
    },
    "jsonReqId": {
      "type": "string",
      "description": "The unique identifier for the JSON request. Format is alphanumeric.",
      "maxLength": 100
    },
    "senderCompId": {
      "type": "string",
      "description": "The Citi-assigned value used to identify the firm sending the message. May  contain special characters ( ‘_’, ‘.’, ‘-‘).",
      "maxLength": 20
    },
    "onBehalfOfCompId": {
      "type": "string",
      "description": "The Citi-assigned value used to identify the sub-entity. May contain special characters ( ‘_’, ‘.’, ‘-‘)",
      "maxLength": 20
    },
    "sendingTime": {
      "type": "string",
      "description": "The time of message transmission. Always expressed in UTC (Universal Time Coordinated, also known as 'GMT'), format: YYYYMMDD-HH:MM:SS.mmm."
    },
    "errorCode": {
      "type": "integer",
      "description": "The error code associated with the response. See the Error Codes tab for a complete list."
    },
    "errorMessage": {
      "type": "string",
      "description": "The error message associated with the response. See the Error Codes tab for a complete list."
    },
    "ifxRates": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "rateSetId",
          "ccyPair",
          "tenor",
          "bidSpotRate",
          "offerSpotRate",
          "bidForwardPoints",
          "offerForwardPoints",
          "midPrice",
          "validUntilTime",
          "isValid",
          "baseCurrency",
          "ratePrecision",
          "valueDate",
          "bidOutrightRate",
          "offerOutrightRate",
          "fixingRate"
        ],
        "properties": {
          "rateSetId": {
            "type": "integer",
            "description": "The Citi-defined rate set ID that the rate belongs to."
          },
          "ccyPair": {
            "type": "string",
            "description": "A six character sorted alpha string comprising two ISO ccy codes that the rate applies to.",
            "maxLength": 6
          },
          "tenor": {
            "type": "string",
            "description": "The Tenor for the rate.",
            "maxLength": 3
          },
          "bidSpotRate": {
            "type": "string",
            "format": "double",
            "description": "The Bid Spot Rate for the currency pair."
          },
          "offerSpotRate": {
            "type": "string",
            "format": "double",
            "description": "The Offer Spot Rate for the currency pair."
          },
          "bidForwardPoints": {
            "type": "string",
            "format": "double",
            "description": "The Bid Forward Points for this tenor (Forward Pricing Only)."
          },
          "offerForwardPoints": {
            "type": "string",
            "format": "double",
            "description": "The Offer Forward Points for this tenor (Forward Pricing Only)."
          },
          "midPrice": {
            "type": "string",
            "format": "double",
            "description": "The Mid Price for the rate."
          },
          "validUntilTime": {
            "type": "string",
            "description": "The time and date that this rate will expire. Note-This is held in GMT / UTC format: yyyyMM-dd HH:mm:ss.SSS"
          },
          "isValid": {
            "type": "boolean",
            "description": "A flag that shows that Citi was able to provide the requested rate. If this field is false, then midPrice, points, and rates are zero."
          },
          "baseCurrency": {
            "type": "string",
            "maxLength": 3,
            "description": "The base currency of the currency pair."
          },
          "ratePrecision": {
            "type": "integer",
            "description": "The number of decimal places to which the rate(s) for this tenor should be quoted in regular base/term format."
          },
          "isTradable": {
            "type": "boolean",
            "description": "A flag to indicate whether the rate is tradable by the client (TRUE) or is to be used for reference purposes only."
          },
          "fixingRate": {
            "type": "string",
            "format": "double",
            "description": "This field and `fixingsource` field will only be populated once a month on the agreed NDF fixing date. Will contain the fixing rate to be used for this currency pair."
          },
          "fixingSource": {
            "type": "string",
            "description": "Will contain the fixing source associated with the fixingRate field.",
            "maxLength": 100
          },
          "valueDate": {
            "type": "string",
            "format": "date",
            "description": "The value date of the rate returned in format: yyyy-MM-dd."
          },
          "drawDownValidUntilTime": {
            "description": "Optional field. The extended time and date that this rate will expire for sending draw down orders. This field will be sent only if you are enabled for sending pre-order requests. Note: this is held in GMT / UTC in format: yyyy-MM-dd HH:mm:ss.SSS.\n"
          },
          "bidOutrightRate": {
            "type": "string",
            "format": "double",
            "description": "The Bid Outright Rate for this currency pair."
          },
          "offerOutrightRate": {
            "type": "string",
            "format": "double",
            "description": "The Offer Outright Rate for this currency pair."
          },
          "isMrf": {
            "description": "Optional field. Applicable when MRF hourly updated rate option enabled. Flag indicates whether this is updated rate due to MRF True indicates updated rate.",
            "type": "boolean"
          },
          "rateId": {
            "type": "integer",
            "description": "Optional field. Applicable when MRF hourly updated rate option enabled. Unique identifier of a rate. Value is incremental. Used for reference purpose to identify latest rate in case of incremental version of rate due to MRF."
          }
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/citi-fxquote-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

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

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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