---
title: "Get vendors affected by a risk"
method: GET
path: "/risks/vendors_with_risk"
tags: ["risks"]
---

# Get vendors affected by a risk

`GET /risks/vendors_with_risk`

## Request

- Base URL: `https://cyber-risk.upguard.com/api/public`
- URL: `https://cyber-risk.upguard.com/api/public/risks/vendors_with_risk`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/upguard/apis/upguard-cyberrisk-api/docs/risks/vendors_with_risk/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns a list of vendors that are affected by a specific risk.
This endpoint provides detailed information about vendors that have failed a particular risk,
including vendor details, risk information, and waiver status.

Required API key permissions: `VendorRisk` (select when creating API key in Account Settings)

## Query parameters

- `vendor_labels` string[]
- `vendor_label_ids_match_all` boolean
- `include_unlabeled` boolean
- `min_score` integer
- `max_score` integer
- `name_prefix` string
- `vendor_ids` integer[]
- `vendor_label_ids_do_not_match` boolean
- `vendor_tiers` integer[]
- `portfolios` string[]
- `assessed_vendors_only` boolean
- `questionnaire_type_ids` integer[]
- `vendor_date_added_start` string, date-time
- `vendor_date_added_end` string, date-time
- `vendor_date_added_before` boolean
- `vendor_date_added_between` boolean
- `risk_id` string, required

## Response `200`

OK

- ExternalVendorsWithRiskResponse
  - `risk_id` string: The risk ID
  - `risk_severity` string: The severity level of the risk (pass, info, low, medium, high, critical)
  - `risk_type` string: The type of risk
  - `total_vendors_matching_filter` integer: Total number of vendors matching the filter criteria
  - `vendors_with_risk` ExternalVendorWithRisk[]: List of vendors affected by the risk
    - `additional_evidence` ExternalEvidence[]: Additional evidence items affected by the risk (for additional evidence risks only)
      - `datastore_vendor_id` integer: Vendor ID
      - `id` integer: Evidence ID
      - `name` string: Evidence name
    - `count_hostnames_failed` integer: Number of domains/IPs affected (for automated scanning risks only)
    - `date_detected` string, date-time: When the risk was first detected (RFC3339 format, omitted if not available)
    - `is_partially_waived` boolean: Whether risk is partially waived
    - `is_waived` boolean: Whether risk is fully waived
    - `labels` ExternalLabel[]: Vendor labels
      - `id` integer: Label ID
      - `name` string: Label name
    - `name` string: Vendor name
    - `primary_hostname` string: Primary hostname
    - `questionnaires` ExternalSurveyMini[]: Questionnaires affected by the risk (for questionnaire risks only)
      - `id` integer: Survey ID
      - `is_public` boolean: Whether this is a public survey
      - `name` string: Survey name
    - `score` integer: Latest vendor score (0-950)
    - `vendor_id` integer: Vendor ID
    - `vendor_tier` integer: Vendor tier (if assigned)
    - `vendor_tier_name` string: Vendor tier name (if assigned)

## Other responses

- `403`: Account does not have access to requested entities
- `404`: The vendor was not found.
- `422`: An invalid parameter was supplied or a mandatory parameter was missing
- `429`: Too many requests have been made to this endpoint.
- `500`: An internal system error occurred

---

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