---
title: "GetStorageFacilityDetail"
method: GET
path: "/api/supply-chain/v1/get-storage-facility-detail"
tags: ["SupplyChainService"]
---

# GetStorageFacilityDetail

`GET /api/supply-chain/v1/get-storage-facility-detail`

## Request

- Base URL: `https://api.worldmonitor.app`
- URL: `https://api.worldmonitor.app/api/supply-chain/v1/get-storage-facility-detail`
- Auth: one of:
  - API key in header `X-WorldMonitor-Key`
  - API key in header `X-Api-Key`

GetStorageFacilityDetail returns a single facility with full evidence bundle + revision log. Loaded lazily on drawer open.

## Query parameters

- `facilityId` string, required
- `jmespath` string

## Response `200`

OK

- WorldmonitorSupplyChainV1GetStorageFacilityDetailResponse
  - `facility` WorldmonitorSupplyChainV1StorageFacilityEntry
    - `id` string
    - `name` string
    - `operator` string
    - `facilityType` string: One of: "ugs" | "spr" | "lng_export" | "lng_import" | "crude_tank_farm"
    - `country` string
    - `location` WorldmonitorSupplyChainV1StorageLatLon
      - `lon` number, double
      - `lat` number, double
    - `capacityTwh` number, double: Working capacity in the facility's native unit (see working_capacity_unit). Exactly ONE of these is populated per facility, chosen by facility_type: ugs → capacity_twh spr, crude_tank_farm → capacity_mb lng_export, lng_import → capacity_mtpa
    - `capacityMb` number, double
    - `capacityMtpa` number, double
    - `workingCapacityUnit` string: One of: "TWh" | "Mb" | "Mtpa"
    - `inService` integer
    - `evidence` WorldmonitorSupplyChainV1StorageEvidence
      - `physicalState` string: One of: "operational" | "reduced" | "offline" | "under_construction" | "unknown"
      - `physicalStateSource` string: One of: "operator" | "regulator" | "press" | "satellite" | "ais-relay"
      - `operatorStatement` WorldmonitorSupplyChainV1StorageOperatorStatement
        - `text` string
        - `url` string
        - `date` string
      - `commercialState` string: One of: "under_contract" | "expired" | "suspended" | "unknown"
      - `sanctionRefs` WorldmonitorSupplyChainV1StorageSanctionRef[]
        - `authority` string
        - `listId` string
        - `date` string
        - `url` string
      - `fillDisclosed` boolean: Whether working-gas / stock-level fill is publicly disclosed for this asset. LNG export terminals, for instance, tend NOT to disclose; UGS sites in Europe are required to disclose via GIE AGSI+.
      - `fillSource` string: Source of the disclosed fill series ("GIE AGSI+", "EIA SPR weekly stock report", etc.). Empty when fill_disclosed=false.
      - `lastEvidenceUpdate` string
      - `classifierVersion` string
      - `classifierConfidence` number, double
    - `publicBadge` string: Server-derived public badge. One of: "operational" | "reduced" | "offline" | "disputed"
  - `revisions` WorldmonitorSupplyChainV1StorageFacilityRevisionEntry[]
    - `date` string
    - `fieldChanged` string
    - `previousValue` string
    - `newValue` string
    - `trigger` string: One of: "classifier" | "source" | "decay" | "override"
    - `sourcesUsed` string[]
    - `classifierVersion` string
  - `fetchedAt` string
  - `unavailable` boolean

## Other responses

- `400`: Validation error
- `401`: Missing or invalid API key.
- `403`: API access requires an active subscription (the API key's subscription is inactive or expired).
- `429`: Rate limit exceeded.
- `503`: Service unavailable. Billing-verification responses include code and X-Billing-Verification; other gateway infrastructure failures use the generic GatewayError shape.
- `default`: Gateway or handler error response.

---

[API](https://skmtc.dev/worldmonitor/apis/worldmonitor-api.md) · [All operations](https://skmtc.dev/worldmonitor/apis/worldmonitor-api/llms.txt) · [OpenAPI document](https://skmtc.dev/worldmonitor/apis/worldmonitor-api/revisions/e3dc8463a5c9?raw)
