curl --request POST \
--url https://api.riskportal.activeviam.com/api/MarketData/UploadDividendIndexVolSurfaces \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"$type": "Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core",
"market_data_environment_name": "Example market data",
"provider_id": "<string>",
"vol_surfaces": [
{
"$type": "Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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,
"benchmark_fwd_factors": [
123
],
"benchmark_maturities": [
123
],
"call_wings": [
123
],
"put_wings": [
123
],
"reference_date": "2023-11-07T05:31:56Z",
"skews": [
123
],
"smiles": [
123
],
"spot_ref": 123,
"vols": [
123
],
"dividend_index_id": {
"$type": "Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core",
"code": "<string>",
"market_identification_code": "<string>"
},
"futures_code": {
"$type": "Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core",
"code": "<string>",
"market_identification_code": "<string>"
}
}
]
}
'import requests
url = "https://api.riskportal.activeviam.com/api/MarketData/UploadDividendIndexVolSurfaces"
payload = {
"$type": "Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core",
"market_data_environment_name": "Example market data",
"provider_id": "<string>",
"vol_surfaces": [
{
"$type": "Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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,
"benchmark_fwd_factors": [123],
"benchmark_maturities": [123],
"call_wings": [123],
"put_wings": [123],
"reference_date": "2023-11-07T05:31:56Z",
"skews": [123],
"smiles": [123],
"spot_ref": 123,
"vols": [123],
"dividend_index_id": {
"$type": "Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core",
"code": "<string>",
"market_identification_code": "<string>"
},
"futures_code": {
"$type": "Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core",
"code": "<string>",
"market_identification_code": "<string>"
}
}
]
}
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.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core',
market_data_environment_name: 'Example market data',
provider_id: '<string>',
vol_surfaces: [
{
$type: 'Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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,
benchmark_fwd_factors: [123],
benchmark_maturities: [123],
call_wings: [123],
put_wings: [123],
reference_date: '2023-11-07T05:31:56Z',
skews: [123],
smiles: [123],
spot_ref: 123,
vols: [123],
dividend_index_id: {
$type: 'Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core',
code: '<string>',
market_identification_code: '<string>'
},
futures_code: {
$type: 'Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core',
code: '<string>',
market_identification_code: '<string>'
}
}
]
})
};
fetch('https://api.riskportal.activeviam.com/api/MarketData/UploadDividendIndexVolSurfaces', 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/UploadDividendIndexVolSurfaces",
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.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core',
'market_data_environment_name' => 'Example market data',
'provider_id' => '<string>',
'vol_surfaces' => [
[
'$type' => 'Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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,
'benchmark_fwd_factors' => [
123
],
'benchmark_maturities' => [
123
],
'call_wings' => [
123
],
'put_wings' => [
123
],
'reference_date' => '2023-11-07T05:31:56Z',
'skews' => [
123
],
'smiles' => [
123
],
'spot_ref' => 123,
'vols' => [
123
],
'dividend_index_id' => [
'$type' => 'Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core',
'code' => '<string>',
'market_identification_code' => '<string>'
],
'futures_code' => [
'$type' => 'Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core',
'code' => '<string>',
'market_identification_code' => '<string>'
]
]
]
]),
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/UploadDividendIndexVolSurfaces"
payload := strings.NewReader("{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"vol_surfaces\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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 \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ],\n \"dividend_index_id\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n },\n \"futures_code\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n }\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/UploadDividendIndexVolSurfaces")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"vol_surfaces\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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 \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ],\n \"dividend_index_id\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n },\n \"futures_code\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.riskportal.activeviam.com/api/MarketData/UploadDividendIndexVolSurfaces")
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.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"vol_surfaces\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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 \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ],\n \"dividend_index_id\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n },\n \"futures_code\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"$type": "Derivitec.Web.Core.ApiBaseResponse, Derivitec.Web.Core",
"is_success": true,
"error_messages": []
}Store dividend-index volatility surfaces.
Use this operation to publish parameterised volatility surfaces to a non-default provider that the caller
may edit. A surface can identify a dividend index (or supported equity) directly, or identify one dividend
future through FuturesCode. Its date-only reference date and SVI benchmark, volatility, skew, smile,
and wing vectors describe the contribution; Vols are decimal volatility values (0.20 means 20%).
Unsupported surfaces are skipped; identical duplicates for the same instrument and date are collapsed,
while conflicting duplicates stop the upload. Accepted surfaces
replace contributions with the same provider, instrument, futures expiry where applicable, and reference date.
Processing completes before the response is returned.
curl --request POST \
--url https://api.riskportal.activeviam.com/api/MarketData/UploadDividendIndexVolSurfaces \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"$type": "Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core",
"market_data_environment_name": "Example market data",
"provider_id": "<string>",
"vol_surfaces": [
{
"$type": "Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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,
"benchmark_fwd_factors": [
123
],
"benchmark_maturities": [
123
],
"call_wings": [
123
],
"put_wings": [
123
],
"reference_date": "2023-11-07T05:31:56Z",
"skews": [
123
],
"smiles": [
123
],
"spot_ref": 123,
"vols": [
123
],
"dividend_index_id": {
"$type": "Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core",
"code": "<string>",
"market_identification_code": "<string>"
},
"futures_code": {
"$type": "Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core",
"code": "<string>",
"market_identification_code": "<string>"
}
}
]
}
'import requests
url = "https://api.riskportal.activeviam.com/api/MarketData/UploadDividendIndexVolSurfaces"
payload = {
"$type": "Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core",
"market_data_environment_name": "Example market data",
"provider_id": "<string>",
"vol_surfaces": [
{
"$type": "Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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,
"benchmark_fwd_factors": [123],
"benchmark_maturities": [123],
"call_wings": [123],
"put_wings": [123],
"reference_date": "2023-11-07T05:31:56Z",
"skews": [123],
"smiles": [123],
"spot_ref": 123,
"vols": [123],
"dividend_index_id": {
"$type": "Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core",
"code": "<string>",
"market_identification_code": "<string>"
},
"futures_code": {
"$type": "Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core",
"code": "<string>",
"market_identification_code": "<string>"
}
}
]
}
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.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core',
market_data_environment_name: 'Example market data',
provider_id: '<string>',
vol_surfaces: [
{
$type: 'Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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,
benchmark_fwd_factors: [123],
benchmark_maturities: [123],
call_wings: [123],
put_wings: [123],
reference_date: '2023-11-07T05:31:56Z',
skews: [123],
smiles: [123],
spot_ref: 123,
vols: [123],
dividend_index_id: {
$type: 'Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core',
code: '<string>',
market_identification_code: '<string>'
},
futures_code: {
$type: 'Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core',
code: '<string>',
market_identification_code: '<string>'
}
}
]
})
};
fetch('https://api.riskportal.activeviam.com/api/MarketData/UploadDividendIndexVolSurfaces', 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/UploadDividendIndexVolSurfaces",
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.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core',
'market_data_environment_name' => 'Example market data',
'provider_id' => '<string>',
'vol_surfaces' => [
[
'$type' => 'Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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,
'benchmark_fwd_factors' => [
123
],
'benchmark_maturities' => [
123
],
'call_wings' => [
123
],
'put_wings' => [
123
],
'reference_date' => '2023-11-07T05:31:56Z',
'skews' => [
123
],
'smiles' => [
123
],
'spot_ref' => 123,
'vols' => [
123
],
'dividend_index_id' => [
'$type' => 'Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core',
'code' => '<string>',
'market_identification_code' => '<string>'
],
'futures_code' => [
'$type' => 'Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core',
'code' => '<string>',
'market_identification_code' => '<string>'
]
]
]
]),
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/UploadDividendIndexVolSurfaces"
payload := strings.NewReader("{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"vol_surfaces\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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 \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ],\n \"dividend_index_id\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n },\n \"futures_code\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n }\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/UploadDividendIndexVolSurfaces")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"$type\": \"Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"vol_surfaces\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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 \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ],\n \"dividend_index_id\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n },\n \"futures_code\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.riskportal.activeviam.com/api/MarketData/UploadDividendIndexVolSurfaces")
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.ApiUploadDividendIndexVolSurfacesRequest, Derivitec.Web.Core\",\n \"market_data_environment_name\": \"Example market data\",\n \"provider_id\": \"<string>\",\n \"vol_surfaces\": [\n {\n \"$type\": \"Derivitec.Web.Core.MarketData.DividendIndexVolSurface, 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 \"benchmark_fwd_factors\": [\n 123\n ],\n \"benchmark_maturities\": [\n 123\n ],\n \"call_wings\": [\n 123\n ],\n \"put_wings\": [\n 123\n ],\n \"reference_date\": \"2023-11-07T05:31:56Z\",\n \"skews\": [\n 123\n ],\n \"smiles\": [\n 123\n ],\n \"spot_ref\": 123,\n \"vols\": [\n 123\n ],\n \"dividend_index_id\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n },\n \"futures_code\": {\n \"$type\": \"Derivitec.Web.Core.MarketData.InstrumentIdentifier, Derivitec.Web.Core\",\n \"code\": \"<string>\",\n \"market_identification_code\": \"<string>\"\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"$type": "Derivitec.Web.Core.ApiBaseResponse, Derivitec.Web.Core",
"is_success": true,
"error_messages": []
}Authorizations
OAuth2 access-token requested from AWS Cognito and provided as a Auth Bearer header
Body
The upload payload. Provide either ProviderId or MarketDataEnvironmentName, not both; omitting both selects the caller's organisation scope. VolSurfaces must contain at least one surface with a dividend-index identifier or futures code, reference date, spot reference, and aligned SVI parameter vectors; Vols values use decimal volatility units.
Submits dividend-index volatility surfaces.
Derivitec.Web.Core.MarketData.ApiUploadDividendIndexVolSurfacesRequest, 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.
Dividend-index volatility surfaces to upload.
Show child attributes
Show child attributes
Response
Returns whether any surfaces were stored and errors for invalid providers, unsupported or ambiguous identifiers, conflicting duplicates, or invalid surface data.
Common operation outcome containing a success indicator and any error messages.
Derivitec.Web.Core.ApiBaseResponse, 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?