---
title: "Churn Placement"
method: POST
path: "/api/placements/{placement_id}/churn"
tags: ["placements"]
---

# Churn Placement

`POST /api/placements/{placement_id}/churn`

## Request

- Base URL: `https://api.ruzora.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.ruzora.com/api/placements/{placement_id}/churn`
- Auth: HTTP bearer

Mark placement as churned (founder only)

Sets status to Churned and records churn reason

## Path parameters

- `placement_id` string, required

## Query parameters

- `churn_reason` string, required
- `replacement_offered` boolean

## Response `200`

Successful Response

- PlacementResponse: Response model for placement data
  - `id` string, required
  - `client` object, nullable
  - `candidate` object, nullable
  - `role_type` string, required
  - `monthly_rate` integer, required
  - `pricing_tier` string, nullable
  - `start_date` string, date, nullable
  - `end_date` string, date, nullable
  - `status` string, required
  - `proposal_url` string, nullable
  - `signed_date` string, date, nullable
  - `first_invoice_paid` boolean
  - `churn_reason` string, nullable
  - `nps_score` integer, nullable
  - `duration_days` integer, nullable
  - `contractor_monthly_cost` integer, nullable
  - `deel_contract_id` string, nullable
  - `payment_provider` string, nullable
  - `gross_margin_dollars` integer, nullable
  - `margin_percent` number, nullable
  - `created_at` string, date-time, required

## Other responses

- `422`: Validation Error

---

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