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

# Update Candidate

> Update an existing candidate

Update the details of an existing candidate.

### Path Parameters

<ParamField path="id" type="number" required>
  ID of the candidate to update
</ParamField>

### Body Parameters

<ParamField body="firstName" type="string">
  Updated first name
</ParamField>

<ParamField body="lastName" type="string">
  Updated last name
</ParamField>

<ParamField body="email" type="string">
  Updated email address
</ParamField>

<ParamField body="phone" type="string">
  Updated contact phone number
</ParamField>

<ParamField body="address" type="object">
  Updated address information

  <Expandable title="Address fields">
    <ParamField body="address1" type="string">
      Street address line 1
    </ParamField>

    <ParamField body="address2" type="string">
      Street address line 2
    </ParamField>

    <ParamField body="city" type="string">
      City
    </ParamField>

    <ParamField body="state" type="string">
      State
    </ParamField>

    <ParamField body="zip" type="string">
      ZIP/Postal code
    </ParamField>

    <ParamField body="countryCode" type="string">
      Country code
    </ParamField>

    <ParamField body="timezone" type="string">
      Timezone
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="notes" type="string">
  Additional notes about the candidate
</ParamField>

<ParamField body="profession" type="string">
  Candidate's primary profession
</ParamField>

<ParamField body="specialty" type="string">
  Candidate's specialty or focus area
</ParamField>

<ParamField body="status" type="string" enum={["ACTIVE", "INACTIVE", "PENDING"]}>
  Current status of the candidate
</ParamField>

### Response

<ResponseField name="id" type="number">
  The ID of the updated candidate
</ResponseField>

<ResponseField name="firstName" type="string">
  First name
</ResponseField>

<ResponseField name="lastName" type="string">
  Last name
</ResponseField>

<ResponseField name="email" type="string">
  Email address
</ResponseField>

<ResponseField name="phone" type="string">
  Phone number
</ResponseField>

<ResponseField name="address" type="object">
  Address information
</ResponseField>

<ResponseField name="notes" type="string">
  Additional notes
</ResponseField>

<ResponseField name="profession" type="string">
  Primary profession
</ResponseField>

<ResponseField name="specialty" type="string">
  Specialty or focus area
</ResponseField>

<ResponseField name="status" type="string">
  Current status
</ResponseField>

<ResponseField name="dateAdded" type="integer">
  Unix timestamp when the candidate was added
</ResponseField>

<RequestExample>
  ```bash theme={null}
  curl --request PUT \
    --url https://api.harmonyforstaffing.com/api/candidates/456 \
    --header 'Authorization: Bearer <token>' \
    --header 'Content-Type: application/json' \
    --data '{
      "firstName": "John",
      "lastName": "Doe",
      "email": "john.doe@example.com",
      "phone": "+1-555-555-5555",
      "address": {
        "address1": "123 Main St",
        "city": "San Francisco",
        "state": "CA",
        "zip": "94105",
        "countryCode": "US"
      },
      "notes": "Excellent communication skills, available immediately",
      "profession": "Software Engineer",
      "specialty": "Frontend Development",
      "status": "ACTIVE"
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json theme={null}
  {
    "id": 456,
    "firstName": "John",
    "lastName": "Doe",
    "email": "john.doe@example.com",
    "phone": "+1-555-555-5555",
    "address": {
      "address1": "123 Main St",
      "city": "San Francisco",
      "state": "CA",
      "zip": "94105",
      "countryCode": "US"
    },
    "notes": "Excellent communication skills, available immediately",
    "profession": "Software Engineer",
    "specialty": "Frontend Development",
    "status": "ACTIVE",
    "dateAdded": 1679253000
  }
  ```
</ResponseExample>
