---
title: "Bind an approved prospect conversion"
method: POST
path: "/v1/prospects/{prospect_id}/actions/convert_to_application/bind"
tags: ["Other"]
---

# Bind an approved prospect conversion

`POST /v1/prospects/{prospect_id}/actions/convert_to_application/bind`

## Request

- Base URL: `https://api.yardstick.team`
- URL: `https://api.yardstick.team/v1/prospects/{prospect_id}/actions/convert_to_application/bind`
- Auth: HTTP bearer

Bind an approved prospect conversion

**Required scopes:** `prospects:read`, `prospects:write`, `applications:write`

Binds the approved conversion. An unavailable Prospect returns 404 `prospect_not_found` with `param: prospect_id`; an unavailable target Job Posting returns 404 `job_posting_not_found` with `param: job_posting_id`.

**Example (curl):**

```bash
curl -X POST https://api.yardstick.team/v1/prospects/pro_abc123/actions/convert_to_application/bind \
  -H 'Authorization: Bearer ys_sk_live_…' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 7c3a…' \
  -d '{"job_posting_id":"jp_xyz789","binding":{"preview_hash":"…","approved_action_key":"prospect.convert_to_application","approved_input_hash":"…","approved_idempotency_key":"7c3a…","resource_version_precondition":"2026-08-18T00:00:00.000Z"}}'
```

**Example (TypeScript):**

```ts
await fetch("https://api.yardstick.team/v1/prospects/pro_abc123/actions/convert_to_application/bind", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.YS_API_KEY}`,
    "Content-Type": "application/json",
    "Idempotency-Key": "7c3a…",
  },
  body: JSON.stringify({
    job_posting_id: "jp_xyz789",
    binding: {
      preview_hash: "…",
      approved_action_key: "prospect.convert_to_application",
      approved_input_hash: "…",
      approved_idempotency_key: "7c3a…",
      resource_version_precondition: "2026-08-18T00:00:00.000Z",
    },
  }),
});
```

## Headers

- `Idempotency-Key` string, required
- `X-Request-Id` string

## Request body

- object
  - `job_posting_id` string, required
  - `source_label` string, nullable
  - `note` string, nullable
  - `binding` object, required
    - `preview_hash` string, required
    - `approved_action_key` string, required
    - `approved_input_hash` string, required
    - `approved_idempotency_key` string, required
    - `resource_version_precondition` string, required

## Response `200`

Success

- object

## Other responses

- `400`: Invalid request
- `401`: Authentication failure
- `403`: Permission denied (scope or feature flag)
- `404`: Resource not found. The error uses the resource-specific code and param names the exact body field or path parameter that referenced it.
- `409`: Conflict (e.g. idempotency key reuse with different body)
- `429`: Rate limited
- `500`: Internal error

---

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