---
title: "Credit Facilities"
method: GET
path: "/api/footnotes/credit-facilities"
tags: ["Footnotes"]
---

# Credit Facilities

`GET /api/footnotes/credit-facilities`

![Pro](https://img.shields.io/badge/Pro-8b5cf6)

Returns a company's credit facilities, revolvers, term-loan agreements, commercial-paper programs, one entry per facility, with total capacity, amount drawn, remaining headroom, letters of credit, commitment fees, and interest rates. This is the liquidity picture from the debt footnote that never appears on the face of the balance sheet.

Each entry is one borrowing **arrangement**: either a facility-level row (`debtInstrumentMember: null`) or one drawn line under a facility that the filer tagged crossed with the XBRL debt-instrument axis (`debtInstrumentMember` names the tranche, linking it to the Debt Structure endpoint). Entries sharing the same `member` are a facility/category rollup beside its component lines, e.g. a mortgage lender's warehouse-lines category total next to each individual line. Values from different arrangements are never mixed into one entry, so `utilization` (derived as `outstanding / maxCapacity` when both sides are present in a single known currency) is always internally consistent. When summing across facilities, use only the rollup rows or only the component rows, never both.

Monetary values default to **US dollars**. Pass the `currency` parameter to receive any supported ISO 4217 currency instead: values not already in that currency are converted at the period-end spot rate, and the per-period `fx` block records the exact rate(s) applied so each conversion is reproducible. Pass `currency=original` for as-filed values. Rates and fees are fractions of 1 (`0.015` = 1.5%) and are never converted.

**What this data can tell you:**
- Available liquidity: undrawn capacity per facility.
- Utilization trend as an early stress indicator.
- Borrowing-base limits (current vs maximum capacity).
- Cost of keeping unused capacity (commitment and unused fees).

**Data honesty notes:**
- A minority of filers mis-tag rates as whole percents (`1.5` instead of `0.015`); such values are re-scaled to fractions and the entry is flagged `normalized: true`.
- Coverage is US-GAAP filers (10-K/10-Q); the credit-facility axis does not exist in the IFRS taxonomy.
- Values are point-in-time snapshots at the fiscal period end. In the quarterly view the fiscal-year-end snapshot appears as `Q4`.

## Query parameters

- `symbol` string
- `cik` integer
- `cusip` string
- `composite_figi` string
- `share_class_figi` string
- `currency` string
- `period` 'annual' | 'quarter' — Base reporting period: `annual` or `quarter` (the periods companies actually report, without the derived `ttm` rollup).
- `limit` integer

## Response `200`

Per-facility capacity, drawn amounts, and terms, organized by period

- object[]
  - `period` string, date — The fiscal period end date (YYYY-MM-DD), the balance-sheet date the values are measured at
  - `fiscalYear` integer — The company's fiscal year (handles non-December year-ends).
  - `fiscalPeriod` 'FY' | 'Q1' | 'Q2' | 'Q3' | 'Q4' — Fiscal period of a reported value: `FY` (annual) or `Q1`-`Q4` (quarterly).
  - `facilities` object[] — One entry per credit facility, sorted by total capacity descending. Fields the filer did not tag are omitted, not serialized as `null`.
    - `member` string — Raw XBRL member QName of the facility
    - `name` string — Derived display label
    - `debtInstrumentMember` string, nullable — Tranche member this entry's values were tagged on (crossed with the debt-instrument axis); links to the same tranche in the Debt Structure endpoint. Null for facility-level rows; entries sharing a `member` are the rollup beside its component lines.
    - `debtInstrumentName` string, nullable — Derived display label of `debtInstrumentMember`
    - `currency` string, nullable — Currency of the monetary values after conversion (the requested `currency` unless listed in `fx.unconverted`); null when the entry's values remain in mixed currencies or no monetary field is present
    - `normalized` boolean — Only present (as `true`) when a rate value was re-scaled from a mis-tagged whole percent (`1.5`) to a fraction (`0.015`).
    - `utilization` number — Derived `outstanding / maxCapacity`; only present when both sides exist in one known currency and capacity > 0. Values above 1 indicate drawn beyond stated capacity as filed.
    - `maxCapacity` number — Maximum borrowing capacity of the facility
    - `outstanding` number — Amount drawn / outstanding under the facility
    - `remainingCapacity` number — Remaining undrawn capacity as disclosed by the filer
    - `currentCapacity` number — Currently available borrowing capacity (can be below maximum when covenants or borrowing-base limits apply)
    - `lettersOfCredit` number — Letters of credit outstanding under the facility
    - `statedRate` number — Stated interest rate as a fraction of 1
    - `effectiveRate` number — Effective interest rate as a fraction of 1
    - `rateAtPeriodEnd` number — Interest rate in effect at the period end as a fraction of 1
    - `variableSpread` number — Basis spread over the variable benchmark rate as a fraction of 1
    - `commitmentFee` number — Commitment fee as a fraction of 1
    - `unusedFee` number — Fee on unused capacity as a fraction of 1
    - `weightedAverageRate` number — Weighted-average interest rate as a fraction of 1
  - `dateFiled` string, date, nullable — SEC filing acceptance date of the newest filing contributing to this period. Use this to gate point-in-time data and avoid lookahead bias.
  - `fx` FxConversion — 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, required — 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` string[], required — 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` object[], required — One entry per (source currency, method) actually applied. `rate` is the multiplier: `target = original * rate`.
      - `from` string, required — ISO 4217 source currency that was converted.
      - `method` 'spot' | 'average', required — `spot` for instant balance-sheet items (rate at period end); `average` for flow income/cash-flow items (day-weighted mean over the period).
      - `rate` number, required — 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` object — 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.

## Other responses

- `400` — Invalid parameters or symbol not found
- `403` — Feature not available on current plan

## Changes

- **2026-08-24** `5ab763e6f203` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/stockfit/apis/stockfit-api/changes/api/footnotes/credit-facilities/get.md)

---

[API](https://skmtc.dev/stockfit/apis/stockfit-api.md) · [All operations](https://skmtc.dev/stockfit/apis/stockfit-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/stockfit/stockfit-api/revisions/256933c2bdd2/schema)
