---
title: "Create Risk Assessment"
method: POST
path: "/risk-assessment/assessments"
tags: ["risk-assessment"]
---

# Create Risk Assessment

`POST /risk-assessment/assessments`

Create an assessment, resolve (or start) research, and dispatch the parent run.

The reuse-vs-fresh research decision lives here, not in the workflow task,
so a Hatchet replay cannot spend tokens a second time.

## Request body

- CreateRiskAssessmentRequest
  - `vendor_id` string, uuid, required
  - `research_agent_run_id` string, uuid, nullable
  - `force_research` boolean

## Response `202`

Successful Response

- RiskAssessmentSummary
  - `risk_assessment_id` string, uuid, required
  - `vendor_id` string, uuid, required
  - `status` 'queued' | 'running' | 'complete' | 'failed', required — Lifecycle of one whole assessment of one company.
  - `created` string, date-time, required
  - `started_at` string, date-time, nullable, required
  - `completed_at` string, date-time, nullable, required
  - `factor_count` integer, required
  - `factors_reviewed` integer, required
  - `factors_rated` integer, required
  - `error` string, nullable, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/kobaltlabs/apis/fastapi.md) · [All operations](https://skmtc.dev/kobaltlabs/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/kobaltlabs/fastapi/revisions/425d5b8a3c17/schema)
