> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.vouch.careers/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.vouch.careers/_mcp/server.

# CANDIDATE_HIRED

POST 

Reference: https://docs.vouch.careers/api-reference/webhooks/candidate-hired

## Request

### Headers

- `x-vouch-signature` (string, required) — HMAC-SHA256 signature: `t=<unix timestamp>,v1=<hex hmac of "{t}.{raw body}" keyed by your webhook secret>`. Reject requests older than 5 minutes.

### Payload

- `type` ("CANDIDATE_HIRED", required)
- `id` (string, required)
- `startDate` (datetime, required, nullable)
- `candidate` (CandidateHiredPayloadCandidate, required)
- `job` (CandidateHiredPayloadJob, required)

## Types

### CandidateHiredPayloadCandidate

- `id` (string, required, nullable)
- `firstName` (string, required, nullable)
- `lastName` (string, required, nullable)
- `email` (string, required, nullable)
- `phone` (string, required, nullable)
- `resumeUrl` (string, required, nullable)
- `linkedInUserName` (string, required, nullable)
- `portfolioUrl` (string, required, nullable)

### CandidateHiredPayloadJob

- `id` (string, required)
- `title` (string, required)
- `salary` (CandidateHiredPayloadJobSalary, required, nullable)
- `employmentType` (list of enum, required)
  - Allowed values: `Full-time`, `Part-time`, `On-site`, `Temporary`, `Internship`, `Volunteer`, `Contract`, `Remote`, `Hybrid`

### CandidateHiredPayloadJobSalary

- `type` (string, required, nullable)
- `currency` (enum, required, nullable)
  - Allowed values: `NOK`, `SEK`, `DKK`, `EUR`, `GBP`, `USD`, `CAD`, `AUD`
- `minSalary` (double, required, nullable)
- `maxSalary` (double, required, nullable)
- `extra` (string, required, nullable)