Returns per-program restructuring cost tracking from the restructuring footnote: what a named plan has cost to date, what it is expected to cost in total, and the quarterly trajectory of charges, reserve balance, and cash payments. A company's concurrent programs (e.g. Intel's 2024 and 2025 plans) read as separate series with their own histories, costToDate / expectedCost gives percent-complete per program.
Two series arrays:
programs: named plans (filer extension members on the restructuring-plan axis), active programs first.costTypes: cost-type series (severance, facility closing, contract termination); these are components and must never be summed with programs.Each series carries the latest-filed cumulative expectedCost / costToDate plus a history of per-period charges (flow), reserve (balance), cashPayments (flow), and costIncurred (flow). The quarterly view is first-class, charges and reserve are 10-Q facts.
Monetary values default to US dollars (currency parameter as on the statements endpoints: balances at spot, flows at the period-average rate, fx audit block, currency=original for as-filed).
What this data can tell you:
Data honesty notes:
symbol string optional Stock ticker symbol. Identify the entity by exactly one of: symbol, cik, cusip, composite_figi, or share_class_figi. At least one is required.
cik integer optional SEC Central Index Key (CIK).
cusip string optional CUSIP identifier (9 characters).
composite_figi string optional Composite OpenFIGI identifier.
share_class_figi string optional Share-class OpenFIGI identifier.
currency string optional Currency to return all monetary values in (default USD).
Pass any ISO 4217 code from the table below, or original to disable conversion and receive every figure in its own as-reported currency. With a target currency, any line item not already in it is converted on the fly at the period-appropriate rate (spot for balance-sheet instants, period-average for income/cash-flow flows); values already in the target pass through untouched (no round-trip), and the per-period fx block records the rate(s) applied. A currency that cannot be priced for a given period leaves those facts native and flags them under fx.unconverted.
Accepted values
| Code | Currency |
|---|---|
original |
Return every value in its original as-reported currency (no conversion) |
USD |
US Dollar, default |
AED |
United Arab Emirates Dirham |
AFN |
Afghan Afghani |
ALL |
Albanian Lek |
AMD |
Armenian Dram |
ANG |
Netherlands Antillean Guilder |
AOA |
Angolan Kwanza |
ARS |
Argentine Peso |
AUD |
Australian Dollar |
AWG |
Aruban Florin |
AZN |
Azerbaijani Manat |
BAM |
Bosnia-Herzegovina Convertible Mark |
BBD |
Barbadian Dollar |
BDT |
Bangladeshi Taka |
BGN |
Bulgarian Lev |
BHD |
Bahraini Dinar |
BIF |
Burundian Franc |
BMD |
Bermudan Dollar |
BND |
Brunei Dollar |
BOB |
Bolivian Boliviano |
BRL |
Brazilian Real |
BSD |
Bahamian Dollar |
BTN |
Bhutanese Ngultrum |
BWP |
Botswanan Pula |
BYN |
Belarusian Ruble |
BZD |
Belize Dollar |
CAD |
Canadian Dollar |
CDF |
Congolese Franc |
CHF |
Swiss Franc |
CLP |
Chilean Peso |
CNY |
Chinese Yuan |
COP |
Colombian Peso |
CRC |
Costa Rican Colón |
CUP |
Cuban Peso |
CVE |
Cape Verdean Escudo |
CZK |
Czech Koruna |
DJF |
Djiboutian Franc |
DKK |
Danish Krone |
DOP |
Dominican Peso |
DZD |
Algerian Dinar |
EGP |
Egyptian Pound |
ERN |
Eritrean Nakfa |
ETB |
Ethiopian Birr |
EUR |
Euro |
FJD |
Fijian Dollar |
FKP |
Falkland Islands Pound |
GBP |
British Pound |
GEL |
Georgian Lari |
GHS |
Ghanaian Cedi |
GIP |
Gibraltar Pound |
GMD |
Gambian Dalasi |
GNF |
Guinean Franc |
GTQ |
Guatemalan Quetzal |
GYD |
Guyanaese Dollar |
HKD |
Hong Kong Dollar |
HNL |
Honduran Lempira |
HTG |
Haitian Gourde |
HUF |
Hungarian Forint |
IDR |
Indonesian Rupiah |
ILS |
Israeli New Shekel |
INR |
Indian Rupee |
IQD |
Iraqi Dinar |
IRR |
Iranian Rial |
ISK |
Icelandic Króna |
JMD |
Jamaican Dollar |
JOD |
Jordanian Dinar |
JPY |
Japanese Yen |
KES |
Kenyan Shilling |
KGS |
Kyrgyz Som |
KHR |
Cambodian Riel |
KMF |
Comorian Franc |
KPW |
North Korean Won |
KRW |
South Korean Won |
KWD |
Kuwaiti Dinar |
KYD |
Cayman Islands Dollar |
KZT |
Kazakhstani Tenge |
LAK |
Laotian Kip |
LBP |
Lebanese Pound |
LKR |
Sri Lankan Rupee |
LRD |
Liberian Dollar |
LSL |
Lesotho Loti |
LYD |
Libyan Dinar |
MAD |
Moroccan Dirham |
MDL |
Moldovan Leu |
MGA |
Malagasy Ariary |
MKD |
Macedonian Denar |
MMK |
Myanmar Kyat |
MNT |
Mongolian Tugrik |
MOP |
Macanese Pataca |
MRU |
Mauritanian Ouguiya |
MUR |
Mauritian Rupee |
MVR |
Maldivian Rufiyaa |
MWK |
Malawian Kwacha |
MXN |
Mexican Peso |
MYR |
Malaysian Ringgit |
MZN |
Mozambican Metical |
NAD |
Namibian Dollar |
NGN |
Nigerian Naira |
NIO |
Nicaraguan Córdoba |
NOK |
Norwegian Krone |
NPR |
Nepalese Rupee |
NZD |
New Zealand Dollar |
OMR |
Omani Rial |
PAB |
Panamanian Balboa |
PEN |
Peruvian Sol |
PGK |
Papua New Guinean Kina |
PHP |
Philippine Peso |
PKR |
Pakistani Rupee |
PLN |
Polish Zloty |
PYG |
Paraguayan Guarani |
QAR |
Qatari Riyal |
RON |
Romanian Leu |
RSD |
Serbian Dinar |
RUB |
Russian Ruble |
RWF |
Rwandan Franc |
SAR |
Saudi Riyal |
SBD |
Solomon Islands Dollar |
SCR |
Seychellois Rupee |
SDG |
Sudanese Pound |
SEK |
Swedish Krona |
SGD |
Singapore Dollar |
SHP |
St. Helena Pound |
SLE |
Sierra Leonean Leone |
SOS |
Somali Shilling |
SRD |
Surinamese Dollar |
SSP |
South Sudanese Pound |
STN |
São Tomé & Príncipe Dobra |
SVC |
Salvadoran Colón |
SYP |
Syrian Pound |
SZL |
Swazi Lilangeni |
THB |
Thai Baht |
TJS |
Tajikistani Somoni |
TMT |
Turkmenistani Manat |
TND |
Tunisian Dinar |
TOP |
Tongan Paʻanga |
TRY |
Turkish Lira |
TTD |
Trinidad & Tobago Dollar |
TWD |
New Taiwan Dollar |
TZS |
Tanzanian Shilling |
UAH |
Ukrainian Hryvnia |
UGX |
Ugandan Shilling |
UYU |
Uruguayan Peso |
UZS |
Uzbekistani Som |
VES |
Venezuelan Bolívar |
VND |
Vietnamese Dong |
VUV |
Vanuatu Vatu |
WST |
Samoan Tala |
XAF |
Central African CFA Franc |
XCD |
East Caribbean Dollar |
XDR |
Special Drawing Rights |
XOF |
West African CFA Franc |
XPF |
CFP Franc |
YER |
Yemeni Rial |
ZAR |
South African Rand |
ZMW |
Zambian Kwacha |
ZWG |
Zimbabwean Gold |
period string (enum) optional History granularity: annual returns fiscal-year points; quarter returns the quarterly trajectory.
limit integer optional Maximum number of history points per series (may be clamped by subscription tier).
curl 'https://api.stockfit.io/v1/api/footnotes/restructuring?symbol=AAPL&cik=320193&cusip=037833100&composite_figi=BBG000B9XRY4&share_class_figi=BBG001S5N8V8¤cy=USD' \
-H 'Authorization: Bearer YOUR_API_TOKEN'Restructuring program and cost-type series
programs array of object Named restructuring programs, active first. Fields the filer did not tag are omitted.
member string Raw XBRL member QName of the program
name string Derived display label
currency string | null Currency of `expectedCost`/`costToDate` after conversion; null when mixed or no cumulative figure is tagged
expectedCost number Total cost the program is expected to incur, latest filed figure
costToDate number Cost incurred since program inception, latest filed figure
history array of object Newest first, up to `limit` points.
period string (date) fiscalYear integer fiscalPeriod string (enum) Fiscal period of a reported value: `FY` (annual) or `Q1`-`Q4` (quarterly).
FY, Q1, Q2, Q3, Q4charges number Restructuring charges expensed in the period (flow)
reserve number Restructuring reserve (accrual balance) at period end
cashPayments number Cash paid for restructuring in the period (flow)
costIncurred number Restructuring and related cost incurred in the period (flow)
currency string | null Currency of this point's monetary values after conversion
dateFiled string (date) | null SEC filing acceptance date of the newest filing contributing to this point, use to gate point-in-time access
costTypes array of object Cost-type series (severance, facility closing, ...), same shape as `programs`. Components of the programs; never sum the two arrays.
member string name string currency string | null expectedCost number costToDate number history array of object period string (date) fiscalYear integer fiscalPeriod string (enum) Fiscal period of a reported value: `FY` (annual) or `Q1`-`Q4` (quarterly).
FY, Q1, Q2, Q3, Q4charges number reserve number cashPayments number costIncurred number currency string | null dateFiled string (date) | null fx object Foreign-currency conversion audit for this period. Every monetary value in `facts` is in the requested `currency` (default **US dollars**). This block is absent when the period was already wholly in the target currency (e.g. a US filer with the default USD, nothing to convert). It is present when one or more line items were originally filed in a different currency and converted on the fly, and it records the exact rate(s) applied so the conversion can be reproduced. Rates come from the Frankfurter API (api.frankfurter.dev). Instant balance-sheet items use the spot rate at period end; flow income/cash-flow items use the day-weighted average rate over the period.
targetCurrency string The currency (ISO 4217) every `facts` value was converted INTO, the value of the request `currency` parameter (default USD). The literal `original` here means no conversion was requested: each fact stays in its as-reported currency (see `unconverted` for the per-fact mapping).
originalCurrencies array of string Every source currency (ISO 4217) that appeared in this period, the union of converted, unconverted, and already-in-target. The target currency itself is listed when some facts were natively in it (e.g. a foreign filer reporting some lines in USD alongside its converted local currency), so a mixed period reflects its true composition rather than appearing wholly converted.
rates array of object One entry per (source currency, method) actually applied. `rate` is the multiplier: `target = original * rate`.
from string ISO 4217 source currency that was converted.
method string (enum) `spot` for instant balance-sheet items (rate at period end); `average` for flow income/cash-flow items (day-weighted mean over the period).
spot, averagerate number Multiply the original-currency amount by this to get the `targetCurrency` amount.
effectiveDate string (date) Spot only: the date (YYYY-MM-DD) the applied rate was published (≤ period end).
start string (date) Average only: period start (YYYY-MM-DD).
end string (date) Average only: period end (YYYY-MM-DD).
unconverted map of string to array of string Facts that could NOT be converted (no published rate within tolerance, or an unsupported code/date), grouped by the currency they remain in: each key is a source ISO 4217 code, each value lists the curated fact names in `facts` still in that currency (NOT `targetCurrency`). Absent when everything converted. Use it to know exactly which figures to treat as native currency.
* array of string {
"programs": [
{
"member": "intc:A2025RestructuringPlanMember",
"name": "A 2025 Restructuring Plan",
"currency": "USD",
"expectedCost": 2200000000,
"costToDate": 2200000000,
"history": [
{
"period": "2026-03-28",
"fiscalYear": 2026,
"fiscalPeriod": {},
"charges": 25000000,
"reserve": 283000000,
"cashPayments": 159000000,
"costIncurred": 0,
"currency": "USD",
"dateFiled": "2026-04-24"
}
]
}
],
"costTypes": [
{
"member": "us-gaap:EmployeeSeveranceMember",
"name": "Employee Severance",
"currency": "string",
"expectedCost": 0,
"costToDate": 0,
"history": [
{
"period": "string",
"fiscalYear": 0,
"fiscalPeriod": {},
"charges": 0,
"reserve": 0,
"cashPayments": 0,
"costIncurred": 0,
"currency": "string",
"dateFiled": "string"
}
]
}
],
"fx": {}
}Invalid parameters or symbol not found
error string Human-readable error message
{}Feature not available on current plan
error string Human-readable error message
{}