Objects
Envelope
The fields every JSON response carries.
Every JSON response, keyed or not, carries these fields beside the route’s own. They say which nightly session the answer describes, where the data came from, and the disclaimer an agent must repeat when it presents a setup as something the user might act on.
Fields
| Field | Type | Description |
|---|---|---|
api_version | string | The contract version, always v1. Field names in v1 do not change, and v1 stays available at least 12 months after a v2 ships. Always v1. |
as_of_session | date · nullable | The last trading session the data describes, as an ISO date. Setups change nightly, so say it when presenting data and do not cache setups across days. Null on routes that do not read a dated artifact (account, tickers, history, families, universe and the demo index). |
data_version | string · nullable | Identifier of the stored artifact the answer came from: the candidate-book generation for patterns, the sealed manifest for family records. Null when the route reads no versioned artifact. |
source | object | Who produced the data. Constant on every response. |
source.name | string | Always "TradingPal". |
source.url | url | Always https://tradingpal.io. |
disclaimer | string | The educational-use disclaimer, constant on every response. Repeat it when presenting a setup as something the user might act on. Always Educational breakout-pattern analysis from TradingPal, not investment advice. Past results do not guarantee future outcomes.. |
Example
{
"api_version": "v1",
"as_of_session": "2026-09-25"
}