Skip to main content

Обмен валюты

OpenAPI 1.0.0

### API предоставляет следующие возможности: - запрашивать обменные курсы валют - запрашивать дайджест (цифровой документ с условиями сделки) для подписания электронно-цифровой подписью - инициировать исполнение спотовых сделок - запрашивать историю ранее заключенных сделок - запрашивать историю по подтверждениям сделок с учетом фильтров и сортировки

Скачать исходную спецификацию

Варианты

  • Public

Операции API

GET /v1/trades/securities — Запрос для получения списка доступных инструментов для спота и форварда

Чтобы запросить список инструментов вызовите метод и получите в ответе список доступных инструментов

{
  "tags": [
    "Client settings"
  ],
  "summary": "Запрос для получения списка доступных инструментов для спота и форварда",
  "operationId": "tradesSecurities",
  "description": "Чтобы запросить список инструментов вызовите метод и получите в ответе список доступных инструментов",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "responses": {
    "200": {
      "description": "Массив со списком доступных инструментов",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "array",
                "description": "Массив со списком досутпных инструментов",
                "required": [
                  "currencies",
                  "tenor"
                ],
                "items": {
                  "type": "object",
                  "properties": {
                    "currencies": {
                      "type": "object",
                      "description": "Объект с информацией о базовой и котируемой валютой из инструмента",
                      "required": [
                        "base",
                        "quoted"
                      ],
                      "properties": {
                        "base": {
                          "type": "string",
                          "description": "Базовая валют инструмента"
                        },
                        "quoted": {
                          "type": "string",
                          "description": "Котируемая валюта инструмента"
                        }
                      }
                    },
                    "tenor": {
                      "type": "string",
                      "description": "Значение определяющее дату расчета по сделке, возможные значения TOD - сегодня, TOM - завтра, SPOT - после завтра, BRD - форвардный тенор"
                    },
                    "valueDate": {
                      "type": "string",
                      "description": "Дата расчета для инструмента с теноромами TOD - сегодня, TOM - завтра, SPOT - после завтра"
                    },
                    "minSettlementDate": {
                      "type": "string",
                      "description": "Минимальная дата расчета для форвардного тенора, иначе null"
                    },
                    "maxSettlementDate": {
                      "type": "string",
                      "description": "Максимальная дата расчета для форвардного тенора, иначе null"
                    },
                    "decimalPlaces": {
                      "type": "integer",
                      "description": "Количество знаков после запятой для курсов валюты"
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса для трейсинга"
              }
            }
          },
          "examples": {
            "Успешный ответ": {
              "summary": "Успешный ответ",
              "value": {
                "result": [
                  {
                    "currencies": {
                      "base": "USD",
                      "quoted": "RUB"
                    },
                    "tenor": "TOD",
                    "valueDate": "2024-05-19",
                    "minSettlementDate": null,
                    "maxSettlementDate": null,
                    "decimalPlaces": 4
                  },
                  {
                    "currencies": {
                      "base": "USD",
                      "quoted": "RUB"
                    },
                    "tenor": "BRD",
                    "valueDate": null,
                    "minSettlementDate": "2024-05-19",
                    "maxSettlementDate": "2025-05-19",
                    "decimalPlaces": 3
                  }
                ],
                "requestId": "e0e70833c68e3c32"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Плохой запрос",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "error",
              "requestId"
            ],
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки",
                    "example": "app.invalid.request"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание кода ошибки",
                    "example": "Bad Request"
                  },
                  "data": {
                    "type": "array",
                    "description": "Дополнительная информация об ошибке",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "58286c252677a6"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/trades/rates — Получение обменного курса для спотовых сделок

Чтоб запросить обменный курс валют, введите обязательные параметры и получите в ответе: - идентификатор квоты - курс покупки и продажи валюты

{
  "tags": [
    "Spot"
  ],
  "summary": "Получение обменного курса для спотовых сделок",
  "operationId": "tradesRates",
  "description": "Чтоб запросить обменный курс валют, введите обязательные параметры и получите в ответе: \n  - идентификатор квоты\n  - курс покупки и продажи валюты",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Запросить обменные курсы для валютной пары",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "amount",
            "currency",
            "currencyPair",
            "tenor"
          ],
          "type": "object",
          "properties": {
            "amount": {
              "type": "number",
              "description": "Объем на который запрашивается цена",
              "example": 10000
            },
            "currency": {
              "type": "string",
              "description": "Валюта объема в соответсвии с стандартом ISO 4217",
              "example": "USD"
            },
            "currencyPair": {
              "type": "string",
              "description": "Валютная пара",
              "example": "USD/RUB"
            },
            "tenor": {
              "type": "string",
              "description": "Значение определяющее дату расчета по сделке, возможные значения TOD - сегодня, TOM - завтра, SPOT - после завтра",
              "example": "TOD"
            }
          }
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "Обменный курс по запрошенным параметрам",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Объект с результатом исполнения запроса",
                "required": [
                  "rfqId",
                  "currencyPair",
                  "tenor",
                  "clientBuy",
                  "clientSell",
                  "priceDecimalPlaces",
                  "tradeDate",
                  "ttl",
                  "valueDate"
                ],
                "properties": {
                  "rfqId": {
                    "type": "string",
                    "description": "Идентификатор запроса цены",
                    "example": "207b0e8112b911ef93a38bb1d711c250"
                  },
                  "currencyPair": {
                    "type": "string",
                    "description": "Валютная пара из запроса",
                    "example": "USD/RUB"
                  },
                  "tenor": {
                    "type": "string",
                    "description": "Значение определяющее дату расчета по сделке, возможные значения TOD - сегодня, TOM - завтра, SPOT - после завтра",
                    "example": "TOD"
                  },
                  "clientBuy": {
                    "type": "object",
                    "description": "Объект c курсом и объемом покупки",
                    "required": [
                      "price",
                      "amount",
                      "currency"
                    ],
                    "properties": {
                      "price": {
                        "type": "number",
                        "description": "Обменный курс покупки",
                        "example": 92.4386
                      },
                      "amount": {
                        "type": "number",
                        "description": "Объем покупки",
                        "example": 10000
                      },
                      "currency": {
                        "type": "string",
                        "description": "Валюта объема покупки",
                        "example": "USD"
                      }
                    }
                  },
                  "clientSell": {
                    "type": "object",
                    "description": "Объект c курсом и объемом продажи",
                    "required": [
                      "price",
                      "amount",
                      "currency"
                    ],
                    "properties": {
                      "price": {
                        "type": "number",
                        "description": "Обменный курс продажи",
                        "example": 92.5386
                      },
                      "amount": {
                        "type": "number",
                        "description": "Объем продажи",
                        "example": 10000
                      },
                      "currency": {
                        "type": "string",
                        "description": "Валюта объема продажа",
                        "example": "USD"
                      }
                    }
                  },
                  "priceDecimalPlaces": {
                    "type": "integer",
                    "description": "Количество знаков после запятой для курсов валюты",
                    "example": 4
                  },
                  "tradeDate": {
                    "type": "string",
                    "description": "Дата совершения операции по серверу",
                    "example": "2024-05-16"
                  },
                  "valueDate": {
                    "type": "string",
                    "description": "Дата расчета по сделке",
                    "example": "2024-05-19"
                  },
                  "ttl": {
                    "type": "integer",
                    "description": "Время жизни обменных курсов в миллисекундах",
                    "example": 10000
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса для трейсинга",
                "example": "58286c2526a677a6"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Плохой запрос",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание ошибки"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          },
          "examples": {
            "Некорректный запрос": {
              "summary": "Некорректный запрос",
              "value": {
                "error": {
                  "code": "app.invalid.request",
                  "message": "Bad Request"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Недоступный инструмент": {
              "summary": "Недоступный инструмент",
              "value": {
                "error": {
                  "code": "unavailable.instrument"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Слишком маленькая сумма сделки": {
              "summary": "Слишком маленькая сумма сделки",
              "value": {
                "error": {
                  "code": "rfq.base.amount.too.small",
                  "message": "",
                  "data": [
                    {
                      "field": "baseAmount",
                      "value": 1
                    }
                  ]
                }
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "422": {
      "description": "Бизнес ошибки",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          },
          "examples": {
            "Запрос курсов выключен": {
              "summary": "Запрос курсов выключен",
              "value": {
                "error": {
                  "code": "rfq.disabled",
                  "message": null
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрос был произведен вне часов торговли": {
              "summary": "Запрос был произведен вне часов торговли",
              "value": {
                "error": {
                  "code": "rfq.market.data.invalid.trading.time.outside.trading.hours",
                  "message": null
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрос был произведен в праздник или нерабочий день": {
              "summary": "Запрос был произведен в праздник или нерабочий день",
              "value": {
                "error": {
                  "code": "rfq.market.data.invalid.trading.time.holiday",
                  "message": null
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрошенная сумма превышает допустимый порог": {
              "summary": "Запрошенная сумма превышает допустимый порог",
              "value": {
                "error": {
                  "code": "rfq.quote.exceeds.limits",
                  "message": null
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Нет ликвидности для предоставления цены": {
              "summary": "Нет ликвидности для предоставления цены",
              "value": {
                "error": {
                  "code": "rfq.market.data.not.available",
                  "message": null
                },
                "requestId": "c396fda4d36c4f12"
              }
            }
          }
        }
      }
    },
    "424": {
      "description": "Некорректный подписант",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          },
          "examples": {
            "Некорректный подписант": {
              "summary": "Некорректный подписант",
              "value": {
                "error": {
                  "code": "operator.signer.not.found",
                  "message": null
                },
                "requestId": "c396fda4d36c4f12"
              }
            }
          }
        }
      }
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/trades/digest — Запрос дайджеста для спотовых сделок

Чтоб запросить дайджест, введите обязательные параметры и получите в ответе: - дайджест - идентификатор будущего ордера

{
  "tags": [
    "Spot"
  ],
  "summary": "Запрос дайджеста для спотовых сделок",
  "operationId": "tradesDigest",
  "description": "Чтоб запросить дайджест, введите обязательные параметры и получите в ответе: \n  - дайджест\n  - идентификатор будущего ордера",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Запросить дайджест по ранее полученному курсу валюты",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "rfqId",
            "side",
            "publicKeyCertificate"
          ],
          "type": "object",
          "properties": {
            "rfqId": {
              "type": "string",
              "description": "Идентификатор запроса цены",
              "example": "90b611d0407f11ef9cf4d329b5dcf6c2"
            },
            "side": {
              "type": "string",
              "description": "Сторона сделки (BUY/SELL)",
              "example": "BUY"
            },
            "publicKeyCertificate": {
              "type": "string",
              "description": "Сертификат публичного ключа из токена CryptoPro, зашифрованный в BASE64",
              "example": "cadf8371-c7b9-4407-bf94-2e8ae685a97"
            }
          }
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "Обменный курс по запрошенным параметрам",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Объект с результатом исполнения запроса",
                "required": [
                  "digest",
                  "preorderId"
                ],
                "properties": {
                  "digest": {
                    "type": "string",
                    "description": "Документ c условиями сделки для подписания с помощью КриптоПро сертификата",
                    "example": "eyJidXlBY2NvdW50Ijp7Im51bWJlciI6IjQwNzAyMTU2NDAwMDAyMzAxMDM0IiwiY3VycmVuY3kiOiJDTkgifSwiYnV5QW1vdW50IjoiODgyLjQzIiwic2VsbEFjY291bnQiOnsibnVtYmVyIjoiNDA3MDI4MTAxMDAwMDEzMDEwMzQiLCJjdXJyZW5jeSI6IlJVQiJ9LCJzZWxsQW1vdW50IjoiMTAwMDAuMDAiLCJjbGllbnRTaWRlIjoiU0VMTCIsInByaWNlIjoiMTEuMzMyMyIsImN1cnJlbmN5UGFpciI6IkNOSC9SVUIiLCJ0ZW5vciI6IlRPRCIsInZhbHVlRGF0ZSI6MTcyMDc0MjQwMC4wMDAwMDAwMDAsInRyYWRlRGF0ZSI6MTcyMDgxNDYwNy40OTMwMDAwMDAsInRyYWRlTW9kZSI6IkJBTEFOQ0UiLCJjbGllbnQiOnsiaWQiOiIzMDEwMzQiLCJuYW1lIjoi0JDQstC40LvQtdC60YEg0J7QntCeIn0sInRyYWRlciI6eyJpZCI6IjM3OTU2MjEiLCJuYW1lIjoiVW5rbm93biBVbmtub3duIn19"
                  },
                  "preorderId": {
                    "type": "string",
                    "description": "Идентификатор будущего ордера",
                    "example": 2101723
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса для трейсинга",
                "example": "58286c2526a677a6"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Плохой запрос",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки",
                    "example": "app.invalid.request"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание ошибки",
                    "example": "Bad Request"
                  },
                  "data": {
                    "type": "array",
                    "description": "Дополнительные даннные об ошибке",
                    "items": {
                      "type": "object",
                      "properties": {
                        "field": {
                          "type": "string",
                          "description": "Параметр"
                        },
                        "value": {
                          "type": "string",
                          "description": "Значение пармаметра"
                        },
                        "status": {
                          "type": "string",
                          "description": "Статус авторизации счетов"
                        },
                        "fromAccount": {
                          "type": "object",
                          "description": "Объект с параметрами счета списания",
                          "properties": {
                            "number": {
                              "type": "string",
                              "description": "Счет списания"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Валюта счета списания"
                            }
                          }
                        },
                        "toAccount": {
                          "type": "object",
                          "description": "Объект с параметрами счета зачисления",
                          "properties": {
                            "number": {
                              "type": "string",
                              "description": "Счет зачисления"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Валюта счета зачисления"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "c396fda4d36c4f12"
              }
            }
          },
          "examples": {
            "Невалидный запрос": {
              "summary": "Невалидный запрос",
              "value": {
                "error": {
                  "code": "app.invalid.request",
                  "message": "Bad Request"
                }
              }
            },
            "Невалидный идентификатор курса валюты": {
              "summary": "Невалидный идентификатор курса валюты",
              "value": {
                "error": {
                  "code": "preorder.bad.rfq.id",
                  "message": "Unable to find RFQ '9b6cfe8bacc911efb26f47dc2d9006e8' for client 'BAADMP'",
                  "data": [
                    {
                      "field": "client.id",
                      "value": "301034"
                    },
                    {
                      "field": "rfqId",
                      "value": "9b6cfe8bacc911efb26f47dc2d9006e8"
                    },
                    {
                      "field": "signer.id",
                      "value": "1174513"
                    }
                  ]
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Ошибка авторизации счетов": {
              "summary": "Ошибка авторизации счетов",
              "value": {
                "error": {
                  "code": "order.execution.not.authorized",
                  "message": "Unauthorized preorder",
                  "data": {
                    "status": "FROM_ACCOUNT_NOT_ENOUGH_AUTHORITIES",
                    "fromAccount": {
                      "number": "EXTERNAL_ACCOUNT_RUB",
                      "currency": "RUB"
                    },
                    "toAccount": {
                      "number": "EXTERNAL_ACCOUNT_USD",
                      "currency": "USD"
                    }
                  }
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Истек срок жизни курса валюты": {
              "summary": "Истек срок жизни курса валюты",
              "value": {
                "error": {
                  "code": "order.execution.request.rejected.stale",
                  "message": "Order execution request '0000003413105' rejected with code [FXO_STALE_PREORDER:'Preorder '0000003413105' created by trader '1085222' rejected with status 'FXO_STALE_PREORDER'!']"
                },
                "requestId": "c396fda4d36c4f12"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "422": {
      "description": "Бизнес ошибки",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          },
          "examples": {
            "Превышение допустимого объема лимитов": {
              "summary": "Превышение допустимого объема лимитов",
              "value": {
                "error": {
                  "code": "app.trade.limits.exceeded"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Превышено допустимое количество сделок в определенный период": {
              "summary": "Превышено допустимое количество сделок в определенный период",
              "value": {
                "error": {
                  "code": "order.execution.cool-down.period.violated",
                  "message": "Trading was cooled down for client '000000' and currency pair 'EUR/RUB' until 2024-11-25T13:14:20.777 UTC",
                  "data": {
                    "clientId": 0,
                    "currencies": "EUR/RUB",
                    "coolDownUntil": "2024-11-25T13:14:20.777"
                  }
                },
                "requestId": "c396fda4d36c4f12"
              }
            }
          }
        }
      }
    },
    "424": {
      "description": "Некорректный подписант",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          },
          "examples": {
            "Некорректный подписант": {
              "summary": "Некорректный подписант",
              "value": {
                "error": {
                  "code": "operator.signer.not.found",
                  "message": "Operator signer data not found for client '000000' and user 'ade09b26-6cf5-482a-adbb-d5b1369b986d'"
                },
                "requestId": "c396fda4d36c4f12"
              }
            }
          }
        }
      }
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/trades/create — Запрос на создание ордера для спотовой сделки

Чтобы создать ордер, подпишите полученный дайджест с помощью сертификата КриптоПро и отправьте его в запросе вместе с preorderId и получите в ответе: - результат исполнения ордера - идентификатор исполненного ордера

{
  "tags": [
    "Spot"
  ],
  "summary": "Запрос на создание ордера для спотовой сделки",
  "operationId": "tradesCreate",
  "description": "Чтобы создать ордер, подпишите полученный дайджест с помощью сертификата КриптоПро и отправьте его в запросе вместе с preorderId и получите в ответе: \n  - результат исполнения ордера\n  - идентификатор исполненного ордера",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Исполнить ордер на обмен валюты по подписанному дайджесту",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "preorderId",
            "signature"
          ],
          "type": "object",
          "properties": {
            "preorderId": {
              "type": "string",
              "description": "Идентификатор будущего ордера",
              "example": 2101723
            },
            "signature": {
              "type": "string",
              "description": "Подпись полученного дайджеста сертификатом КриптоПро в формает BASE64",
              "example": "MIIKUwYJKoZIhvcNAQcCoIIKRDCCCkACAQExDjAMBggqhQMHAQECAgUAMAsGCSqGSIb3=="
            }
          }
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "Результат исполнения ордера на обмена валюты",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Объект с результатом исполнения запроса",
                "required": [
                  "orderId",
                  "buyAmount",
                  "buyCurrency",
                  "sellAmount",
                  "sellCurrency",
                  "clientSide",
                  "price",
                  "priceDecimalPlaces",
                  "currencyPair",
                  "tenor",
                  "tradeDate",
                  "valueDate"
                ],
                "properties": {
                  "orderId": {
                    "type": "string",
                    "description": "Идентификатор ордера",
                    "example": 2101723
                  },
                  "buyAmount": {
                    "type": "string",
                    "description": "Сумма покупки",
                    "example": 10000.03
                  },
                  "buyCurrency": {
                    "type": "string",
                    "description": "Валюта покупки",
                    "example": "USD"
                  },
                  "sellAmount": {
                    "type": "string",
                    "description": "Сумма продажи",
                    "example": 9000000.11
                  },
                  "sellCurrency": {
                    "type": "string",
                    "description": "Валюта продажи",
                    "example": "RUB"
                  },
                  "clientSide": {
                    "type": "string",
                    "description": "Сторона сделки",
                    "example": "BUY"
                  },
                  "price": {
                    "type": "string",
                    "description": "Курс сделки",
                    "example": 78.1326
                  },
                  "priceDecimalPlaces": {
                    "type": "integer",
                    "description": "Количество цифр в курсе после запятой",
                    "example": 4
                  },
                  "currencyPair": {
                    "type": "string",
                    "description": "Валютная пара",
                    "example": "USD/RUB"
                  },
                  "tenor": {
                    "type": "string",
                    "description": "Значение определяющее дату расчета по сделке, возможные значения TOD - сегодня, TOM - завтра, SPOT - после завтра",
                    "example": "TOD"
                  },
                  "tradeDate": {
                    "type": "string",
                    "description": "Дата сделки",
                    "example": "2024-05-15"
                  },
                  "valueDate": {
                    "type": "string",
                    "description": "Дата расчета",
                    "example": "2024-05-17"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса для трейсинга",
                "example": "58286c2526a677a6"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Плохой запрос",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки",
                    "example": "app.invalid.request"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание ошибки",
                    "example": "Bad Request"
                  },
                  "data": {
                    "type": "array",
                    "description": "Дополнительные даннные об ошибке",
                    "items": {
                      "type": "object",
                      "properties": {
                        "field": {
                          "type": "string",
                          "description": "Параметр"
                        },
                        "value": {
                          "type": "string",
                          "description": "Значение пармаметра"
                        },
                        "status": {
                          "type": "string",
                          "description": "Статус авторизации счетов"
                        },
                        "fromAccount": {
                          "type": "object",
                          "description": "Объект с параметрами счета списания",
                          "properties": {
                            "number": {
                              "type": "string",
                              "description": "Счет списания"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Валюта счета списания"
                            }
                          }
                        },
                        "toAccount": {
                          "type": "object",
                          "description": "Объект с параметрами счета зачисления",
                          "properties": {
                            "number": {
                              "type": "string",
                              "description": "Счет зачисления"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Валюта счета зачисления"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "c396fda4d36c4f12"
              }
            }
          },
          "examples": {
            "Невалидный запрос": {
              "summary": "Невалидный запрос",
              "value": {
                "error": {
                  "code": "app.invalid.request",
                  "message": "Invalid request",
                  "data": [
                    {
                      "field": "tradeMode"
                    }
                  ]
                },
                "requestId": "0165ffafab23aa69"
              }
            },
            "Невалидный идентификатор преордера": {
              "summary": "Невалидный идентификатор преордера",
              "value": {
                "error": {
                  "code": "order.execution.bad.preorderId",
                  "message": "Unable to find Preorder '0000010010733' for client '301034'",
                  "data": [
                    {
                      "field": "client.id",
                      "value": "301034"
                    },
                    {
                      "field": "preorderId",
                      "value": "0000010010733"
                    }
                  ]
                },
                "requestId": "0165ffafab23aa69"
              }
            },
            "Истек срок жизни курса валюты": {
              "summary": "Истек срок жизни курса валюты",
              "value": {
                "error": {
                  "code": "order.execution.request.rejected.stale",
                  "message": "Order execution request '0000003413105' rejected with code [FXO_STALE_PREORDER:'Preorder '0000003413105' created by trader '1085222' rejected with status 'FXO_STALE_PREORDER'!']"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Выключен режим заключения сделок под предпоставочный лимит": {
              "summary": "Выключен режим заключения сделок под предпоставочный лимит",
              "value": {
                "error": {
                  "code": "app.dvp.disabled",
                  "message": "DVP disabled"
                }
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "422": {
      "description": "Бизнес ошибки",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание кода ошибки"
                  },
                  "data": {
                    "type": "object",
                    "description": "Дополнительная информация об ошибке",
                    "properties": {
                      "tradingHours": {
                        "type": "object",
                        "description": "Информация о часах торговли"
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          },
          "examples": {
            "Выключена возможность заключать сделки": {
              "summary": "Выключена возможность заключать сделки",
              "value": {
                "error": {
                  "code": "order.execution.trading.disabled",
                  "message": "Trading disable for client '000000' and instrument 'USD/RUB_SPOT'"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Превышение допустимого объема лимитов": {
              "summary": "Превышение допустимого объема лимитов",
              "value": {
                "error": {
                  "code": "app.trade.limits.exceeded"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрещено покупкать валюту": {
              "summary": "Запрещено покупкать валюту",
              "value": {
                "error": {
                  "code": "app.nonresident.buy.operation.disabled",
                  "message": "Base currency BUY operation disabled!"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Превышен порог на объем сделки": {
              "summary": "Превышен порог на объем сделки",
              "value": {
                "error": {
                  "code": "order.execution.request.rejected.threshold.exceeded",
                  "data": {
                    "threshold": 3000000,
                    "cooldown": 0,
                    "amount": 4089254.82,
                    "currency": "USD"
                  }
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Клиент не найден": {
              "summary": "Клиент не найден",
              "value": {
                "error": {
                  "code": "order.execution.client.not.found"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Наступил праздник по рублю": {
              "summary": "Наступил праздник по рублю",
              "value": {
                "error": {
                  "code": "order.execution.invalid.trading.time.holiday"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Закончились часы торговли по выбранному инструменту": {
              "summary": "Закончились часы торговли по выбранному инструменту",
              "value": {
                "error": {
                  "code": "order.execution.invalid.trading.time.outside.trading.hours",
                  "message": "Try to execute order outside trading hours for client '301034' and instrument 'USD/BYN_TOD'\"",
                  "data": {
                    "tradingHours": {
                      "ranges": [
                        {
                          "from": "23:00",
                          "to": "11:00"
                        }
                      ]
                    }
                  }
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Превышено допустимое количество сделок в определенный период": {
              "summary": "Превышено допустимое количество сделок в определенный период",
              "value": {
                "error": {
                  "code": "order.execution.cool-down.period.violated",
                  "message": "Trading was cooled down for client '000000' and currency pair 'EUR/RUB' until 2024-11-25T13:14:20.777 UTC",
                  "data": {
                    "clientId": 0,
                    "currencies": "EUR/RUB",
                    "coolDownUntil": "2024-11-25T13:14:20.777"
                  }
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Превышен порог максимального объема сделки в источнике ликвидности": {
              "summary": "Превышен порог максимального объема сделки в источнике ликвидности",
              "value": {
                "error": {
                  "code": "order.execution.request.rejected.limit.exceeded",
                  "data": {
                    "instrument": "CNH/RUB_TOM",
                    "side": "SELL",
                    "amount": 12287024.9,
                    "limit": {
                      "currency": "CNH",
                      "value": 12000000,
                      "name": "12000000_CNH"
                    }
                  }
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Выбранный инструмент больше не поддерживается": {
              "summary": "Выбранный инструмент больше не поддерживается",
              "value": {
                "error": {
                  "code": "order.execution.request.rejected.unsupported.instrument",
                  "message": "Order execution request '0000000017663' rejected with code [UNKNOWN_INSTRUMENT:'Ccy2 orders not supported RUB/USD_SPOT']"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Выбранная дата расчетов стала невалидной": {
              "summary": "Выбранная дата расчетов стала невалидной",
              "value": {
                "error": {
                  "code": "order.execution.request.rejected.invalid.value.date",
                  "message": "Order execution request '0000003394676' rejected with code [FXO_INVALID_VALUE_DATE:'Preorder '0000003394676' created by trader '776534' rejected with status 'FXO_INVALID_VALUE_DATE'!']\""
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрос на исполнение ордера отклонен в связи с высокой волатильностью": {
              "summary": "Запрос на исполнение ордера отклонен в связи с высокой волатильностью",
              "value": {
                "error": {
                  "code": "order.execution.request.rejected",
                  "message": "Order execution request '0000000020366' rejected with code [REJECTED_BY_EXCHANGE_OR_BROKER:'null']"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Некорректный сертификат КриптоПро": {
              "summary": "Некорректный сертификат КриптоПро",
              "value": {
                "error": {
                  "code": "order.execution.request.rejected.invalid.cryptopro.signature",
                  "message": "Invalid order signature",
                  "data": {
                    "remainCount": 1
                  }
                },
                "requestId": "c396fda4d36c4f12"
              }
            }
          }
        }
      }
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/securities/{product}/calendar/valuedates — Получение форвардных дат расчетов по тенору

Получение дат расчетов для форвардов по массиву инструментов с базовой валютой, котируемой валютой и тенором

{
  "tags": [
    "Forward"
  ],
  "summary": "Получение форвардных дат расчетов по тенору",
  "operationId": "getForwardValueDates",
  "description": "Получение дат расчетов для форвардов по массиву инструментов с базовой валютой, котируемой валютой и тенором",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "in": "path",
      "name": "product",
      "description": "Продукт, для которого запрашиваются даты расчетов",
      "required": true,
      "schema": {
        "type": "string",
        "example": "rfq"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Запрос дат расчетов для форвардов",
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "required": [
            "instruments"
          ],
          "properties": {
            "instruments": {
              "type": "array",
              "description": "Массив инструментов",
              "items": {
                "type": "object",
                "required": [
                  "base",
                  "quoted",
                  "tenor"
                ],
                "properties": {
                  "base": {
                    "type": "string",
                    "description": "Базовая валюта",
                    "example": "USD"
                  },
                  "quoted": {
                    "type": "string",
                    "description": "Котируемая валюта",
                    "example": "RUB"
                  },
                  "tenor": {
                    "type": "string",
                    "description": "Форвардный тенор",
                    "example": "W1",
                    "enum": [
                      "W1",
                      "W2",
                      "W3",
                      "M1",
                      "M2",
                      "M3",
                      "M4",
                      "M5",
                      "M6",
                      "M7",
                      "M8",
                      "M9",
                      "M10",
                      "M11",
                      "Y1"
                    ]
                  }
                }
              }
            }
          }
        },
        "examples": {
          "Пример запроса": {
            "summary": "Пример запроса",
            "value": {
              "instruments": [
                {
                  "base": "USD",
                  "quoted": "RUB",
                  "tenor": "W1"
                }
              ]
            }
          }
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "Даты расчетов для запрошенных форвардных теноров",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Объект с результатом исполнения запроса",
                "required": [
                  "instruments",
                  "errors"
                ],
                "properties": {
                  "instruments": {
                    "type": "array",
                    "description": "Массив инструментов с рассчитанными датами расчетов",
                    "items": {
                      "type": "object",
                      "required": [
                        "base",
                        "quoted",
                        "tenor",
                        "valueDate"
                      ],
                      "properties": {
                        "base": {
                          "type": "string",
                          "description": "Базовая валюта",
                          "example": "USD"
                        },
                        "quoted": {
                          "type": "string",
                          "description": "Котируемая валюта",
                          "example": "RUB"
                        },
                        "tenor": {
                          "type": "string",
                          "description": "Форвардный тенор",
                          "example": "W1"
                        },
                        "valueDate": {
                          "type": "string",
                          "format": "date",
                          "description": "Дата расчетов",
                          "example": "2026-05-27"
                        }
                      }
                    }
                  },
                  "errors": {
                    "type": "array",
                    "description": "Массив ошибок, если по какому-то инструменту не удалось определить дату расчетов",
                    "items": {
                      "type": "object",
                      "required": [
                        "base",
                        "quoted",
                        "tenor",
                        "message"
                      ],
                      "properties": {
                        "base": {
                          "type": "string",
                          "description": "Базовая валюта",
                          "example": "USD"
                        },
                        "quoted": {
                          "type": "string",
                          "description": "Котируемая валюта",
                          "example": "RUB"
                        },
                        "tenor": {
                          "type": "string",
                          "description": "Форвардный тенор",
                          "example": "W1"
                        },
                        "message": {
                          "type": "string",
                          "description": "Сообщение об ошибке",
                          "example": "Value date undefined"
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса для трейсинга",
                "example": "6a0e086258fb68d75a32237a1e58f441"
              }
            }
          },
          "examples": {
            "Успешный ответ": {
              "summary": "Успешный ответ",
              "value": {
                "result": {
                  "instruments": [
                    {
                      "base": "RUB",
                      "quoted": "USD",
                      "tenor": "W1",
                      "valueDate": "2026-05-27"
                    }
                  ],
                  "errors": []
                },
                "requestId": "6a0e086258fb68d75a32237a1e58f441"
              }
            },
            "Частично успешный ответ": {
              "summary": "Частично успешный ответ",
              "value": {
                "result": {
                  "instruments": [
                    {
                      "base": "RUB",
                      "quoted": "USD",
                      "tenor": "W1",
                      "valueDate": "2026-05-27"
                    }
                  ],
                  "errors": [
                    {
                      "base": "RUB",
                      "quoted": "USD",
                      "tenor": "M1",
                      "message": "Value date undefined"
                    }
                  ]
                },
                "requestId": "6a0e086258fb68d75a32237a1e58f441"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Некорректный запрос",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки",
                    "example": "app.invalid.request"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание ошибки",
                    "example": "Bad Request"
                  },
                  "data": {
                    "type": "object",
                    "description": "Дополнительная информация об ошибке"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "6a0e086258fb68d75a32237a1e58f441"
              }
            }
          },
          "examples": {
            "Некорректный запрос": {
              "summary": "Некорректный запрос",
              "value": {
                "error": {
                  "code": "app.invalid.request",
                  "message": "Bad Request"
                },
                "requestId": "6a0e086258fb68d75a32237a1e58f441"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/securities/{product}/ndf/calendar/fixing-references — Получение доступного способа определения курса спот

Получение источника данных, по которому в дату оценки банк определит курс фиксинга, с которым сравнивается курс форварда для расчета курсовой разницы

{
  "tags": [
    "Forward"
  ],
  "summary": "Получение доступного способа определения курса спот",
  "operationId": "getNdfFixingReferences",
  "description": "Получение источника данных, по которому в дату оценки банк определит курс фиксинга, с которым сравнивается курс форварда для расчета курсовой разницы",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "in": "path",
      "name": "product",
      "description": "Продукт, для которого запрашиваются доступные способы определения курса спот",
      "required": true,
      "schema": {
        "type": "string",
        "example": "rfq"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Запрос доступных способов определения курса спот",
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "required": [
            "base",
            "quoted",
            "valueDate"
          ],
          "properties": {
            "base": {
              "type": "string",
              "description": "Базовая валюта",
              "example": "USD"
            },
            "quoted": {
              "type": "string",
              "description": "Котируемая валюта",
              "example": "RUB"
            },
            "valueDate": {
              "type": "string",
              "format": "date",
              "description": "Дата расчетов",
              "example": "2026-05-28"
            }
          }
        },
        "examples": {
          "Пример запроса": {
            "summary": "Пример запроса",
            "value": {
              "base": "USD",
              "quoted": "RUB",
              "valueDate": "2026-05-28"
            }
          }
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "Доступные способы определения курса спот",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Объект с результатом исполнения запроса",
                "required": [
                  "fixingReferences"
                ],
                "properties": {
                  "fixingReferences": {
                    "type": "array",
                    "description": "Массив доступных источников данных для определения курса фиксинга",
                    "items": {
                      "type": "object",
                      "required": [
                        "type",
                        "fixingDate"
                      ],
                      "properties": {
                        "type": {
                          "type": "string",
                          "description": "Источник данных для определения курса фиксинга",
                          "example": "RAIF_FIXING"
                        },
                        "fixingDate": {
                          "type": "string",
                          "format": "date",
                          "description": "Дата оценки",
                          "example": "2026-05-27"
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса для трейсинга",
                "example": "6a0ee4780b5058561de931f2aad90b2d"
              }
            }
          },
          "examples": {
            "Успешный ответ": {
              "summary": "Успешный ответ",
              "value": {
                "result": {
                  "fixingReferences": [
                    {
                      "type": "RAIF_FIXING",
                      "fixingDate": "2026-05-27"
                    }
                  ]
                },
                "requestId": "6a0ee4780b5058561de931f2aad90b2d"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Некорректный запрос",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки",
                    "example": "app.invalid.request"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание ошибки",
                    "example": "Bad Request"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "6a0ee4780b5058561de931f2aad90b2d"
              }
            }
          },
          "examples": {
            "Некорректный запрос": {
              "summary": "Некорректный запрос",
              "value": {
                "error": {
                  "code": "app.invalid.request",
                  "message": "Bad Request"
                },
                "requestId": "6a0ee4780b5058561de931f2aad90b2d"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

GET /v1/rfq/forward — Получение обменного курса для поставочного/беспоставочного форварда

Чтоб запросить обменный курс валют, введите обязательные параметры и получите в ответе: - идентификатор квоты - курс на указанную сторону

{
  "tags": [
    "Forward"
  ],
  "summary": "Получение обменного курса для поставочного/беспоставочного форварда",
  "operationId": "getForwardRfq",
  "description": "Чтоб запросить обменный курс валют, введите обязательные параметры и получите в ответе:\n  - идентификатор квоты\n  - курс на указанную сторону",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "in": "query",
      "name": "baseCurrency",
      "description": "Базовая валюта",
      "required": true,
      "schema": {
        "type": "string",
        "example": "USD"
      }
    },
    {
      "in": "query",
      "name": "quotedCurrency",
      "description": "Котируемая валюта",
      "required": true,
      "schema": {
        "type": "string",
        "example": "RUB"
      }
    },
    {
      "in": "query",
      "name": "amount",
      "description": "Объем, на который запрашивается цена",
      "required": true,
      "schema": {
        "type": "string",
        "example": 5000
      }
    },
    {
      "in": "query",
      "name": "side",
      "description": "Сторона сделки",
      "required": true,
      "schema": {
        "type": "string",
        "enum": [
          "BUY",
          "SELL"
        ],
        "example": "SELL"
      }
    },
    {
      "in": "query",
      "name": "endorsement",
      "description": "Способ подтверждения сделки",
      "required": true,
      "schema": {
        "type": "string",
        "example": "CRYPTO_PRO"
      }
    },
    {
      "in": "query",
      "name": "valueDate",
      "description": "Дата расчетов по форвардной сделке",
      "required": true,
      "schema": {
        "type": "string",
        "format": "date",
        "example": "2026-05-28"
      }
    },
    {
      "in": "query",
      "name": "settlMethod",
      "description": "Тип расчетов по сделке",
      "required": true,
      "schema": {
        "type": "string",
        "enum": [
          "DELIVERABLE",
          "NON_DELIVERABLE"
        ]
      },
      "examples": {
        "Поставочный форвард": {
          "summary": "Поставочный форвард",
          "value": "DELIVERABLE"
        },
        "Беспоставочный форвард": {
          "summary": "Беспоставочный форвард",
          "value": "NON_DELIVERABLE"
        }
      }
    },
    {
      "in": "query",
      "name": "fixingType",
      "description": "Способ определения курса спот для беспоставочного форварда. Его можно определить по ответу соответствующего API",
      "required": false,
      "schema": {
        "type": "string",
        "enum": [
          "RAIF_FIXING",
          "CBRF_FIXING"
        ]
      },
      "examples": {
        "Поставочный форвард": {
          "summary": "Поставочный форвард",
          "value": "Не указывать"
        },
        "Беспоставочный форвард": {
          "summary": "Беспоставочный форвард",
          "value": "RAIF_FIXING"
        }
      }
    },
    {
      "in": "query",
      "name": "initialMarginCurrency",
      "description": "Валюта первоначальной маржевой суммы. Указывается, если нужен курс для форварда под обеспечение",
      "required": false,
      "schema": {
        "type": "string",
        "enum": [
          "RUB"
        ]
      },
      "examples": {
        "Поставочный форвард": {
          "summary": "Форвард не под обеспечение",
          "value": "Не указывать"
        },
        "Беспоставочный форвард": {
          "summary": "Форвард под обеспечение",
          "value": "RUB"
        }
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "responses": {
    "200": {
      "description": "Обменный курс для поставочного/беспоставочного форварда",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Объект с результатом исполнения запроса",
                "required": [
                  "rfqId",
                  "buyAmount",
                  "buyCurrency",
                  "sellAmount",
                  "sellCurrency",
                  "clientSide",
                  "price",
                  "priceDecimalPlaces",
                  "initialMargin",
                  "currencyPair",
                  "tenor",
                  "valueDate",
                  "tradeDate",
                  "ttl",
                  "enableTrading"
                ],
                "properties": {
                  "rfqId": {
                    "type": "string",
                    "description": "Идентификатор запроса цены",
                    "example": "dc037808550811f18473e3d33f213b47"
                  },
                  "buyAmount": {
                    "type": "string",
                    "description": "Сумма покупки",
                    "example": "468560"
                  },
                  "buyCurrency": {
                    "type": "string",
                    "description": "Валюта покупки",
                    "example": "RUB"
                  },
                  "sellAmount": {
                    "type": "string",
                    "description": "Сумма продажи",
                    "example": "5000"
                  },
                  "sellCurrency": {
                    "type": "string",
                    "description": "Валюта продажи",
                    "example": "USD"
                  },
                  "clientSide": {
                    "type": "string",
                    "description": "Сторона сделки",
                    "example": "SELL"
                  },
                  "price": {
                    "type": "string",
                    "description": "Курс сделки",
                    "example": "93.712"
                  },
                  "priceDecimalPlaces": {
                    "type": "integer",
                    "description": "Количество знаков после запятой для курса",
                    "example": 3
                  },
                  "initialMargin": {
                    "type": "object",
                    "description": "Первоначальная маржевая сумма по форвардной сделке",
                    "required": [
                      "amount",
                      "percent",
                      "currency"
                    ],
                    "properties": {
                      "amount": {
                        "type": "string",
                        "description": "Сумма первоначальной маржевой суммы",
                        "example": "1000.00"
                      },
                      "percent": {
                        "type": "string",
                        "description": "Процент первоначальной маржевой суммы",
                        "example": "10.00"
                      },
                      "currency": {
                        "type": "string",
                        "description": "Валюта первоначальной маржевой суммы",
                        "example": "RUB"
                      }
                    }
                  },
                  "currencyPair": {
                    "type": "string",
                    "description": "Валютная пара",
                    "example": "USD/RUB"
                  },
                  "tenor": {
                    "type": "string",
                    "description": "Тенор сделки",
                    "example": "BRD"
                  },
                  "valueDate": {
                    "type": "string",
                    "description": "Дата расчетов по сделке",
                    "example": "2026-05-28T00:00:00Z"
                  },
                  "tradeDate": {
                    "type": "string",
                    "description": "Дата совершения операции",
                    "example": "2026-05-21"
                  },
                  "ttl": {
                    "type": "integer",
                    "description": "Время жизни обменного курса в миллисекундах",
                    "example": 10000
                  },
                  "enableTrading": {
                    "type": "boolean",
                    "description": "Признак доступности заключения сделки по полученной котировке",
                    "example": true
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса для трейсинга",
                "example": "6a0eed7ca78a443595f7be90b8acac88"
              }
            }
          },
          "examples": {
            "Успешный ответ": {
              "summary": "Успешный ответ",
              "value": {
                "result": {
                  "rfqId": "dc037808550811f18473e3d33f213b47",
                  "buyAmount": "468560",
                  "buyCurrency": "RUB",
                  "sellAmount": "5000",
                  "sellCurrency": "USD",
                  "clientSide": "SELL",
                  "price": "93.712",
                  "priceDecimalPlaces": 3,
                  "initialMargin": {
                    "amount": "1000.00",
                    "percent": "10.00",
                    "currency": "RUB"
                  },
                  "currencyPair": "USD/RUB",
                  "tenor": "BRD",
                  "valueDate": "2026-05-28T00:00:00Z",
                  "tradeDate": "2026-05-21",
                  "ttl": 10000,
                  "enableTrading": true
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Некорректный запрос",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание ошибки"
                  },
                  "data": {
                    "type": "array",
                    "description": "Дополнительные данные об ошибке",
                    "items": {
                      "type": "object",
                      "properties": {
                        "field": {
                          "type": "string",
                          "description": "Параметр"
                        },
                        "value": {
                          "type": "string",
                          "description": "Значение параметра"
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "6a0eed7ca78a443595f7be90b8acac88"
              }
            }
          },
          "examples": {
            "Некорректный запрос": {
              "summary": "Некорректный запрос",
              "value": {
                "error": {
                  "code": "app.invalid.request",
                  "message": "Bad Request"
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            },
            "Недоступный инструмент": {
              "summary": "Недоступный инструмент",
              "value": {
                "error": {
                  "code": "unavailable.instrument"
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "422": {
      "description": "Бизнес ошибки",
      "content": {
        "application/json": {
          "schema": {
            "required": [
              "error",
              "requestId"
            ],
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание ошибки"
                  },
                  "data": {
                    "type": "object",
                    "description": "Дополнительная информация об ошибке"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "6a0eed7ca78a443595f7be90b8acac88"
              }
            }
          },
          "examples": {
            "Запрос курсов выключен": {
              "summary": "Запрос курсов выключен",
              "value": {
                "error": {
                  "code": "rfq.disabled",
                  "message": null
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            },
            "Запрос был произведен вне часов торговли": {
              "summary": "Запрос был произведен вне часов торговли",
              "value": {
                "error": {
                  "code": "rfq.market.data.invalid.trading.time.outside.trading.hours",
                  "message": null
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            },
            "Запрос был произведен в праздник или нерабочий день": {
              "summary": "Запрос был произведен в праздник или нерабочий день",
              "value": {
                "error": {
                  "code": "rfq.market.data.invalid.trading.time.holiday",
                  "message": null
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            },
            "Запрошенная сумма превышает допустимый порог": {
              "summary": "Запрошенная сумма превышает допустимый порог",
              "value": {
                "error": {
                  "code": "rfq.quote.exceeds.limits",
                  "message": null
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            },
            "Нет ликвидности для предоставления цены": {
              "summary": "Нет ликвидности для предоставления цены",
              "value": {
                "error": {
                  "code": "rfq.market.data.not.available",
                  "message": null
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            },
            "Инструмент выключен": {
              "summary": "Инструмент выключен",
              "value": {
                "error": {
                  "code": "rfq.market.data.disabled",
                  "message": null
                },
                "requestId": "6a0eed7ca78a443595f7be90b8acac88"
              }
            }
          }
        }
      }
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/trades/blotter — Запрос для получения истории спотовых и форвардных сделок

Чтобы запросить историю сделок заполните параметры фильтрации и сортировки и получите в ответе историю ранее заключенных сделок с их параметрами

{
  "tags": [
    "Deals history"
  ],
  "summary": "Запрос для получения истории спотовых и форвардных сделок",
  "operationId": "tradesBlotter",
  "description": "Чтобы запросить историю сделок заполните параметры фильтрации и сортировки и получите в ответе историю ранее заключенных сделок с их параметрами",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Запросить историю сделок",
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "offset": {
              "type": "integer",
              "description": "Значение смещения строк со сделками из истории сделок"
            },
            "limit": {
              "type": "integer",
              "description": "Ограничение на количество строк со сделками из истории сделок"
            },
            "filter": {
              "type": "array",
              "description": "Объект с параметрами фильтрации",
              "items": {
                "type": "object",
                "properties": {
                  "property": {
                    "type": "string",
                    "description": "Параметры фильтрации"
                  },
                  "clause": {
                    "type": "array",
                    "description": "Массив со значениями параметров, по которым необходимо производить фильтрацию",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              }
            },
            "sort": {
              "type": "array",
              "description": "Объект с параметрами фильтрации",
              "items": {
                "type": "object",
                "properties": {
                  "direction": {
                    "type": "string",
                    "description": "Направление сортировки, с возможными значениями \"ASC\" или \"DESC\""
                  },
                  "property": {
                    "type": "string",
                    "description": "Параметр по которому необходимо сортировать"
                  }
                }
              }
            }
          }
        },
        "examples": {
          "Запрос с фильтраций и сортировкой": {
            "summary": "Запрос с фильтраций и сортировкой",
            "value": {
              "offset": 0,
              "limit": 60,
              "sort": [
                {
                  "property": "tradeDate",
                  "direction": "DESC"
                }
              ],
              "filter": [
                {
                  "property": "currencyPair",
                  "clause": [
                    "USD/RUB",
                    "AUD/RUB",
                    "USD/CNH"
                  ]
                }
              ]
            }
          },
          "Запрос с фильтрацией": {
            "summary": "Запрос с фильтрацией",
            "value": {
              "offset": 0,
              "limit": 60,
              "filter": [
                {
                  "property": "currencyPair",
                  "clause": [
                    "USD/RUB",
                    "AUD/RUB",
                    "USD/CNH"
                  ]
                }
              ]
            }
          },
          "Запрос с сортировкой": {
            "summary": "Запрос с сортировкой",
            "value": {
              "offset": 0,
              "limit": 60,
              "sort": [
                {
                  "property": "tradeDate",
                  "direction": "DESC"
                }
              ]
            }
          }
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "История сделок",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Объект с результатом исполнения запроса",
                "required": [
                  "hasMore",
                  "list"
                ],
                "properties": {
                  "hasMore": {
                    "type": "boolean",
                    "description": "Признак наличия записей удовлетворяющие параметры запросы"
                  },
                  "list": {
                    "type": "array",
                    "description": "Массив истории сделок",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Идентификатор записи в истории сделок",
                          "example": 1765
                        },
                        "orderId": {
                          "type": "string",
                          "description": "Идентификатор сделки",
                          "example": "0000000004480"
                        },
                        "buyAccount": {
                          "type": "object",
                          "description": "Объект с информацией о счете покупки",
                          "required": [
                            "currency",
                            "externalAccount",
                            "number",
                            "trustManagementName"
                          ],
                          "properties": {
                            "currency": {
                              "type": "string",
                              "description": "Валюта счета покупки",
                              "example": "USD"
                            },
                            "externalAccount": {
                              "type": "boolean",
                              "description": "Признак внешнего счета",
                              "example": true
                            },
                            "number": {
                              "type": "string",
                              "description": "Номер счета покупки",
                              "example": "EXTERNAL_ACCOUNT_USD"
                            },
                            "trustManagementName": {
                              "type": "string",
                              "description": "Наименование управляющей компании",
                              "example": null
                            }
                          }
                        },
                        "buyAmount": {
                          "type": "string",
                          "description": "Объем покупки",
                          "example": 84596.4
                        },
                        "sellAccount": {
                          "type": "object",
                          "description": "Объект с информацией о счете продажи",
                          "required": [
                            "currency",
                            "externalAccount",
                            "number",
                            "trustManagementName"
                          ],
                          "properties": {
                            "currency": {
                              "type": "string",
                              "description": "Валюта счета продажи",
                              "example": "RUB"
                            },
                            "externalAccount": {
                              "type": "boolean",
                              "description": "Признак внешнего счета",
                              "example": true
                            },
                            "number": {
                              "type": "string",
                              "description": "Номер счета продажи",
                              "example": "EXTERNAL_ACCOUNT_RUB"
                            },
                            "trustManagementName": {
                              "type": "string",
                              "description": "Наименование управляющей компании",
                              "example": null
                            }
                          }
                        },
                        "sellAmount": {
                          "type": "string",
                          "description": "Объем продажи",
                          "example": 1000
                        },
                        "price": {
                          "type": "string",
                          "description": "Курс сделки",
                          "example": 84.5964
                        },
                        "priceDecimalPlaces": {
                          "type": "integer",
                          "description": "Количество цифр в курсе после запятой",
                          "example": 4
                        },
                        "currencyPair": {
                          "type": "string",
                          "description": "Валютная пара",
                          "example": "USD/RUB"
                        },
                        "tenor": {
                          "type": "string",
                          "description": "Значение определяющее дату расчета по сделке, возможные значения TOD - сегодня, TOM - завтра, SPOT - после завтра",
                          "example": "TOD"
                        },
                        "tradeMode": {
                          "type": "string",
                          "description": "Режим кредитования сделки",
                          "example": "DVP"
                        },
                        "clientSide": {
                          "type": "string",
                          "description": "Сторона сделки",
                          "example": "SELL"
                        },
                        "traders": {
                          "type": "object",
                          "description": "Объект с информацией о подписантах сделки",
                          "required": [
                            "id",
                            "name"
                          ],
                          "properties": {
                            "id": {
                              "type": "string",
                              "description": "Идентификтор подписанта",
                              "example": 1
                            },
                            "name": {
                              "type": "string",
                              "description": "ФИО подписанта",
                              "example": "Вячеславов Александр Михайлович"
                            }
                          }
                        },
                        "client": {
                          "type": "object",
                          "description": "Объект с информацией о клиенте",
                          "required": [
                            "id",
                            "name",
                            "clientType"
                          ],
                          "properties": {
                            "id": {
                              "type": "string",
                              "description": "Идентификтор клиента",
                              "example": 304086
                            },
                            "name": {
                              "type": "string",
                              "description": "Наименование клиента",
                              "example": "Рога и копыта"
                            },
                            "clientType": {
                              "type": "string",
                              "description": "Тип клиента",
                              "example": "REAL"
                            }
                          }
                        },
                        "valueDate": {
                          "type": "string",
                          "description": "Дата расчетов по сделке",
                          "example": "2024-05-22T00:00:00Z"
                        },
                        "tradeDate": {
                          "type": "string",
                          "description": "Дата заключения сделки",
                          "example": "2024-05-22T20:30:21Z"
                        },
                        "debitDate": {
                          "type": "string",
                          "description": "Дата списания средств по сделке",
                          "example": "2024-05-22T00:00:00Z"
                        },
                        "product": {
                          "type": "string",
                          "description": "Режим заключения сделки",
                          "example": "RFQ"
                        },
                        "useNetting": {
                          "type": "boolean",
                          "description": "Признак использования неттинга",
                          "example": false
                        },
                        "externalConfirmation": {
                          "type": "boolean",
                          "description": "Признак внешнего способа подтверждения сделки",
                          "example": false
                        },
                        "settlMethod": {
                          "type": "string",
                          "description": "Метод поставки по сделке",
                          "example": "DELIVERABLE"
                        },
                        "proposalId": {
                          "type": "string",
                          "description": "Идентификатор заявки на конверсию в режиме множесвтенной подписи"
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "e0e70833c68e3c32"
              }
            }
          },
          "examples": {
            "Успешный ответ": {
              "summary": "Успешный ответ",
              "value": {
                "result": {
                  "hasMore": true,
                  "list": [
                    {
                      "id": 1765,
                      "orderId": "0000000004480",
                      "buyAccount": {
                        "number": "EXTERNAL_ACCOUNT_RUB",
                        "currency": "RUB",
                        "trustManagementName": null,
                        "externalAccount": true
                      },
                      "buyAmount": "84596.4",
                      "sellAccount": {
                        "number": "EXTERNAL_ACCOUNT_EUR",
                        "currency": "EUR",
                        "trustManagementName": null,
                        "externalAccount": true
                      },
                      "sellAmount": 1000,
                      "price": 84.5964,
                      "priceDecimalPlaces": 4,
                      "currencyPair": "EUR/RUB",
                      "tenor": "TOD",
                      "tradeMode": "DVP",
                      "useNetting": false,
                      "clientSide": "SELL",
                      "traders": [
                        {
                          "id": "111111",
                          "name": "Вячеславов Александр Михайлович"
                        }
                      ],
                      "client": {
                        "id": 409387,
                        "name": "ООО Рога и Копыта",
                        "clientType": "REAL"
                      },
                      "valueDate": "2024-05-22T00:00:00Z",
                      "tradeDate": "2024-05-22T20:30:21Z",
                      "debitDate": "2024-05-22T00:00:00Z",
                      "product": "RFQ",
                      "externalConfirmation": false,
                      "settlMethod": "DELIVERABLE",
                      "proposalId": null
                    }
                  ]
                },
                "requestId": "e0e70833c68e3c32"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Плохой запрос",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "error",
              "requestId"
            ],
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание кода ошибки"
                  },
                  "data": {
                    "type": "array",
                    "description": "Дополнительная информация об ошибке",
                    "items": {
                      "type": "object",
                      "properties": {
                        "field": {
                          "type": "string",
                          "description": "Параметр"
                        },
                        "value": {
                          "type": "string",
                          "description": "Значение пармаметра"
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          },
          "examples": {
            "Некорректная страница истории сделок": {
              "summary": "Некорректная страница истории сделок",
              "value": {
                "error": {
                  "code": "blotter.page.number.invalid",
                  "message": "",
                  "data": [
                    {
                      "field": "pageNumber",
                      "value": "0"
                    }
                  ]
                },
                "requestId": "e0e70833c68e3c32"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/swaps/blotter — Запрос для получения истории своповых сделок

Чтобы запросить историю сделок заполните параметры фильтрации и сортировки и получите в ответе историю ранее заключенных сделок с их параметрами

{
  "tags": [
    "Deals history"
  ],
  "summary": "Запрос для получения истории своповых сделок",
  "operationId": "swapsBlotter",
  "description": "Чтобы запросить историю сделок заполните параметры фильтрации и сортировки и получите в ответе историю ранее заключенных сделок с их параметрами",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Запросить историю своповых сделок",
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "offset": {
              "type": "integer",
              "description": "Значение смещения строк со сделками из истории сделок",
              "example": 0
            },
            "limit": {
              "type": "integer",
              "description": "Ограничение на количество строк со сделками из истории сделок",
              "example": 10
            },
            "sort": {
              "type": "array",
              "description": "Объект с параметрами сортировки",
              "items": {
                "type": "object",
                "properties": {
                  "property": {
                    "type": "string",
                    "description": "Параметр, по которому необходимо сортировать",
                    "enum": [
                      "nearLeg.sellAmount",
                      "nearLeg.buyAmount",
                      "farLeg.buyAmount",
                      "farLeg.sellAmount",
                      "tradeDate",
                      "signer.name"
                    ],
                    "example": "tradeDate"
                  },
                  "direction": {
                    "type": "string",
                    "description": "Направление сортировки, с возможными значениями ASC или DESC",
                    "enum": [
                      "ASC",
                      "DESC"
                    ],
                    "example": "DESC"
                  }
                }
              }
            },
            "filter": {
              "type": "array",
              "description": "Объект с параметрами фильтрации",
              "items": {
                "type": "object",
                "properties": {
                  "property": {
                    "type": "string",
                    "description": "Параметр фильтрации",
                    "enum": [
                      "dealId",
                      "tradeDate",
                      "swapSide",
                      "nearLeg.valueDate",
                      "farLeg.valueDate",
                      "nearLeg.tenor",
                      "farLeg.tenor",
                      "nearLeg.buyAmount",
                      "farLeg.buyAmount",
                      "nearLeg.sellAmount",
                      "farLeg.sellAmount",
                      "nearLeg.buyAmount.currency",
                      "farLeg.buyAmount.currency",
                      "nearLeg.sellAmount.currency",
                      "farLeg.sellAmount.currency",
                      "nearLeg.price",
                      "farLeg.price",
                      "swapPoints",
                      "marketCurrencyPair",
                      "baseAccount.number",
                      "quotedAccount.number",
                      "signer.name"
                    ]
                  },
                  "clause": {
                    "type": "array",
                    "description": "Массив значений параметра, по которым необходимо производить фильтрацию",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "examples": {
          "Запрос с сортировкой": {
            "summary": "Запрос с сортировкой",
            "value": {
              "offset": 0,
              "limit": 10,
              "sort": [
                {
                  "property": "tradeDate",
                  "direction": "DESC"
                }
              ],
              "filter": []
            }
          }
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "История своповых сделок",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Объект с результатом исполнения запроса",
                "required": [
                  "result",
                  "hasMorePages"
                ],
                "properties": {
                  "result": {
                    "type": "array",
                    "description": "Массив истории своповых сделок",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "integer",
                          "description": "Идентификатор записи в истории сделок",
                          "example": 18
                        },
                        "dealId": {
                          "type": "string",
                          "description": "Идентификатор сделки",
                          "example": 3097
                        },
                        "signer": {
                          "type": "object",
                          "description": "Объект с информацией о подписанте сделки",
                          "properties": {
                            "id": {
                              "type": "string",
                              "description": "Идентификатор подписанта",
                              "example": "organization.user.authority.external.id"
                            },
                            "name": {
                              "type": "string",
                              "description": "ФИО подписанта",
                              "example": "Вячеславов Александр Михайлович"
                            }
                          }
                        },
                        "marketCurrencyPair": {
                          "type": "string",
                          "description": "Валютная пара",
                          "example": "EUR/RUB"
                        },
                        "swapSide": {
                          "type": "string",
                          "description": "Сторона своповой сделки",
                          "example": "SELL"
                        },
                        "baseAccount": {
                          "type": "object",
                          "description": "Объект с информацией о счете в базовой валюте",
                          "properties": {
                            "number": {
                              "type": "string",
                              "description": "Номер счета",
                              "example": 40817840000000385000
                            },
                            "currency": {
                              "type": "string",
                              "description": "Валюта счета",
                              "example": "EUR"
                            },
                            "trustManagementName": {
                              "type": "string",
                              "description": "Наименование управляющей компании",
                              "example": null
                            },
                            "externalAccount": {
                              "type": "boolean",
                              "description": "Признак внешнего счета",
                              "example": true
                            }
                          }
                        },
                        "quotedAccount": {
                          "type": "object",
                          "description": "Объект с информацией о счете в котируемой валюте",
                          "properties": {
                            "number": {
                              "type": "string",
                              "description": "Номер счета",
                              "example": 40817840000000385000
                            },
                            "currency": {
                              "type": "string",
                              "description": "Валюта счета",
                              "example": "RUB"
                            },
                            "trustManagementName": {
                              "type": "string",
                              "description": "Наименование управляющей компании",
                              "example": null
                            },
                            "externalAccount": {
                              "type": "boolean",
                              "description": "Признак внешнего счета",
                              "example": true
                            }
                          }
                        },
                        "clientAmount": {
                          "type": "object",
                          "description": "Объем, от которого задавалась сделка",
                          "properties": {
                            "value": {
                              "type": "string",
                              "description": "Значение объема",
                              "example": "10000"
                            },
                            "currency": {
                              "type": "string",
                              "description": "Валюта объема",
                              "example": "EUR"
                            }
                          }
                        },
                        "swapPoints": {
                          "type": "object",
                          "description": "Своп-разница",
                          "properties": {
                            "value": {
                              "type": "string",
                              "description": "Значение своп-разницы",
                              "example": "-4.0275"
                            },
                            "decimalPlaces": {
                              "type": "integer",
                              "description": "Количество знаков после запятой",
                              "example": 4
                            }
                          }
                        },
                        "externalConfirmation": {
                          "type": "boolean",
                          "description": "Признак внешнего способа подтверждения сделки",
                          "example": true
                        },
                        "tradeDate": {
                          "type": "string",
                          "format": "date",
                          "description": "Дата заключения сделки",
                          "example": "2026-04-29"
                        },
                        "client": {
                          "type": "object",
                          "description": "Объект с информацией о клиенте",
                          "properties": {
                            "id": {
                              "type": "string",
                              "description": "Идентификатор клиента",
                              "example": 409387
                            },
                            "name": {
                              "type": "string",
                              "description": "Наименование клиента",
                              "example": "ООО Рога и Копыта"
                            },
                            "clientType": {
                              "type": "string",
                              "description": "Тип клиента",
                              "example": "REAL"
                            }
                          }
                        },
                        "nearLeg": {
                          "type": "object",
                          "description": "Ближняя нога своповой сделки",
                          "properties": {
                            "valueDate": {
                              "type": "string",
                              "format": "date",
                              "description": "Дата расчетов",
                              "example": "2026-04-30"
                            },
                            "tenor": {
                              "type": "string",
                              "description": "Тенор",
                              "example": "TOM"
                            },
                            "sellAmount": {
                              "type": "object",
                              "description": "Сумма продажи",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "description": "Объем суммы продажи",
                                  "example": "1043152.00"
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Валюта суммы продажи",
                                  "example": "RUB"
                                }
                              }
                            },
                            "buyAmount": {
                              "type": "object",
                              "description": "Сумма покупки",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "description": "Объем суммы покупки",
                                  "example": "10000"
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Валюта суммы покупки",
                                  "example": "EUR"
                                }
                              }
                            },
                            "price": {
                              "type": "object",
                              "description": "Курс",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "description": "Значение курса",
                                  "example": "104.3152"
                                },
                                "decimalPlaces": {
                                  "type": "integer",
                                  "description": "Количество знаков после запятой",
                                  "example": 4
                                }
                              }
                            },
                            "tradeMode": {
                              "type": "string",
                              "description": "Режим кредитования сделки",
                              "example": "DVP"
                            },
                            "predelivery": {
                              "type": "boolean",
                              "description": "Признак предпоставки",
                              "example": true
                            },
                            "useNetting": {
                              "type": "boolean",
                              "description": "Признак использования неттинга",
                              "example": false
                            },
                            "debitDate": {
                              "type": "string",
                              "format": "date",
                              "description": "Дата расчетов первой ноги",
                              "example": "2026-04-30"
                            }
                          }
                        },
                        "farLeg": {
                          "type": "object",
                          "description": "Дальняя нога своповой сделки",
                          "properties": {
                            "valueDate": {
                              "type": "string",
                              "format": "date",
                              "description": "Дата расчетов",
                              "example": "2026-05-04"
                            },
                            "tenor": {
                              "type": "string",
                              "description": "Тенор",
                              "example": "SPOT"
                            },
                            "sellAmount": {
                              "type": "object",
                              "description": "Сумма продажи",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "description": "Объем суммы продажи",
                                  "example": "10000"
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Валюта суммы продажи",
                                  "example": "EUR"
                                }
                              }
                            },
                            "buyAmount": {
                              "type": "object",
                              "description": "Сумма покупки",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "description": "Объем суммы покупки",
                                  "example": "1002877.00"
                                },
                                "currency": {
                                  "type": "string",
                                  "description": "Валюта суммы покупки",
                                  "example": "RUB"
                                }
                              }
                            },
                            "price": {
                              "type": "object",
                              "description": "Курс",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "description": "Значение курса",
                                  "example": "100.2877"
                                },
                                "decimalPlaces": {
                                  "type": "integer",
                                  "description": "Количество знаков после запятой",
                                  "example": 4
                                }
                              }
                            },
                            "tradeMode": {
                              "type": "string",
                              "description": "Режим кредитования сделки",
                              "example": "DVP"
                            },
                            "predelivery": {
                              "type": "boolean",
                              "description": "Признак предпоставки",
                              "example": true
                            },
                            "useNetting": {
                              "type": "boolean",
                              "description": "Признак использования неттинга",
                              "example": false
                            },
                            "debitDate": {
                              "type": "string",
                              "format": "date",
                              "description": "Дата расчетов по второй ноге",
                              "example": "2026-05-04"
                            }
                          }
                        }
                      }
                    }
                  },
                  "hasMorePages": {
                    "type": "boolean",
                    "description": "Признак наличия следующих страниц истории сделок",
                    "example": true
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "6a1000513f41198d3a9f3f274812156f"
              }
            }
          },
          "examples": {
            "Успешный ответ": {
              "summary": "Успешный ответ",
              "value": {
                "result": {
                  "result": [
                    {
                      "id": 18,
                      "dealId": 3097,
                      "signer": {
                        "id": "organization.user.authority.external.id",
                        "name": "Вячеславов Александр Михайлович"
                      },
                      "marketCurrencyPair": "EUR/RUB",
                      "swapSide": "SELL",
                      "baseAccount": {
                        "number": "EXTERNAL_ACCOUNT_EUR",
                        "currency": "EUR",
                        "trustManagementName": null,
                        "externalAccount": true
                      },
                      "quotedAccount": {
                        "number": "EXTERNAL_ACCOUNT_RUB",
                        "currency": "RUB",
                        "trustManagementName": null,
                        "externalAccount": true
                      },
                      "clientAmount": {
                        "value": "10000",
                        "currency": "EUR"
                      },
                      "swapPoints": {
                        "value": "-4.0275",
                        "decimalPlaces": 4
                      },
                      "externalConfirmation": true,
                      "tradeDate": "2026-04-29",
                      "client": {
                        "id": 409387,
                        "name": "ООО Рога и Копыта",
                        "clientType": "REAL"
                      },
                      "nearLeg": {
                        "valueDate": "2026-04-30",
                        "tenor": "TOM",
                        "sellAmount": {
                          "value": "1043152.00",
                          "currency": "RUB"
                        },
                        "buyAmount": {
                          "value": "10000",
                          "currency": "EUR"
                        },
                        "price": {
                          "value": "104.3152",
                          "decimalPlaces": 4
                        },
                        "tradeMode": "DVP",
                        "predelivery": true,
                        "useNetting": false,
                        "debitDate": "2026-04-30"
                      },
                      "farLeg": {
                        "valueDate": "2026-05-04",
                        "tenor": "SPOT",
                        "sellAmount": {
                          "value": "10000",
                          "currency": "EUR"
                        },
                        "buyAmount": {
                          "value": "1002877.00",
                          "currency": "RUB"
                        },
                        "price": {
                          "value": "100.2877",
                          "decimalPlaces": 4
                        },
                        "tradeMode": "DVP",
                        "predelivery": true,
                        "useNetting": false,
                        "debitDate": "2026-05-04"
                      }
                    }
                  ],
                  "hasMorePages": true
                },
                "requestId": "6a1000513f41198d3a9f3f274812156f"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Некорректный запрос",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "error",
              "requestId"
            ],
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки и описанием",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание кода ошибки"
                  },
                  "data": {
                    "type": "array",
                    "description": "Дополнительная информация об ошибке",
                    "items": {
                      "type": "object",
                      "properties": {
                        "field": {
                          "type": "string",
                          "description": "Параметр, вызвавший ошибку"
                        },
                        "value": {
                          "type": "string",
                          "description": "Значение параметра"
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/deliverable/conversion/blotter — Запрос для получения истории подтверждений сделок

Чтобы запросить историю подтверждений сделок заполните параметры фильтрации и сортировки и получите в ответе историю ранее созданных подтверждений сделок с их параметрами

{
  "tags": [
    "Deals history"
  ],
  "summary": "Запрос для получения истории подтверждений сделок",
  "operationId": "deliverableConversionBlotter",
  "description": "Чтобы запросить историю подтверждений сделок заполните параметры фильтрации и сортировки и получите в ответе историю ранее созданных подтверждений сделок с их параметрами",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "U12345"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Запросить историю подтверждений сделок",
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/DeliverableConversionBlotterRequest"
        },
        "examples": {
          "Запрос с фильтрацией и сортировкой": {
            "summary": "Запрос с фильтрацией по статусу \"Исполнен\" и Дате создания",
            "value": {
              "offset": 0,
              "limit": 10,
              "sort": [
                {
                  "property": "creationDate",
                  "direction": "DESC"
                }
              ],
              "filter": [
                {
                  "property": "status",
                  "clause": [
                    "DONE"
                  ]
                },
                {
                  "property": "creationDate",
                  "clause": {
                    "from": {
                      "value": 1769979600000,
                      "inclusive": true
                    },
                    "to": {
                      "value": 1770238799999,
                      "inclusive": true
                    }
                  }
                }
              ]
            }
          }
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "История подтверждений сделок",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/DeliverableConversionBlotterResponse"
          }
        }
      }
    },
    "400": {
      "description": "Некорректный запрос",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "error",
              "requestId"
            ],
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки и описанием",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание кода ошибки"
                  },
                  "data": {
                    "type": "array",
                    "description": "Дополнительная информация об ошибке",
                    "items": {
                      "type": "object",
                      "properties": {
                        "field": {
                          "type": "string",
                          "description": "Параметр, вызвавший ошибку"
                        },
                        "value": {
                          "type": "string",
                          "description": "Значение параметра"
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

POST /v1/options/quote — Запрос опционной премии по CNUM

Чтобы запросить опционную премию, необходимо передать обязательные параметры и получить в ответе: - идентификатор премии (quoteId) - размер премии - срок жизни премии

{
  "tags": [
    "Option"
  ],
  "summary": "Запрос опционной премии по CNUM",
  "operationId": "getOptionQuote",
  "description": "Чтобы запросить опционную премию, необходимо передать обязательные параметры и получить в ответе:\n  - идентификатор премии (quoteId)\n  - размер премии\n  - срок жизни премии",
  "parameters": [
    {
      "in": "header",
      "name": "CNUM",
      "description": "Уникальный идентификатор клиента (CNUM)",
      "required": true,
      "schema": {
        "type": "string",
        "example": "CADH0L"
      }
    },
    {
      "$ref": "#/components/parameters/IdTokenHeader"
    },
    {
      "$ref": "#/components/parameters/AuthorizationHeader"
    }
  ],
  "requestBody": {
    "description": "Запрос опционной премии по CNUM",
    "content": {
      "application/json": {
        "schema": {
          "required": [
            "sellCurrency",
            "buyCurrency",
            "amount",
            "side",
            "optionSide",
            "strike",
            "valueDate",
            "endorsementType",
            "premiumCurrency",
            "settlMethod"
          ],
          "type": "object",
          "properties": {
            "sellCurrency": {
              "type": "string",
              "description": "Валюта суммы на списание со стороны клиента",
              "example": "USD"
            },
            "buyCurrency": {
              "type": "string",
              "description": "Валюта суммы на зачисление со стороны клиента",
              "example": "RUB"
            },
            "amount": {
              "type": "string",
              "description": "Объем, от которого был задан опцион",
              "example": 5000
            },
            "side": {
              "type": "string",
              "description": "Сторона сделки относительно amount. Например, SELL, если объем был задан через поле суммы на списание",
              "example": "SELL",
              "enum": [
                "BUY",
                "SELL"
              ]
            },
            "optionSide": {
              "type": "string",
              "description": "Сторона опциона",
              "example": "BUY",
              "enum": [
                "BUY",
                "SELL"
              ]
            },
            "strike": {
              "type": "string",
              "description": "Цена исполнения (страйк)",
              "example": 90
            },
            "valueDate": {
              "type": "string",
              "format": "date",
              "description": "Дата платежа",
              "example": "2025-11-19"
            },
            "dateOfPremium": {
              "type": "string",
              "description": "Дата премии. Заполнять для optionSide \"SELL\". Для optionSide \"BUY\" передавать null",
              "example": "TRADE_DATE",
              "enum": [
                "TRADE_DATE",
                "VALUE_DATE"
              ]
            },
            "endorsementType": {
              "type": "string",
              "description": "Тип подписи сделки",
              "example": "OTP",
              "enum": [
                "CRYPTO_PRO",
                "OTP"
              ]
            },
            "premiumCurrency": {
              "type": "string",
              "description": "Валюта премии",
              "example": "RUB"
            },
            "settlMethod": {
              "type": "string",
              "description": "Способ расчётов",
              "example": "NON_DELIVERABLE",
              "enum": [
                "DELIVERABLE",
                "NON_DELIVERABLE"
              ]
            },
            "settlCurrency": {
              "type": "string",
              "description": "Валюта счёта расчёта курсовой разницы. Указывать только для settlMethod \"NON_DELIVERABLE\" в одной из валют sellCurrency/buyCurrency",
              "example": "RUB"
            },
            "fixingReferenceType": {
              "type": "string",
              "description": "Источник фиксинга. Для DELIVERABLE опциона не передавать",
              "example": "CBRF_FIXING",
              "enum": [
                "CBRF_FIXING",
                "RAIF_FIXING"
              ]
            }
          }
        },
        "examples": {
          "Пример CALL опциона": {
            "summary": "Пример беспоставочного опциона",
            "value": {
              "sellCurrency": "USD",
              "buyCurrency": "RUB",
              "amount": 5000,
              "side": "SELL",
              "optionSide": "BUY",
              "strike": 90,
              "valueDate": "2025-11-19",
              "dateOfPremium": null,
              "endorsementType": "OTP",
              "premiumCurrency": "RUB",
              "settlMethod": "NON_DELIVERABLE",
              "settlCurrency": "RUB",
              "fixingReferenceType": "CBRF_FIXING"
            }
          },
          "Пример PUT опциона": {
            "summary": "Пример поставочного опциона",
            "value": {
              "sellCurrency": "EUR",
              "buyCurrency": "USD",
              "amount": 20000.5,
              "side": "BUY",
              "optionSide": "SELL",
              "strike": 100.5474,
              "valueDate": "2025-12-15",
              "dateOfPremium": "TRADE_DATE",
              "endorsementType": "CRYPTO_PRO",
              "premiumCurrency": "EUR",
              "settlMethod": "DELIVERABLE"
            }
          }
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "Опционная премия по запрошенным параметрам",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "result",
              "requestId"
            ],
            "properties": {
              "result": {
                "type": "object",
                "description": "Результат запроса опционной премии",
                "required": [
                  "quoteId",
                  "currencyPair",
                  "optionType",
                  "sellAmount",
                  "sellCurrency",
                  "buyAmount",
                  "buyCurrency",
                  "premiumAmount",
                  "premiumPercent",
                  "premiumCurrency",
                  "strike",
                  "strikeDecimalPlaces",
                  "expiryDate",
                  "valueDate",
                  "tradeDate",
                  "ttl",
                  "tradeable"
                ],
                "properties": {
                  "quoteId": {
                    "type": "string",
                    "description": "Идентификатор квоты",
                    "example": "4394e69f995f11f0a9bef9063f1c899a"
                  },
                  "currencyPair": {
                    "type": "string",
                    "description": "Валютная пара опциона",
                    "example": "EUR/RUB"
                  },
                  "optionType": {
                    "type": "string",
                    "description": "Тип опциона",
                    "example": "CALL",
                    "enum": [
                      "CALL",
                      "PUT"
                    ]
                  },
                  "sellAmount": {
                    "type": "string",
                    "description": "Сумма на списание со стороны клиента",
                    "example": 600
                  },
                  "sellCurrency": {
                    "type": "string",
                    "description": "Валюта суммы на списание со стороны клиента",
                    "example": "RUB"
                  },
                  "buyAmount": {
                    "type": "string",
                    "description": "Сумма на зачисление со стороны клиента",
                    "example": 6
                  },
                  "buyCurrency": {
                    "type": "string",
                    "description": "Валюта суммы на зачисление со стороны клиента",
                    "example": "EUR"
                  },
                  "premiumAmount": {
                    "type": "string",
                    "description": "Сумма премии",
                    "example": 24.37
                  },
                  "premiumPercent": {
                    "type": "string",
                    "description": "Премия в процентах",
                    "example": 4.06
                  },
                  "premiumCurrency": {
                    "type": "string",
                    "description": "Валюта премии",
                    "example": "RUB"
                  },
                  "strike": {
                    "type": "string",
                    "description": "Цена исполнения",
                    "example": 100
                  },
                  "strikeDecimalPlaces": {
                    "type": "integer",
                    "description": "Количество знаков после запятой цены исполнения",
                    "example": 4
                  },
                  "expiryDate": {
                    "type": "string",
                    "format": "date",
                    "description": "Дата истечения срока опциона",
                    "example": "2025-09-29"
                  },
                  "valueDate": {
                    "type": "string",
                    "format": "date",
                    "description": "Дата платежа опциона",
                    "example": "2025-09-30"
                  },
                  "tradeDate": {
                    "type": "string",
                    "format": "date-time",
                    "description": "Дата запроса премии",
                    "example": "2025-09-24T15:58:08.326844099Z"
                  },
                  "ttl": {
                    "type": "integer",
                    "description": "Срок жизни премии в мс",
                    "example": 10000
                  },
                  "tradeable": {
                    "type": "boolean",
                    "description": "Признак, что торговля разрешена",
                    "example": true
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса для трейсинга"
              }
            }
          }
        }
      }
    },
    "400": {
      "description": "Некорректный запрос",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "error",
              "requestId"
            ],
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки",
                    "example": "app.invalid.request"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание кода ошибки",
                    "example": "Bad Request"
                  },
                  "data": {
                    "type": "array",
                    "description": "Дополнительная информация об ошибке",
                    "items": {
                      "type": "object",
                      "properties": {
                        "field": {
                          "type": "string",
                          "description": "Параметр"
                        },
                        "value": {
                          "type": "string",
                          "description": "Значение параметра"
                        }
                      }
                    }
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса",
                "example": "c396fda4d36c4f12"
              }
            }
          },
          "examples": {
            "Некорректный запрос": {
              "summary": "Некорректный запрос",
              "value": {
                "error": {
                  "code": "app.invalid.request",
                  "message": "Bad Request"
                },
                "requestId": "c396fda4d36c4f12"
              }
            }
          }
        }
      }
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    },
    "422": {
      "description": "Бизнес-ошибки",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "error",
              "requestId"
            ],
            "properties": {
              "error": {
                "type": "object",
                "description": "Объект с кодом ошибки",
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Значение кода ошибки"
                  },
                  "message": {
                    "type": "string",
                    "description": "Описание кода ошибки"
                  }
                }
              },
              "requestId": {
                "type": "string",
                "description": "Идентификатор запроса"
              }
            }
          },
          "examples": {
            "Опционы выключены для клиента": {
              "summary": "Запрос опционной премии выключен",
              "value": {
                "error": {
                  "code": "options.disabled"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрос вне часов торговли": {
              "summary": "Запрос был произведен вне часов торговли",
              "value": {
                "error": {
                  "code": "options.invalid.trading.time.outside.trading.hours"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрос в нерабочий день": {
              "summary": "Запрос был произведен в праздники",
              "value": {
                "error": {
                  "code": "options.invalid.trading.time.holiday"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрошенная сумма превышает допустимый порог лимита": {
              "summary": "Запрошенная сумма превышает допустимый порог объема",
              "value": {
                "error": {
                  "code": "options.requested.amount.too.high"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрошенная сумма после округления равна 0": {
              "summary": "Запрошенная сумма меньше допустимого объема",
              "value": {
                "error": {
                  "code": "options.requested.amount.too.low"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Запрошенная сумма после пересчёта из котируемой в базовую и округления равна 0": {
              "summary": "Запрошенная сумма меньше допустимого объема",
              "value": {
                "error": {
                  "code": "options.opposite.amount.too.low"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Неподдерживаемая валютная пара": {
              "summary": "Неподдерживаемая валютная пара",
              "value": {
                "error": {
                  "code": "options.unsupported.currency.pair"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Некорректная дата платежа": {
              "summary": "Некорректная дата платежа",
              "value": {
                "error": {
                  "code": "options.value.date.invalid"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Получилась нулевая премия": {
              "summary": "Получилась нулевая премия по условиям опциона",
              "value": {
                "error": {
                  "code": "options.premium.zero"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Страйк слишком высокий": {
              "summary": "Страйк выше ожидаемого значения",
              "value": {
                "error": {
                  "code": "options.strike.too.high"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Страйк слишком низкий": {
              "summary": "Страйк ниже ожидаемого значения",
              "value": {
                "error": {
                  "code": "options.strike.too.low"
                },
                "requestId": "c396fda4d36c4f12"
              }
            },
            "Неизвестная ошибка прайсера": {
              "summary": "Неизвестная ошибка",
              "value": {
                "error": {
                  "code": "options.option.pricer.unknown.error"
                },
                "requestId": "c396fda4d36c4f12"
              }
            }
          }
        }
      }
    },
    "500": {
      "$ref": "#/components/responses/InternalError"
    }
  }
}

Схемы и примеры

{
  "responses": {
    "Unauthorized": {
      "description": "Аутентификация не пройдена"
    },
    "InternalError": {
      "description": "Внутренняя ошибка"
    }
  },
  "parameters": {
    "IdTokenHeader": {
      "name": "Id-Token",
      "in": "header",
      "description": "Идентификационный токен пользователя",
      "required": true,
      "schema": {
        "type": "string",
        "format": "byte",
        "example": "SUQgVE9LRU4gRk9SIFRFU1RJTkc="
      }
    },
    "AuthorizationHeader": {
      "name": "Authorization",
      "in": "header",
      "description": "Токен доступа",
      "required": true,
      "schema": {
        "type": "string",
        "format": "byte",
        "example": "Bearer QXV0aG9yaXphdGlvbiBIZWFkZXIgRm9yIFRlc3Rpbmc="
      }
    }
  },
  "schemas": {
    "DeliverableConversionBlotterRequest": {
      "type": "object",
      "required": [
        "offset",
        "limit"
      ],
      "properties": {
        "offset": {
          "type": "integer",
          "description": "Значение смещения строк из истории"
        },
        "limit": {
          "type": "integer",
          "description": "Ограничение на количество строк из истории, не более 1000 записей в одном запросе"
        },
        "filter": {
          "type": "array",
          "description": "Объект с параметрами фильтрации.\nДоступные фильтры (property):\n- id — номер заявки\n- creationDate — дата создания (from/to)\n- processingDate — дата обработки (from/to)\n- sendDate — дата отправления (from/to)\n- creator.signer.name — автор\n- tradeDate — дата заключения сделки (from/to)\n- clientBuyAccount.currency — валюта зачисления\n- clientSellAccount.currency — валюта списания\n- clientBuyAmount — сумма зачисления\n- clientSellAmount — сумма списания\n- price — обменный курс\n- participant.signer.name — подписант\n- comment — заметка\n- status — статус",
          "items": {
            "$ref": "#/components/schemas/BlotterFilterItem"
          }
        },
        "sort": {
          "type": "array",
          "description": "Объект с параметрами сортировки",
          "items": {
            "$ref": "#/components/schemas/BlotterSortItem"
          }
        }
      }
    },
    "BlotterSortItem": {
      "type": "object",
      "properties": {
        "property": {
          "type": "string",
          "description": "Объект с параметрами сортировки.\nДоступные паарметры (property):\n- creationDate\n- sendDate\n- processingDate\n- creator.signer.name"
        },
        "direction": {
          "type": "string",
          "description": "Направление сортировки, с возможными значениями \"ASC\" или \"DESC\"",
          "enum": [
            "ASC",
            "DESC"
          ]
        }
      }
    },
    "BlotterFilterItem": {
      "type": "object",
      "required": [
        "property",
        "clause"
      ],
      "properties": {
        "property": {
          "type": "string",
          "description": "Параметр фильтрации",
          "enum": [
            "id",
            "creationDate",
            "processingDate",
            "sendDate",
            "creator.signer.name",
            "tradeDate",
            "clientBuyAccount.currency",
            "clientSellAccount.currency",
            "clientBuyAmount",
            "clientSellAmount",
            "price",
            "participant.signer.name",
            "comment",
            "status"
          ]
        },
        "clause": {
          "type": "array",
          "description": "Значение фильтра"
        }
      }
    },
    "DeliverableConversionBlotterResponse": {
      "type": "object",
      "required": [
        "result",
        "requestId"
      ],
      "properties": {
        "result": {
          "type": "object",
          "description": "Объект с результатом исполнения запроса",
          "required": [
            "hasMore",
            "list"
          ],
          "properties": {
            "hasMore": {
              "type": "boolean",
              "description": "Признак наличия других записей в истории, удовлетворяющих параметрам запроса"
            },
            "list": {
              "type": "array",
              "description": "Массив истории подтверждений сделок",
              "items": {
                "$ref": "#/components/schemas/DeliverableConversionBlotterItem"
              }
            }
          }
        },
        "requestId": {
          "type": "string",
          "description": "Идентификатор запроса"
        }
      }
    },
    "DeliverableConversionBlotterItem": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Идентификатор записи"
        },
        "clientBuyAccount": {
          "type": "object",
          "description": "Объект с информацией о счете покупки",
          "required": [
            "number",
            "currency",
            "accountType",
            "trustManagementName"
          ],
          "properties": {
            "number": {
              "type": "string",
              "description": "Номер счета покупки",
              "example": 12334
            },
            "currency": {
              "type": "object",
              "description": "Валюта счета покупки",
              "required": [
                "isoCode",
                "numericCode"
              ],
              "properties": {
                "isoCode": {
                  "type": "string",
                  "example": "RUB"
                },
                "numericCode": {
                  "type": "string",
                  "example": 643
                }
              }
            },
            "accountType": {
              "type": "string",
              "description": "Тип счета (INTERNAL/EXTERNAL)",
              "example": "EXTERNAL"
            },
            "trustManagementName": {
              "type": "string",
              "description": "Наименование управляющей компании",
              "example": null
            }
          }
        },
        "clientSellAccount": {
          "type": "object",
          "description": "Объект с информацией о счете продажи",
          "required": [
            "number",
            "currency",
            "accountType",
            "trustManagementName"
          ],
          "properties": {
            "number": {
              "type": "string",
              "description": "Номер счета продажи",
              "example": 40817840000000385000
            },
            "currency": {
              "type": "object",
              "description": "Валюта счета продажи",
              "required": [
                "isoCode",
                "numericCode"
              ],
              "properties": {
                "isoCode": {
                  "type": "string",
                  "example": "USD"
                },
                "numericCode": {
                  "type": "string",
                  "example": 840
                }
              }
            },
            "accountType": {
              "type": "string",
              "description": "Тип счета (INTERNAL/EXTERNAL)",
              "example": "INTERNAL"
            },
            "trustManagementName": {
              "type": "string",
              "description": "Наименование управляющей компании",
              "example": null
            }
          }
        },
        "clientSellAmount": {
          "type": "string",
          "description": "Сумма продажи"
        },
        "clientBuyAmount": {
          "type": "string",
          "description": "Сумма покупки"
        },
        "creationDate": {
          "type": "string",
          "description": "Дата создания подтверждения (ISO 8601)",
          "example": "2025-07-22T13:23:13.507701Z"
        },
        "tradeDate": {
          "type": "string",
          "description": "Дата заключения сделки (ISO 8601)",
          "example": "2025-07-22T13:23:13.507701Z"
        },
        "valueDate": {
          "type": "string",
          "description": "Дата расчетов по сделке (ISO 8601)",
          "example": "2025-07-22T13:23:13.507701Z"
        },
        "sendDate": {
          "type": "string",
          "description": "Дата подписания подтверждения (ISO 8601)",
          "example": "2025-07-22T13:23:13.507701Z"
        },
        "processingDate": {
          "type": "string",
          "description": "Дата исполнения подтверждения (ISO 8601)",
          "example": "2025-07-22T13:27:04.747733Z"
        },
        "price": {
          "type": "string",
          "description": "Обменный курс"
        },
        "creator": {
          "type": "object",
          "description": "Информация о создателе сделки",
          "required": [
            "id",
            "name"
          ],
          "properties": {
            "id": {
              "type": "string",
              "description": "Идентификатор создателя",
              "example": "organization.user.authority.external.id"
            },
            "name": {
              "type": "string",
              "description": "ФИО создателя",
              "example": "Вячеславов Александр Михайлович"
            }
          }
        },
        "traders": {
          "type": "array",
          "description": "Список подписантов сделки",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "Идентификатор подписанта",
                "example": "organization.user.authority.external.id"
              },
              "name": {
                "type": "string",
                "description": "ФИО подписанта",
                "example": "Вячеславов Александр Михайлович"
              }
            }
          }
        },
        "status": {
          "type": "string",
          "description": "Статус подтверждения"
        },
        "resultComment": {
          "type": "string",
          "nullable": true,
          "description": "Комментарий при отклонении подтверждения"
        },
        "comment": {
          "type": "string",
          "nullable": true,
          "description": "Комментарий к подтверждению"
        },
        "conversionAgreementNumber": {
          "type": "string",
          "description": "Номер подтверждения"
        },
        "confirmDeal": {
          "type": "boolean",
          "nullable": true,
          "description": "Признак, что подтверждение формируется на основании соглашения об условиях совершения конверсионной сделки"
        },
        "client": {
          "type": "object",
          "description": "Объект с информацией о клиенте",
          "required": [
            "id",
            "name",
            "shortName",
            "clientType"
          ],
          "properties": {
            "id": {
              "type": "string",
              "description": "Идентификатор клиента",
              "example": 409387
            },
            "name": {
              "type": "string",
              "description": "Наименование клиента",
              "example": "Авилекс ООО"
            },
            "shortName": {
              "type": "string",
              "description": "Короткое наименование клиента",
              "example": "Авилекс"
            },
            "clientType": {
              "type": "string",
              "description": "Тип клиента",
              "example": "REAL"
            }
          }
        }
      }
    }
  }
}
Page not found
Back to home
Raiffeisen Bank logosupport_openapi@raiffeisen.ru
1C:DirectBank & Smartegra IntegrationRaif Pay API
Bank of Russia LicensePersonal Data PolicyConsent to Data Processing

This website uses cookies to personalize services and improve your experience. To opt out, adjust your browser settings. © 2003 – 2026 Raiffeisenbank JSC