curl --request POST \
--url https://api.riskportal.activeviam.com/api/Position/ValidateTrade \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"$type": "Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core",
"reporting_currency": "USD",
"request_id": "<string>",
"calculate_risk": true
}
'import requests
url = "https://api.riskportal.activeviam.com/api/Position/ValidateTrade"
payload = {
"$type": "Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core",
"reporting_currency": "USD",
"request_id": "<string>",
"calculate_risk": True
}
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.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core',
reporting_currency: 'USD',
request_id: '<string>',
calculate_risk: true
})
};
fetch('https://api.riskportal.activeviam.com/api/Position/ValidateTrade', 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/Position/ValidateTrade",
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.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core',
'reporting_currency' => 'USD',
'request_id' => '<string>',
'calculate_risk' => true
]),
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/Position/ValidateTrade"
payload := strings.NewReader("{\n \"$type\": \"Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core\",\n \"reporting_currency\": \"USD\",\n \"request_id\": \"<string>\",\n \"calculate_risk\": true\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/Position/ValidateTrade")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"$type\": \"Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core\",\n \"reporting_currency\": \"USD\",\n \"request_id\": \"<string>\",\n \"calculate_risk\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.riskportal.activeviam.com/api/Position/ValidateTrade")
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.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core\",\n \"reporting_currency\": \"USD\",\n \"request_id\": \"<string>\",\n \"calculate_risk\": true\n}"
response = http.request(request)
puts response.read_body{
"$type": "Derivitec.Web.Core.TradeBooking.ApiValidateTradeResponse, Derivitec.Web.Core",
"is_success": true,
"error_messages": [
"<string>"
],
"parsed_trades": {
"$type": "Derivitec.Web.Core.Positions.ParseImportDataTableResponse, Derivitec.Web.Core",
"amended_position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"books_to_be_created": [
{
"description": "<string>",
"name": "Example book",
"$type": "Derivitec.Web.Core.Book.BookCreateViewModel, Derivitec.Web.Core",
"parent_portfolio_ids": [
123
]
}
],
"closed_position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"deleted_position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"is_valid": true,
"message": "<string>",
"parse_errors": [
{
"$type": "Derivitec.Web.Core.ParseError, Derivitec.Web.Core",
"error_column": "<string>",
"error_columns": [
"<string>"
],
"message": "<string>",
"row": {
"row_error": "<string>",
"row_state": "detached",
"table": null,
"item_array": [
"<unknown>"
],
"has_errors": true
},
"tab": "<string>",
"error_level": "error"
}
],
"parse_warnings": [
{
"$type": "Derivitec.Web.Core.ParseError, Derivitec.Web.Core",
"error_column": "<string>",
"error_columns": [
"<string>"
],
"message": "<string>",
"row": {
"row_error": "<string>",
"row_state": "detached",
"table": null,
"item_array": [
"<unknown>"
],
"has_errors": true
},
"tab": "<string>",
"error_level": "error"
}
],
"position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"restored_position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"table_messages": [
{
"key": "<string>",
"value": "<string>"
}
],
"tradable_view_models": [
{
"key": "<string>",
"value": {
"$type": "Derivitec.Web.Core.Tradables.TradableViewModel, Derivitec.Web.Core",
"contract_type": "<string>",
"currency": "<string>",
"display_name": "<string>",
"error_message": "<string>",
"id": 123,
"identifier": "",
"market_date": "2023-11-07T05:31:56Z",
"pricing_details_model": {
"$type": "Derivitec.Web.Core.PricingDetailsModel, Derivitec.Web.Core",
"data": [
{
"$type": "Derivitec.Web.Core.KeyValuePairViewModel, Derivitec.Web.Core",
"error_message": "<string>",
"format_string": "<string>",
"key": "<string>",
"scales_by_qty": false,
"value": "<string>",
"currency": "<string>"
}
],
"error_message": "<string>"
},
"quantity": 123,
"quantity_round_to_nearest": 123,
"results": [
{}
],
"tradable_risk_data": {
"$type": "Derivitec.Web.Core.Tradables.TradableRiskDataModel, Derivitec.Web.Core",
"error_message": "<string>",
"unit_risks": [
{
"$type": "Derivitec.Web.Core.KeyValuePairViewModel, Derivitec.Web.Core",
"error_message": "<string>",
"format_string": "<string>",
"key": "<string>",
"scales_by_qty": false,
"value": "<string>",
"currency": "<string>"
}
]
},
"client_security_id": "<string>",
"show_live_data_refresh": true,
"live_data_snapshot_time": "2023-11-07T05:31:56Z"
}
}
],
"custom_column_mappings": [
{
"key": "<string>",
"value": "<string>"
}
]
},
"pricing_details": {
"$type": "Derivitec.Web.Core.PricingDetailsModel, Derivitec.Web.Core",
"data": [
{
"$type": "Derivitec.Web.Core.KeyValuePairViewModel, Derivitec.Web.Core",
"error_message": "<string>",
"format_string": "<string>",
"key": "<string>",
"scales_by_qty": false,
"value": "<string>",
"currency": "<string>"
}
],
"error_message": "<string>"
},
"fair_unit_price": 123,
"requires_unit_price": true,
"unit_price_tool_tip": "<string>",
"data_tables": [
{
"headers": {},
"rows": "<unknown>",
"table_header": "Example results",
"column_formatters": {}
}
],
"tradable_risk_data": {
"$type": "Derivitec.Web.Core.Tradables.TradableRiskDataModel, Derivitec.Web.Core",
"error_message": "<string>",
"unit_risks": [
{
"$type": "Derivitec.Web.Core.KeyValuePairViewModel, Derivitec.Web.Core",
"error_message": "<string>",
"format_string": "<string>",
"key": "<string>",
"scales_by_qty": false,
"value": "<string>",
"currency": "<string>"
}
]
},
"request_id": "<string>"
}Validate one proposed trade and optionally calculate risk.
Parses one proposed position against books visible to the caller without booking it. When CalculateRisk is true, the response also includes pricing details, market-data tables, and unit-risk outputs in ReportingCurrency. RequestId is echoed for correlation. Inspect ParsedTrades.IsValid for parse status. This is read-only.
curl --request POST \
--url https://api.riskportal.activeviam.com/api/Position/ValidateTrade \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '
{
"$type": "Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core",
"reporting_currency": "USD",
"request_id": "<string>",
"calculate_risk": true
}
'import requests
url = "https://api.riskportal.activeviam.com/api/Position/ValidateTrade"
payload = {
"$type": "Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core",
"reporting_currency": "USD",
"request_id": "<string>",
"calculate_risk": True
}
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.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core',
reporting_currency: 'USD',
request_id: '<string>',
calculate_risk: true
})
};
fetch('https://api.riskportal.activeviam.com/api/Position/ValidateTrade', 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/Position/ValidateTrade",
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.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core',
'reporting_currency' => 'USD',
'request_id' => '<string>',
'calculate_risk' => true
]),
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/Position/ValidateTrade"
payload := strings.NewReader("{\n \"$type\": \"Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core\",\n \"reporting_currency\": \"USD\",\n \"request_id\": \"<string>\",\n \"calculate_risk\": true\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/Position/ValidateTrade")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json-patch+json")
.body("{\n \"$type\": \"Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core\",\n \"reporting_currency\": \"USD\",\n \"request_id\": \"<string>\",\n \"calculate_risk\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.riskportal.activeviam.com/api/Position/ValidateTrade")
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.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core\",\n \"reporting_currency\": \"USD\",\n \"request_id\": \"<string>\",\n \"calculate_risk\": true\n}"
response = http.request(request)
puts response.read_body{
"$type": "Derivitec.Web.Core.TradeBooking.ApiValidateTradeResponse, Derivitec.Web.Core",
"is_success": true,
"error_messages": [
"<string>"
],
"parsed_trades": {
"$type": "Derivitec.Web.Core.Positions.ParseImportDataTableResponse, Derivitec.Web.Core",
"amended_position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"books_to_be_created": [
{
"description": "<string>",
"name": "Example book",
"$type": "Derivitec.Web.Core.Book.BookCreateViewModel, Derivitec.Web.Core",
"parent_portfolio_ids": [
123
]
}
],
"closed_position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"deleted_position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"is_valid": true,
"message": "<string>",
"parse_errors": [
{
"$type": "Derivitec.Web.Core.ParseError, Derivitec.Web.Core",
"error_column": "<string>",
"error_columns": [
"<string>"
],
"message": "<string>",
"row": {
"row_error": "<string>",
"row_state": "detached",
"table": null,
"item_array": [
"<unknown>"
],
"has_errors": true
},
"tab": "<string>",
"error_level": "error"
}
],
"parse_warnings": [
{
"$type": "Derivitec.Web.Core.ParseError, Derivitec.Web.Core",
"error_column": "<string>",
"error_columns": [
"<string>"
],
"message": "<string>",
"row": {
"row_error": "<string>",
"row_state": "detached",
"table": null,
"item_array": [
"<unknown>"
],
"has_errors": true
},
"tab": "<string>",
"error_level": "error"
}
],
"position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"restored_position_effects": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectViewModel, Derivitec.Web.Core",
"book_id": 123,
"book_name": "<string>",
"client_transaction_id": "<string>",
"contract_size": 123,
"counterparty": "<string>",
"deleted": true,
"display_name": "<string>",
"id": 123,
"is_checked": true,
"leg": "<string>",
"position_effects_label_values": [
{
"$type": "Derivitec.Web.Core.Positions.PositionEffectsLabelValueViewModel, Derivitec.Web.Core",
"field": "<string>",
"label_id": 123,
"position_effect_id": 123,
"value": "<string>"
}
],
"quantity": 123,
"structure": "<string>",
"tool_tip": "<string>",
"tradable_identifier": "<string>",
"tradable_type": "<string>",
"trade_action": "<string>",
"upload_tradable_id_to_enfusion": true
}
],
"table_messages": [
{
"key": "<string>",
"value": "<string>"
}
],
"tradable_view_models": [
{
"key": "<string>",
"value": {
"$type": "Derivitec.Web.Core.Tradables.TradableViewModel, Derivitec.Web.Core",
"contract_type": "<string>",
"currency": "<string>",
"display_name": "<string>",
"error_message": "<string>",
"id": 123,
"identifier": "",
"market_date": "2023-11-07T05:31:56Z",
"pricing_details_model": {
"$type": "Derivitec.Web.Core.PricingDetailsModel, Derivitec.Web.Core",
"data": [
{
"$type": "Derivitec.Web.Core.KeyValuePairViewModel, Derivitec.Web.Core",
"error_message": "<string>",
"format_string": "<string>",
"key": "<string>",
"scales_by_qty": false,
"value": "<string>",
"currency": "<string>"
}
],
"error_message": "<string>"
},
"quantity": 123,
"quantity_round_to_nearest": 123,
"results": [
{}
],
"tradable_risk_data": {
"$type": "Derivitec.Web.Core.Tradables.TradableRiskDataModel, Derivitec.Web.Core",
"error_message": "<string>",
"unit_risks": [
{
"$type": "Derivitec.Web.Core.KeyValuePairViewModel, Derivitec.Web.Core",
"error_message": "<string>",
"format_string": "<string>",
"key": "<string>",
"scales_by_qty": false,
"value": "<string>",
"currency": "<string>"
}
]
},
"client_security_id": "<string>",
"show_live_data_refresh": true,
"live_data_snapshot_time": "2023-11-07T05:31:56Z"
}
}
],
"custom_column_mappings": [
{
"key": "<string>",
"value": "<string>"
}
]
},
"pricing_details": {
"$type": "Derivitec.Web.Core.PricingDetailsModel, Derivitec.Web.Core",
"data": [
{
"$type": "Derivitec.Web.Core.KeyValuePairViewModel, Derivitec.Web.Core",
"error_message": "<string>",
"format_string": "<string>",
"key": "<string>",
"scales_by_qty": false,
"value": "<string>",
"currency": "<string>"
}
],
"error_message": "<string>"
},
"fair_unit_price": 123,
"requires_unit_price": true,
"unit_price_tool_tip": "<string>",
"data_tables": [
{
"headers": {},
"rows": "<unknown>",
"table_header": "Example results",
"column_formatters": {}
}
],
"tradable_risk_data": {
"$type": "Derivitec.Web.Core.Tradables.TradableRiskDataModel, Derivitec.Web.Core",
"error_message": "<string>",
"unit_risks": [
{
"$type": "Derivitec.Web.Core.KeyValuePairViewModel, Derivitec.Web.Core",
"error_message": "<string>",
"format_string": "<string>",
"key": "<string>",
"scales_by_qty": false,
"value": "<string>",
"currency": "<string>"
}
]
},
"request_id": "<string>"
}Authorizations
OAuth2 access-token requested from AWS Cognito and provided as a Auth Bearer header
Body
JSON request with a non-null Position, optional caller RequestId, CalculateRisk (default false), and ReportingCurrency when risk is requested.
One proposed trade, optional caller correlation value, and choice to return pricing and risk data.
Derivitec.Web.Core.TradeBooking.ApiValidateTradeRequest, Derivitec.Web.Core Currency in which monetary results are expressed. When null, the service uses the caller's configured reporting currency or USD.
"USD"
Typed position or trade input containing booking references, quantity, contract data, trade details, and optional organisation metadata.
Show child attributes
Show child attributes
Optional caller correlation value echoed unchanged in the response.
Whether to attempt pricing details, market-data tables, and unit-risk data after parsing; defaults to false. These outputs can be absent when parsing or preparation fails.
Response
Returns the parsed trade and correlation identifier, plus optional pricing, market-data, and risk fields. Validation or calculation failures are carried in the payload.
Parsed trade and echoed correlation value, with risk outputs when requested preparation completes. Check ParsedTrades.IsValid because IsSuccess can remain true for a validation failure.
Derivitec.Web.Core.TradeBooking.ApiValidateTradeResponse, 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.
Detailed validation result for parsed positions, including proposed changes, missing books, warnings, and contract models.
Show child attributes
Show child attributes
Collection of display-ready pricing details with an optional overall error message.
Show child attributes
Show child attributes
The current fair price of one unit of the validated contract.
Whether booking this contract requires the user to supply a price paid.
Help text for the price paid input when a unit price is required.
Product-specific market-data tables returned only when risk calculation is requested and trade preparation succeeds.
Show child attributes
Show child attributes
Unit-risk values and an optional diagnostic for one tradable.
Show child attributes
Show child attributes
Caller correlation value copied from the validation request.
Was this page helpful?