---
title: "Get exposure graph by target id"
method: PUT
path: "/public/v1/alpha/exposure/target/{targetId}/graph"
tags: ["Exposure"]
---

# Get exposure graph by target id

`PUT /public/v1/alpha/exposure/target/{targetId}/graph`

## Request

- Base URL: `https://api.prewave.com`
- URL: `https://api.prewave.com/public/v1/alpha/exposure/target/{targetId}/graph`
- Auth: API key in header `X-Auth-Token`
- TypeScript: <https://skmtc.dev/prewave/apis/public-prewave-api/docs/public/v1/alpha/exposure/target/:targetId/graph/put.ts> (a function with typed inputs; its response is checked against the schema)

**Performance impact**: Medium

## Path parameters

- `targetId` integer, required

## Request body

- BaseExposurePayload
  - `maxTiers` integer, required
  - `type` 'Collection' | 'Target' | 'TargetList' | 'Country' | 'Alert' | 'Scenario', required
  - `scopePrivate` boolean, required
  - `scopeShared` boolean, required
  - `scopePublic` boolean, required
  - `sourceCustoms` boolean, required
  - `sourcePrewavePrediction` boolean, required
  - `sourceMedia` boolean, required
  - `sourceCustomer` boolean, required
  - `minShipments` integer, nullable
  - `minProbability` number, double, nullable
  - `shipmentsPeriodFrom` string, date, nullable
  - `shipmentsPeriodTo` string, date, nullable
  - `commodityFilter` CommodityFilter, required
    - `commodities` CommodityFilterId[], required
      - `treeId` integer, required
      - `commodityId` integer, required
      - `path` integer[], required
    - `suspectedSuppliers` boolean, required
    - `logisticsProvider` boolean, required
  - `collectionCommodityFilters` object, required
  - `exposedCollectionIds` integer[], required
  - `exposedTargetIds` integer[], required
  - `exposedTargetId` integer, nullable
  - `exposedCountryIds` integer[], required
  - `exposedAlertId` integer, nullable
  - `scenarioId` integer, nullable

## Response `200`

OK

- ExplorerGraph
  - `tiers` ExplorerTier[], required
    - `tier` integer, required
    - `targets` ExplorerTarget[], required
      - `tier` integer, required
      - `id` integer, required
      - `name` string, required
      - `weight` number, double, required
      - `purchase` number, nullable
      - `nShipments` integer, nullable
      - `exposedSuppliersCount` integer, nullable
      - `baseSuppliersCount` integer, nullable
      - `commodityIds` integer[], required
      - `nshipments` integer
  - `linkSets` ExplorerLinkSet[], required
    - `fromTier` integer, required
    - `toTier` integer, required
    - `links` ExplorerLink[], required
      - `from` ExplorerTargetRef, required
        - `tier` integer, required
        - `targetId` integer, required
      - `to` ExplorerTargetRef, required
        - `tier` integer, required
        - `targetId` integer, required
      - `fromWeight` number, double, required
      - `toWeight` number, double, required
      - `edgeDetails` EdgeDetails
        - `id` integer, required
        - `source` 'Customer' | 'Media' | 'Customs' | 'PrewavePrediction', required
        - `data` union, required
          - CustomerData
          - CustomsData
            - `nShipments` integer
            - `shipments` Shipment[], required
              - …
            - `nshipments` integer, required
          - MediaData
            - `mediaSources` string[], required
          - PredictionData
            - `probability` number, double, required

## Other responses

- `403`: 403 Forbidden - Authentication or authorization failure. This status code is returned when: (1) the request lacks valid authentication credentials (missing or invalid X-Auth-Token header), or (2) the authenticated user does not have the required permission to access this resource.
- `429`: 429 Too Many Requests - API rate limit exceeded. The request has been rejected because the rate limit for this endpoint has been exceeded. Default rate limits: GET requests - 100 per 10 seconds, 500 per minute; POST/PUT/PATCH/DELETE requests - 20 per 10 seconds, 100 per minute. For increased access, please contact customer success.
- `500`: 500 Internal Server Error - An unexpected error occurred on the server. The request may or may not have been processed.

## Changes

- **2026-09-15** `a0ecd9e6a07e`: 4 breaking, 6 info
  - removed the required property `linkSets/items/links/items/edgeDetails/allOf[#/components/schemas/EdgeDetails]/data/oneOf[#/components/schemas/CustomerData]/allOf[#/components/schemas/Data]/type` from the response with the `200` status
  - removed the required property `linkSets/items/links/items/edgeDetails/allOf[#/components/schemas/EdgeDetails]/data/oneOf[#/components/schemas/CustomsData]/allOf[#/components/schemas/Data]/type` from the response with the `200` status
  - removed the required property `linkSets/items/links/items/edgeDetails/allOf[#/components/schemas/EdgeDetails]/data/oneOf[#/components/schemas/MediaData]/allOf[#/components/schemas/Data]/type` from the response with the `200` status
  - removed the required property `linkSets/items/links/items/edgeDetails/allOf[#/components/schemas/EdgeDetails]/data/oneOf[#/components/schemas/PredictionData]/allOf[#/components/schemas/Data]/type` from the response with the `200` status
  - …6 more

[Operation history](https://skmtc.dev/prewave/apis/public-prewave-api/changes/public/v1/alpha/exposure/target/:targetId/graph/put.md)

---

[API](https://skmtc.dev/prewave/apis/public-prewave-api.md) - [All operations](https://skmtc.dev/prewave/apis/public-prewave-api/llms.txt) - [OpenAPI document](https://skmtc.dev/prewave/apis/public-prewave-api/revisions/8b6e3b3827ca?raw)
