Data Dictionary

API Field Reference — Version 1.4.4 · September 2026

This reference documents the fields returned by the REST API, endpoint by endpoint, and the columns of the Snowflake Marketplace free live sample (which mirrors the free teaser). The machine-readable contract is the OpenAPI spec; for the methodology behind any field, see the Methodology page. Identifier convention: event_id follows TACO-{year}-{NNNN} (e.g. TACO-2025-0042). No PII is included in any published distribution.
1. Enumerations 2. Event object 3. Index series 4. Tariff rates 5. Economic indicators 6. Price impact 7. Economic impact summary 8. Sector impact 9. Market reaction 10. TACO trade analysis 11. Federal Register documents 12. Event timeline 13. Free endpoint shapes

1. Enumerations

domain

ValueMeaning
tradeTrade & Tariffs — import tariffs, trade deals, sanctions, export controls
foreign_policyForeign Policy — military threats, diplomatic ultimatums, alliance threats
domesticDomestic Policy — executive orders, government shutdowns, personnel actions
rhetoricalRhetorical — lawsuits, boycotts, social media retaliation

status (event lifecycle)

ValueMeaning
detectedAI flagged, awaiting human review
confirmedHuman confirmed as a PEPI event
monitoringThreat made, watching for outcome
resolvedOutcome determined, composite score calculated
rejectedFalse positive — not a PEPI event; excluded from every published series

outcome_type

The outcome vocabulary, in increasing order of reversal. Reversal Magnitude is placed on a categorical scale keyed to this value for non-trade events, and measured quantitatively from the announced-vs-applied rate gap for trade events that stated an explicit rate.

ValueMeaning
full_implementationThreat carried out as stated
partial_implementationImplemented with material modifications
delayedDeadline pushed back; still pending
partial_reversalSubstantial walk-back but not total
reframedReversal dressed up as a victory
full_reversalComplete reversal
abandonedQuietly dropped, never mentioned again
indeterminateNon-trade event lapsed with no positive evidence. Not scored; excluded from the chicken-out rate.
pendingDefault. No outcome yet — event still monitoring.

outcome_evidence_source

The provenance of a resolved outcome — published on every event, including the free teaser, because a self-reported reversal is not a court-verified one. Outcomes evidenced only by the president's own posts are discounted in scoring.

ValueMeaning
courtA matched federal court ruling
congressA Congress.gov bill action
federal_registerAn implementing or withdrawing Federal Register document
independent reportingIndependently corroborated reporting from grounded web research
self_reportedOnly the president's own statements
noneProvisional outcome stamped at the end of the monitoring window with no evidence either way

statutory_authority (controlled vocabulary)

TokenLegal basis
IEEPAInternational Emergency Economic Powers Act, 50 U.S.C. §§1701–1708
Section_301Trade Act of 1974, §301 (unfair trade practices)
Section_232Trade Expansion Act of 1962, §232 (national security)
Section_122Trade Act of 1974, §122 (balance-of-payments)
Executive_OrderGeneric EO without enumerated authority
USMCAUnited States–Mexico–Canada Agreement
NoneNo enumerated authority (foreign-policy / rhetorical events)

threat_source

Where the threat was first observed: truth_social, executive_order, proclamation, memorandum, determination, ustr_notice, press_remarks. Free on every event — it says where the threat came from, not what it cost.

2. Event object

Returned by GET /api/v1/events (summary, Standard) and GET /api/v1/events/{event_id} (detail, Standard). The event objects in /api/v1/snapshot (free teaser) and /api/v1/snapshot/full (Standard) carry a subset of the same fields — identity, dates, status, score, summary — plus the two provenance markers and the live-pressure signals marked snapshot below; the free teaser carries none of the paid economic detail.

FieldTypeNullDescription
event_idstringNStable identifier: TACO-YYYY-NNNN
domainenumNTop-level domain (see §1)
sub_typestringNFiner category within the domain (e.g. tariff, sanction, military)
statusenumNLifecycle status (see §1)
threat_datetimestampNUTC timestamp the threat was made publicly
threat_summarystringNOne-line human-readable summary, ≤280 chars
target_entitiesstring[]NCountries, organizations, or persons targeted
severity_scoreintegerNInitial severity of the threat as stated, 0–100
stated_deadlinedateYNamed deadline. Null = the threat committed to no date
outcome_typeenumYFinal resolution (see §1; default pending)
composite_scorenumberYPEPI score 0–100. Null until resolved.
days_past_deadlineintegerYDays the effective deadline has been exceeded for an unresolved event; drives live pressure
threat_sourceenumYChannel the threat was observed on (see §1)
statutory_authorityenumYLegal authority invoked (see §1)
outcome_evidence_sourceenumYOutcome provenance (see §1) — published on every snapshot event, free tier included (snapshot)
live_pressure_scorenumberYProvisional pressure accrued by an overdue, unresolved threat; folds into index.live_value (snapshot)
Detail-only fields (/events/{event_id}):
threat_textstringNVerbatim threat text
stated_consequencestringYThe consequence the threat named
outcome_datetimestampYUTC timestamp the outcome was determined; always on or after threat_date
outcome_descriptionstringYHuman-readable account of how the event resolved
actual_consequencestringYWhat actually happened, against stated_consequence
reversal_magnitudenumberYReversal Magnitude dimension, 0–100
timeline_slippage_daysintegerYDays the action slipped past its stated deadline
rhetorical_dilutionnumberYRhetorical Dilution dimension. Null until a follow-up statement is matched to the event, in which case the dimension contributes nothing
scope_reduction_pctnumberYShare of the threatened scope exempted or removed in the final action
framing_shiftnumberYFraming Shift dimension — whether a reversal was claimed as a win
repetition_countintegerNNear-duplicate restatements collapsed into this event (posting volume). The cross-time lineage that feeds the Repetition dimension — which resolved prior threat this one re-makes — is exposed as the re-threat lineage view in the Snowflake sample.
market_threat_deltanumberYS&P 500 % change on threat day
market_outcome_deltanumberYS&P 500 % change on outcome day
taco_trade_returnnumberYTheoretical PEPI trade return (long threat→outcome)
analyst_notesstringYOperator notes recorded at review
confidencenumberNClassifier confidence that this is a PEPI event (0.0–1.0)

3. Index series

One row per calendar day. GET /api/v1/index/history (Standard) returns the composite and domain columns; the free snapshot's index_history and GET /api/v1/index/branch/{branch} (free) carry the branch-reaction columns and the S&P 500 context.

FieldTypeNullDescription
datedateNCalendar date (UTC)
composite_indexnumberNRecency-weighted composite PEPI score, 0–100
trade_indexnumberYTrade domain sub-index
foreign_policy_indexnumberYForeign-policy sub-index
domestic_indexnumberYDomestic policy sub-index
rhetorical_indexnumberYRhetorical sub-index. Like every sub-index, null only on dates before that domain has any scored events.
judicial_indexnumberYJudicial reaction sub-index: a 0–100 saturating measure of relevant court filings, activity-weighted by court, plus court-evidenced resolutions over a trailing window. 0 = no judicial activity.
congressional_indexnumberYCongressional reaction sub-index: the same construction over bill actions on legislation the tracked threats reference, plus congress-evidenced resolutions
active_eventsintegerYEvents with status in (confirmed, monitoring)
sp500_closenumberYS&P 500 close for the day (market context; carried forward over non-trading days; null before market-data coverage)

4. Tariff rates

GET /api/v1/tariff-rates (Standard) — latest applied rate per country

FieldTypeDescription
country_codestringISO-2 country code; coverage spans the major U.S. trading partners
avg_applied_pctnumberCustoms-value-weighted applied rate across the country's HS chapters
hs_chapter_countintegerHS chapters with data in the latest snapshot
data_as_ofdatePeriod end of the USITC snapshot

GET /api/v1/tariff-rates/detail?country= (Standard) — per HS chapter

FieldTypeDescription
country_codestringISO-2 country code
hs_codestringHS-2 chapter (e.g. 03 = Fish & Seafood)
applied_rate_pctnumber|nullEffective applied tariff rate as published by USITC — customs-collected duties relative to import value
snapshot_datedatePeriod end date of the USITC snapshot

GET /api/v1/events/{event_id}/tariff-rates (Premium) — statutory vs. applied per event

FieldTypeDescription
snapshot_datedateSnapshot the applied rate was measured on
statutory_rate_pctnumberAnnounced / headline tariff rate
applied_rate_pctnumberRate actually collected
statutory_applied_gapnumberAnnounced minus applied, in percentage points
gap_as_pct_of_announcednumberShare of the announced rate that was never collected
hs10_codesstring[]Product codes in scope, where the event names them
country_codesstring[]Countries the event targets

5. Economic indicators

GET /api/v1/economic-indicators (Standard). Time series from BLS and FRED; filter by series_id, source, and date range. Values are latest vintage — a revised observation replaces the earlier one (see data vintage & revisions).

FieldTypeNullDescription
series_idstringNThe publishing agency's series code
sourcestringNbls or fred
series_namestringYHuman-readable series name
observation_datedateNObservation period date
valuenumberYObserved value. Null = not yet released by source.
unitstringYUnits (e.g. index 1982-84=100, percent)

6. Price impact

GET /api/v1/events/{event_id}/price-impact (Premium). One row per observation date; the four-group BLS CPI proxy method for trade-domain events. Series are normalized to 1.0 at the threat date.

FieldTypeNullDescription
datedateNDate of this price observation
imported_affected_indexnumberNPrice index proxy for tariff-affected imports
domestic_affected_indexnumberYDomestic goods competing with tariffed imports
imported_trend_deviation_ppnumberNDeviation from pre-tariff trend (pp). Core price impact signal.
domestic_trend_deviation_ppnumberYDomestic spillover deviation (pp)
retail_passthrough_pctnumberYRolling estimate of how much of the applied tariff has reached retail prices (%)

7. Economic impact summary

GET /api/v1/events/{event_id}/economic-impact (Premium). The per-event summary of the tariff gap and its measured price consequences.

FieldTypeDescription
event_idstringParent event
statutory_rate_announcednumberAnnounced headline rate %
applied_rate_finalnumberApplied rate % from USITC
statutory_applied_gapnumberAnnounced minus applied (pp)
gap_as_pct_of_announcednumberShare of the announced rate never collected
price_impact_imported_ppnumberLatest measured deviation of affected import prices from trend (pp)
price_impact_domestic_ppnumberLatest measured domestic spillover (pp)
retail_passthrough_pctnumberLatest measured retail pass-through (%)
cpi_contribution_ppnumberEstimated contribution to all-items CPI (pp, expenditure-weighted)
consumer_burden_pctnumberConsumer share of the tariff cost (%)
firm_burden_pctnumberShare absorbed by firms (%)
low_price_quartile_impactnumberPrice impact on the lower price quartile within affected categories (pp)
high_price_quartile_impactnumberPrice impact on the upper price quartile (pp)
distributional_gap_ppnumberLower minus upper quartile impact
is_regressiveboolWhether lower-priced goods rose more
affected_product_countintegerProduct sample size behind the distributional figures
top_affected_sectorsstring[]Sectors with the largest measured import price impact
methodologystringCitation for the pass-through methodology

8. Sector impact

GET /api/v1/events/{event_id}/sector-impact (Standard). Returns {event_id, sectors[]}; one entry per consumer-price sector (COICOP level 3) touched by the event's applied tariff rates.

FieldTypeNullDescription
coicop3_codestringNCOICOP-3 sector code (e.g. HF = Household Furnishings)
coicop3_labelstringNHuman-readable sector name
imported_ppnumberYPrice impact on affected imports (pp)
domestic_ppnumberYSpillover to domestic competitors (pp)
cpi_contrib_ppnumberYCPI contribution from this sector (pp)
consumer_pctnumberYConsumer incidence share (%)
sourcestringYMeasurement basis for the row
as_ofdateYApplied-rate snapshot the row was computed from

9. Market reaction

GET /api/v1/events/{event_id}/market-impact (Premium). Daily market closes around threat/outcome dates. Market reaction is context — it is not an input to the behavioral score.

FieldTypeNullDescription
datedateNMarket session date
days_from_threatintegerNOffset from the threat date
sp500_closenumberNS&P 500 closing level
sp500_pct_changenumberNDay-over-day % change
vix_closenumberYCBOE VIX closing value
xlp_closenumberYConsumer-staples sector ETF close (domestic-spillover proxy)
xli_closenumberYIndustrials sector ETF close (firm-margin proxy)
xly_closenumberYConsumer-discretionary sector ETF close (import pass-through proxy)
eem_closenumberYEmerging-markets ETF close (origin-country incidence proxy)
cumulative_return_pctnumberNS&P 500 cumulative % return since the threat date

GET /api/v1/events/{event_id}/sector-reaction (Premium) and GET /api/v1/sector-reactions (Standard) derive threat-day and threat→outcome moves per sector, each relative to the S&P 500, from the same series.

10. TACO trade analysis

GET /api/v1/events/{event_id}/taco-trade (Premium). The theoretical return of a long position entered on the threat day and exited at the outcome.

FieldTypeDescription
event_idstringParent event
threat_date / outcome_datedateEntry and exit dates (exit null while unresolved)
sp500_at_threat / sp500_at_low / sp500_at_outcomenumberS&P 500 at entry, at the trough, and at exit
low_datedateDate of the trough between threat and outcome
taco_trade_entry_price / taco_trade_exit_pricenumberEntry and exit prices
taco_trade_return_pctnumber|nullReturn over the hold
hold_daysinteger|nullDays from threat to outcome
annualized_return_pctnumber|nullReturn annualized over the hold

11. Federal Register documents

GET /api/v1/events/{event_id}/federal-register (Standard). The Federal Register documents linked to an event — the one it was minted from, and the ones that implement or withdraw it.

FieldTypeNullDescription
document_numberstringNFR document number (e.g. 2025-12345)
titlestringNDocument title
typestringNFederal Register document type (presidential document, notice, …)
subtypestringYPresidential subtype: executive order, proclamation, memorandum, determination
publication_datedateYDate published in the Federal Register
effective_ondateYEffective date
abstractstringYFR abstract text
html_urlstringYCanonical URL on federalregister.gov
executive_order_numberstringYEO number (e.g. 14257)
proclamation_numberstringYProclamation number (e.g. 10908)
match_rolestringYHow the document relates to the event: initial (the document the event was minted from), auto (a linked candidate not yet judged), or the resolver's verdict — implementing, reversing, modifying, unrelated
match_confidencenumberYConfidence the link is correct (0.0–1.0)

12. Event timeline

GET /api/v1/events/{event_id}/timeline (Standard). Chronological log, one entry per event state change: a threat entry at creation, an outcome entry at terminal resolution, and review entries for operator actions.

FieldTypeNullDescription
entry_datetimestampNUTC timestamp of this entry (threat date or resolved outcome date)
entry_typestringNLifecycle type — threat, outcome, review
descriptionstringNHuman-readable summary of the entry
source_urlstringYCitation URL for the threat/outcome, when available
severity_deltaintegerNSigned change in severity this entry represents (negative for a reversal, positive for implementation, 0 otherwise)

13. Free endpoint shapes

/api/v1/index (Free)

FieldTypeDescription
valuefloatCurrent composite PEPI score (0–100)
trend_30dfloat30-day change in composite score
trend_90dfloat90-day change in composite score
active_eventsintEvents currently in confirmed or monitoring status
resolved_30dintEvents resolved in the last 30 days
as_ofdatePublication date of the latest index value

/api/v1/index/branch/{judicial|congressional} (Free)

FieldTypeDescription
valuefloatBranch reaction sub-index (0–100)
trend_30d / trend_90dfloatChange versus 30 and 90 days ago
activity_30dintUnderlying filings or bill actions in the trailing 30 days
resolutions_30dintBranch-evidenced event resolutions in the trailing 30 days
as_ofdateDate of the latest value

/api/v1/stats (Free)

FieldTypeDescription
total_eventsintScored and monitoring events in the catalogue
overall_avg_scorefloatMean composite score across resolved events
overall_chicken_rate_pctfloatShare of resolved events that ended in a reversal-type outcome
avg_days_to_reversalfloatMean span from threat to outcome
most_targeted_entitiesobject[]Entities most often targeted, with counts
domains[]object[]Per-domain totals: total_events, resolved, avg_score, avg_slippage_days, full_chickens, chicken_out_rate_pct

/api/v1/sources/status (Free)

FieldTypeDescription
sources[].source_idstringSource identifier
sources[].namestringSource category display name
sources[].descriptionstringWhat the source provides, in one line
sources[].update_cadencestringOfficial release frequency
sources[].rolestringRole in the index: threat detection, outcome resolution, economic measurement, or context
sources[].used_in_scoreboolWhether this source feeds the PEPI score
sources[].last_changeddate|null“Data through” — newest reference period in the source (a monthly report released mid-month carries the prior month's dates; expected)
sources[].last_ingesteddate|null“Last ingested” — when the pipeline last pulled this source (the freshness signal); null where no ingest stamp exists
sources[].record_countinteger|nullTotal rows this source has contributed — aggregate volume only (no row content); null if uncountable
sources[].fetch_failingbool|nullTrue when the most recent pull errored; null where the source records no fetch attempts
generated_atISO 8601Response generation timestamp

/api/v1/status/api-health (Free)

FieldTypeDescription
endpoints[].endpointstringProbed path
endpoints[].tierstringfree / standard / premium
endpoints[].verdictstringok / gap / slippage / drift / breakage / skipped
endpoints[].operationalboolWhether the verdict was ok
endpoints[].data_throughdate|nullNewest data the endpoint served
summaryobjecttotal, degraded, unmonitored counts
checked_atISO 8601When the probe ran