curl --request PATCH \
--url https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status"
payload = {}
headers = {"Content-Type": "application/json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status', 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.example.com/api/graph/v1/action-cards-v2/{card_id}/status",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/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.example.com/api/graph/v1/action-cards-v2/{card_id}/status"
payload := strings.NewReader("{}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request.body = "{}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"source": "manual",
"underlying_symbol": "<string>",
"instrument_type": "equity",
"instrument_symbol": "<string>",
"direction": "LONG",
"timeframe": "intraday",
"entry_price": "<string>",
"stop_loss": "<string>",
"targets": [
{
"price": "<string>",
"exit_pct": 50,
"label": "<string>"
}
],
"status": "draft",
"completeness": "skeleton",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"risk_reward": "<string>",
"source_id": "<string>",
"group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"group_role": "<string>",
"contract": {
"symbol": "<string>",
"expiration": "<string>",
"strike": "<string>",
"option_type": "call",
"delta": 123,
"gamma": 123,
"theta": 123,
"vega": 123,
"iv": 123,
"iv_percentile": 123,
"bid": "<string>",
"ask": "<string>",
"mid": "<string>",
"spread_pct": 123,
"oi": 123,
"volume": 123,
"dte": 123
},
"premium_levels": {
"entry": "<string>",
"stop": "<string>",
"t1": "<string>",
"t2": "<string>",
"breakeven": "<string>"
},
"market_context": {
"regime": {
"classification": "<string>",
"confidence": 123,
"vix": 123,
"vix_context": "<string>"
},
"day_type": {
"classification": "<string>",
"confidence": 123,
"size_modifier": 123
},
"confluence": {
"bull": 123,
"bear": 123,
"net": 123,
"tier": "<string>",
"bias": "<string>"
},
"trend": {
"price": 123,
"ema20": 123,
"sma50": 123,
"sma200": 123,
"stack_valid": true
},
"volume": {
"rvol": 123,
"trend": "<string>",
"breakout_node": "<string>"
},
"institutional_levels": {
"vwap": 123,
"ib_high": 123,
"ib_low": 123,
"poc": 123,
"vah": 123,
"val": 123,
"pivots": {}
}
},
"sizing": {
"shares_or_contracts": 123,
"risk_per_unit": "<string>",
"risk_dollars": "<string>",
"position_value": "<string>",
"portfolio_heat_pct": 123,
"day_type_modifier": 123,
"vix_modifier": 123,
"consecutive_loss_modifier": 123
},
"entry_plan": {
"order_type": "<string>",
"limit_price": "<string>",
"trigger_conditions": [
"<string>"
],
"trigger_type": "<string>",
"trigger_level": "<string>",
"entry_zone": {},
"scaling": [
{}
],
"invalidation": "<string>",
"time_window": "<string>"
},
"exit_plan": {
"stop_type": "<string>",
"trail_offset": "<string>",
"time_stop": "<string>",
"partial_targets": [
{}
],
"stop_management": {},
"time_stops": {},
"invalidations": [
{}
]
},
"risk_context": {
"portfolio_heat_before": 123,
"portfolio_heat_after": 123,
"correlated_positions": [
"<string>"
],
"max_daily_loss_used": 123,
"gates_passed": [
"<string>"
],
"gates_failed": [
"<string>"
],
"daily_pnl_pct": 123,
"weekly_pnl_pct": 123,
"open_positions": 123,
"available_slots": 123,
"cleared_to_trade": true
},
"validation": {
"confidence": 123,
"key_risk": "<string>",
"debate_id": "<string>",
"thesis_alignment": "<string>",
"edge_quality": "<string>",
"deciding_factors": [
"<string>"
],
"agent_session_id": "<string>",
"reasoning": "<string>",
"pop": 123,
"pop_source": "<string>",
"pop_sample_size": 123,
"rationale": "<string>"
},
"backtest_edge": {
"total_trades": 123,
"win_rate": 123,
"avg_r": 123,
"profit_factor": 123,
"edge_quality": "<string>",
"similar_setups": [
{}
]
},
"execution_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"outcome": {
"pnl_dollars": "<string>",
"pnl_pct": 123,
"r_multiple": 123,
"exit_reason": "<string>",
"hold_days": 123,
"filled_price": "<string>",
"closed_at": "2023-11-07T05:31:56Z"
},
"time_validity": "<string>",
"change_log": [
{}
],
"expires_at": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Update action card status
Transition action card to a new status.
curl --request PATCH \
--url https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status"
payload = {}
headers = {"Content-Type": "application/json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status', 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.example.com/api/graph/v1/action-cards-v2/{card_id}/status",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/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.example.com/api/graph/v1/action-cards-v2/{card_id}/status"
payload := strings.NewReader("{}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/graph/v1/action-cards-v2/{card_id}/status")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request.body = "{}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"source": "manual",
"underlying_symbol": "<string>",
"instrument_type": "equity",
"instrument_symbol": "<string>",
"direction": "LONG",
"timeframe": "intraday",
"entry_price": "<string>",
"stop_loss": "<string>",
"targets": [
{
"price": "<string>",
"exit_pct": 50,
"label": "<string>"
}
],
"status": "draft",
"completeness": "skeleton",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"risk_reward": "<string>",
"source_id": "<string>",
"group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"group_role": "<string>",
"contract": {
"symbol": "<string>",
"expiration": "<string>",
"strike": "<string>",
"option_type": "call",
"delta": 123,
"gamma": 123,
"theta": 123,
"vega": 123,
"iv": 123,
"iv_percentile": 123,
"bid": "<string>",
"ask": "<string>",
"mid": "<string>",
"spread_pct": 123,
"oi": 123,
"volume": 123,
"dte": 123
},
"premium_levels": {
"entry": "<string>",
"stop": "<string>",
"t1": "<string>",
"t2": "<string>",
"breakeven": "<string>"
},
"market_context": {
"regime": {
"classification": "<string>",
"confidence": 123,
"vix": 123,
"vix_context": "<string>"
},
"day_type": {
"classification": "<string>",
"confidence": 123,
"size_modifier": 123
},
"confluence": {
"bull": 123,
"bear": 123,
"net": 123,
"tier": "<string>",
"bias": "<string>"
},
"trend": {
"price": 123,
"ema20": 123,
"sma50": 123,
"sma200": 123,
"stack_valid": true
},
"volume": {
"rvol": 123,
"trend": "<string>",
"breakout_node": "<string>"
},
"institutional_levels": {
"vwap": 123,
"ib_high": 123,
"ib_low": 123,
"poc": 123,
"vah": 123,
"val": 123,
"pivots": {}
}
},
"sizing": {
"shares_or_contracts": 123,
"risk_per_unit": "<string>",
"risk_dollars": "<string>",
"position_value": "<string>",
"portfolio_heat_pct": 123,
"day_type_modifier": 123,
"vix_modifier": 123,
"consecutive_loss_modifier": 123
},
"entry_plan": {
"order_type": "<string>",
"limit_price": "<string>",
"trigger_conditions": [
"<string>"
],
"trigger_type": "<string>",
"trigger_level": "<string>",
"entry_zone": {},
"scaling": [
{}
],
"invalidation": "<string>",
"time_window": "<string>"
},
"exit_plan": {
"stop_type": "<string>",
"trail_offset": "<string>",
"time_stop": "<string>",
"partial_targets": [
{}
],
"stop_management": {},
"time_stops": {},
"invalidations": [
{}
]
},
"risk_context": {
"portfolio_heat_before": 123,
"portfolio_heat_after": 123,
"correlated_positions": [
"<string>"
],
"max_daily_loss_used": 123,
"gates_passed": [
"<string>"
],
"gates_failed": [
"<string>"
],
"daily_pnl_pct": 123,
"weekly_pnl_pct": 123,
"open_positions": 123,
"available_slots": 123,
"cleared_to_trade": true
},
"validation": {
"confidence": 123,
"key_risk": "<string>",
"debate_id": "<string>",
"thesis_alignment": "<string>",
"edge_quality": "<string>",
"deciding_factors": [
"<string>"
],
"agent_session_id": "<string>",
"reasoning": "<string>",
"pop": 123,
"pop_source": "<string>",
"pop_sample_size": 123,
"rationale": "<string>"
},
"backtest_edge": {
"total_trades": 123,
"win_rate": 123,
"avg_r": 123,
"profit_factor": 123,
"edge_quality": "<string>",
"similar_setups": [
{}
]
},
"execution_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"outcome": {
"pnl_dollars": "<string>",
"pnl_pct": 123,
"r_multiple": 123,
"exit_reason": "<string>",
"hold_days": 123,
"filled_price": "<string>",
"closed_at": "2023-11-07T05:31:56Z"
},
"time_validity": "<string>",
"change_log": [
{}
],
"expires_at": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Path Parameters
Body
Request body for status-only updates.
Action card lifecycle status.
draft, active, monitoring, closed, expired, dismissed Response
Successful Response
Full action card response.
How the action card was created.
manual, debate, rules, agent Instrument type for the action card.
equity, option LONG, SHORT intraday, swing, position ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Show child attributes
Show child attributes
Action card lifecycle status.
draft, active, monitoring, closed, expired, dismissed Completeness tier based on enrichment sections present.
skeleton, enriched, actionable, validated ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$Options contract details.
Show child attributes
Show child attributes
Premium-based levels for options trades.
Show child attributes
Show child attributes
Combined market context for enrichment.
Show child attributes
Show child attributes
Position sizing details.
Show child attributes
Show child attributes
Entry execution plan.
Show child attributes
Show child attributes
Exit execution plan.
Show child attributes
Show child attributes
Risk guardian context at card creation.
Show child attributes
Show child attributes
Validation context from debate or analysis.
Show child attributes
Show child attributes
Historical backtest edge data.
Show child attributes
Show child attributes
Post-trade outcome tracking.
Show child attributes
Show child attributes