---
title: "Outbound Supply Chain Risks"
method: POST
path: "/search-by-domain/supply-chain-risks/outbound"
tags: ["Domain Intelligence"]
---

# Outbound Supply Chain Risks

`POST /search-by-domain/supply-chain-risks/outbound`

## Request

- Base URL: `https://api.hudsonrock.com/json/v3`
- URL: `https://api.hudsonrock.com/json/v3/search-by-domain/supply-chain-risks/outbound`
- Auth: API key in header `api-key`
- TypeScript: <https://skmtc.dev/hudsonrock/apis/cavalier-api/docs/search-by-domain/supply-chain-risks/outbound/post.ts> (a function with typed inputs; its response is checked against the schema)

Returns the outbound Supply Chain Risks view for a domain: outside companies whose employees logged into this domain. If a fresh result (under 14 days old) is cached, returns 200 with the paginated partner data. Otherwise starts a background scan (or reports the one already running for this key) and returns 202 with progress; call the same endpoint again to poll, and an email is sent when the scan completes. Requires the `supply_chain_monitoring` api permission. Keys with `limited_domains` may only scan whitelisted domains. Max 5 concurrent scans per user.

## Request body

- object
  - `domain` string, required: The subject domain to scan for outbound supply chain risks.
  - `page` integer: Page number (1-based). Applies when data is returned.
  - `limit` integer: Number of partner cards per page. Applies when data is returned.
  - `sort_by` 'size' | 'occurrence' | 'name': Sort order. `size` = company size DESC (default), `occurrence` = most compromised, `name` = A to Z.

## Response `200`

Scan completed; paginated partner data

- object
  - `success` boolean
  - `status` string
  - `direction` string
  - `domain` string
  - `computed_at` string, date-time
  - `total` integer
  - `page` integer
  - `limit` integer
  - `data` SupplyChainPartner[]
    - `domain` string
    - `source_domain` string
    - `partner_occurrence` integer
    - `name` string
    - `size` string
    - `industry` string
    - `location_locality` string
    - `location_region` string
    - `location_country` string
    - `compromised_counts` object
    - `last_employee_compromised` string, date-time
    - `last_employee_uploaded` string, date-time
    - `last_user_compromised` string, date-time
    - `last_user_uploaded` string, date-time
    - `passwords_strength` object
    - `applications_found` object
    - `antiviruses_stats` object

## Other responses

- `202`: Scan in progress (started now or already running); call again to poll
- `400`: Validation error - the request or request body was invalid
- `401`: Unauthorized - the server could not authenticate the request
- `403`: Forbidden - the server authenticated the request but refuses to process it because of insufficient permissions
- `408`: Timeout - the server timed out while waiting for a response (90 seconds)
- `429`: Rate limit exceeded, or the per-user limit of 5 concurrent outbound scans was reached (`code: TASK_LIMIT_REACHED`)
- `500`: Internal server error - the server encountered an unexpected condition that prevented it from fulfilling the request

## Changes

- **2026-11-03** `a7ebb4dfd47f`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/hudsonrock/apis/cavalier-api/changes/search-by-domain/supply-chain-risks/outbound/post.md)

---

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