> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kalent.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Create sourcing

> Create an empty sourcing campaign linked to your workspace.

<Card title="First time? Set up Authentication" icon="key" href="/authentication">
  Learn how to authenticate your API requests with your API key.
</Card>

Creates a new sourcing (job offer) with default filters and a sourcing dashboard. The authenticated API key user becomes the sourcing owner.

## Request body

Send an empty JSON object `{}`. Unknown keys return `validation_error`.

## Response

When `success` is `true`, `data` contains:

* `sourcingId` — identifier for the new sourcing (same as internal job offer id)
* `name` — generated display name

## Errors

Common `error.code` values:

| Code                    | HTTP |
| ----------------------- | ---- |
| `validation_error`      | 400  |
| `plan_upgrade_required` | 402  |
| `not_found`             | 404  |
| `internal_error`        | 500  |

When the workspace has no eligible Kalent subscription, the API returns:

```json theme={null}
{
  "success": false,
  "error": {
    "code": "plan_upgrade_required",
    "message": "A Kalent subscription or plan upgrade is required to create sourcings. Please subscribe or upgrade your plan in Kalent billing: https://app.kalent.ai/settings/billing",
    "debugTrackingCode": "...",
    "details": {
      "code": "subscription_or_plan_upgrade_required",
      "action": "subscribe_or_upgrade",
      "capability": "create_sourcings",
      "billingUrl": "https://app.kalent.ai/settings/billing"
    }
  }
}
```

```bash theme={null}
curl -X POST https://app.kalent.ai/api/v1/sourcings \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{}'
```
