curl --request POST \
--url https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"$type": "Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core",
"market_data_environment_name": "Example market data",
"provider_id": "<string>",
"use_best_effort": true,
"fx_vol_grids": [
{
"$type": "Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core",
"provider_id": "<string>",
"derivitec_created": "<string>",
"derivitec_modified": "<string>",
"uploaded_date_time": "<string>",
"derivitec_modified_by": "<string>",
"uploaded_by": "<string>",
"rolled": false,
"fx_pair": "<string>",
"reference_date": "2023-11-07T05:31:56Z",
"tenors": [
"<string>"
],
"deltas": [
[
"<string>"
]
],
"vols": [
[
123
]
],
"spot_ref": 123
}
]
}
'import requests
url = "https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids"
payload = {
"$type": "Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core",
"market_data_environment_name": "Example market data",
"provider_id": "<string>",
"use_best_effort": True,
"fx_vol_grids": [
{
"$type": "Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core",
"provider_id": "<string>",
"derivitec_created": "<string>",
"derivitec_modified": "<string>",
"uploaded_date_time": "<string>",
"derivitec_modified_by": "<string>",
"uploaded_by": "<string>",
"rolled": False,
"fx_pair": "<string>",
"reference_date": "2023-11-07T05:31:56Z",
"tenors": ["<string>"],
"deltas": [["<string>"]],
"vols": [[123]],
"spot_ref": 123
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json-patch+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json-patch+json'},
body: JSON.stringify({
$type: 'Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core',
market_data_environment_name: 'Example market data',
provider_id: '<string>',
use_best_effort: true,
fx_vol_grids: [
{
$type: 'Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core',
provider_id: '<string>',
derivitec_created: '<string>',
derivitec_modified: '<string>',
uploaded_date_time: '<string>',
derivitec_modified_by: '<string>',
uploaded_by: '<string>',
rolled: false,
fx_pair: '<string>',
reference_date: '2023-11-07T05:31:56Z',
tenors: ['<string>'],
deltas: [['<string>']],
vols: [[123]],
spot_ref: 123
}
]
})
};
fetch('https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'$type' => 'Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core',
'market_data_environment_name' => 'Example market data',
'provider_id' => '<string>',
'use_best_effort' => true,
'fx_vol_grids' => [
[
'$type' => 'Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core',
'provider_id' => '<string>',
'derivitec_created' => '<string>',
'derivitec_modified' => '<string>',
'uploaded_date_time' => '<string>',
'derivitec_modified_by' => '<string>',
'uploaded_by' => '<string>',
'rolled' => false,
'fx_pair' => '<string>',
'reference_date' => '2023-11-07T05:31:56Z',
'tenors' => [
'<string>'
],
'deltas' => [
[
'<string>'
]
],
'vols' => [
[
123
]
],
'spot_ref' => 123
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json-patch+json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids"
payload := strings.NewReader("{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"use_best_effort\": true,\n \"fx_vol_grids\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"fx_pair\": \"<string>\",\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"tenors\": [\n \"<string>\"\n ],\n \"deltas\": [\n [\n \"<string>\"\n ]\n ],\n \"vols\": [\n [\n 123\n ]\n ],\n \"spot_ref\": 123\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json-patch+json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"use_best_effort\": true,\n \"fx_vol_grids\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"fx_pair\": \"<string>\",\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"tenors\": [\n \"<string>\"\n ],\n \"deltas\": [\n [\n \"<string>\"\n ]\n ],\n \"vols\": [\n [\n 123\n ]\n ],\n \"spot_ref\": 123\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json-patch+json'
request.body = "{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"use_best_effort\": true,\n \"fx_vol_grids\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"fx_pair\": \"<string>\",\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"tenors\": [\n \"<string>\"\n ],\n \"deltas\": [\n [\n \"<string>\"\n ]\n ],\n \"vols\": [\n [\n 123\n ]\n ],\n \"spot_ref\": 123\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"$type": "Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsResponse, Derivitec.Web.Core",
"is_success": true,
"error_messages": [
"<string>"
]
}Store FX volatility grids for a market-data provider.
Use this operation to validate and convert quoted FX volatility grids into provider-scoped volatility
surfaces. The caller must have edit access to the selected provider. When UseBestEffort is true,
valid supported pairs may still be saved when other grids fail; when false, validation failures stop the
upload before partial processing.
curl --request POST \
--url https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"$type": "Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core",
"market_data_environment_name": "Example market data",
"provider_id": "<string>",
"use_best_effort": true,
"fx_vol_grids": [
{
"$type": "Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core",
"provider_id": "<string>",
"derivitec_created": "<string>",
"derivitec_modified": "<string>",
"uploaded_date_time": "<string>",
"derivitec_modified_by": "<string>",
"uploaded_by": "<string>",
"rolled": false,
"fx_pair": "<string>",
"reference_date": "2023-11-07T05:31:56Z",
"tenors": [
"<string>"
],
"deltas": [
[
"<string>"
]
],
"vols": [
[
123
]
],
"spot_ref": 123
}
]
}
'import requests
url = "https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids"
payload = {
"$type": "Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core",
"market_data_environment_name": "Example market data",
"provider_id": "<string>",
"use_best_effort": True,
"fx_vol_grids": [
{
"$type": "Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core",
"provider_id": "<string>",
"derivitec_created": "<string>",
"derivitec_modified": "<string>",
"uploaded_date_time": "<string>",
"derivitec_modified_by": "<string>",
"uploaded_by": "<string>",
"rolled": False,
"fx_pair": "<string>",
"reference_date": "2023-11-07T05:31:56Z",
"tenors": ["<string>"],
"deltas": [["<string>"]],
"vols": [[123]],
"spot_ref": 123
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json-patch+json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json-patch+json'},
body: JSON.stringify({
$type: 'Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core',
market_data_environment_name: 'Example market data',
provider_id: '<string>',
use_best_effort: true,
fx_vol_grids: [
{
$type: 'Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core',
provider_id: '<string>',
derivitec_created: '<string>',
derivitec_modified: '<string>',
uploaded_date_time: '<string>',
derivitec_modified_by: '<string>',
uploaded_by: '<string>',
rolled: false,
fx_pair: '<string>',
reference_date: '2023-11-07T05:31:56Z',
tenors: ['<string>'],
deltas: [['<string>']],
vols: [[123]],
spot_ref: 123
}
]
})
};
fetch('https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'$type' => 'Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core',
'market_data_environment_name' => 'Example market data',
'provider_id' => '<string>',
'use_best_effort' => true,
'fx_vol_grids' => [
[
'$type' => 'Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core',
'provider_id' => '<string>',
'derivitec_created' => '<string>',
'derivitec_modified' => '<string>',
'uploaded_date_time' => '<string>',
'derivitec_modified_by' => '<string>',
'uploaded_by' => '<string>',
'rolled' => false,
'fx_pair' => '<string>',
'reference_date' => '2023-11-07T05:31:56Z',
'tenors' => [
'<string>'
],
'deltas' => [
[
'<string>'
]
],
'vols' => [
[
123
]
],
'spot_ref' => 123
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json-patch+json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids"
payload := strings.NewReader("{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"use_best_effort\": true,\n \"fx_vol_grids\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"fx_pair\": \"<string>\",\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"tenors\": [\n \"<string>\"\n ],\n \"deltas\": [\n [\n \"<string>\"\n ]\n ],\n \"vols\": [\n [\n 123\n ]\n ],\n \"spot_ref\": 123\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json-patch+json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"use_best_effort\": true,\n \"fx_vol_grids\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"fx_pair\": \"<string>\",\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"tenors\": [\n \"<string>\"\n ],\n \"deltas\": [\n [\n \"<string>\"\n ]\n ],\n \"vols\": [\n [\n 123\n ]\n ],\n \"spot_ref\": 123\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.riskportal.activeviam.com/api/MarketData/UploadFxVolGrids")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json-patch+json'
request.body = "{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"use_best_effort\": true,\n \"fx_vol_grids\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.FxVolGrid, Derivitec.Web.Core\",\n \"provider_id\": \"<string>\",\n \"derivitec_created\": \"<string>\",\n \"derivitec_modified\": \"<string>\",\n \"uploaded_date_time\": \"<string>\",\n \"derivitec_modified_by\": \"<string>\",\n \"uploaded_by\": \"<string>\",\n \"rolled\": false,\n \"fx_pair\": \"<string>\",\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"tenors\": [\n \"<string>\"\n ],\n \"deltas\": [\n [\n \"<string>\"\n ]\n ],\n \"vols\": [\n [\n 123\n ]\n ],\n \"spot_ref\": 123\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"$type": "Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsResponse, Derivitec.Web.Core",
"is_success": true,
"error_messages": [
"<string>"
]
}Authorizations
OAuth2 access-token requested from AWS Cognito and provided as a Auth Bearer header
Body
The upload payload. FxVolGrids must be non-empty, each grid identifies an FX pair and reference date, ProviderId selects the destination, and UseBestEffort controls partial processing.
Submits FX volatility grids.
Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsRequest, Derivitec.Web.Core Name of the market-data environment to use. Supply either this name or provider_id, not both.
"Example market data"
Opaque identifier of the market-data provider to use. Supply either this identifier or market_data_environment_name, not both.
Requests independent handling of input records when one cannot be processed; defaults to false.
FX volatility grids to upload.
Show child attributes
Show child attributes
Response
Returns the upload result and errors for invalid or unsupported FX grids.
Returns the success flag and error messages from an FX volatility-grid upload.
Derivitec.Web.Core.MarketData.ApiUploadFxVolGridsResponse, Derivitec.Web.Core Whether the operation completed successfully. The default is true; error outcomes set it to false.
true
Messages explaining operation-level failures. The collection is empty by default.
Was this page helpful?