---
title: "Get existing candidate"
method: GET
path: "/candidate-portal/{candidateId}"
tags: ["Candidate Portal"]
---

# Get existing candidate

`GET /candidate-portal/{candidateId}`

## Request

- The document declares no server URL.
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/spott/apis/spott-webhooks/docs/candidate-portal/:candidateId/get.ts> (a function with typed inputs; its response is checked against the schema)

Get basic details on existing candidate to pre-fill the candidate update form. Returns email addresses, phone numbers, social media links, and name information.

## Path parameters

- `candidateId` string, required

## Response `200`

Successfully retrieved candidate details

- CandidateForPortalSubmissionDto
  - `firstName` string, required
  - `lastName` string, required
  - `emails` object[], required
    - `email` string, email, required
    - `purpose` 'personal' | 'work', nullable, required
    - `isPrimary` boolean, required
  - `phoneNumbers` object[], required
    - `phoneNumber` string, required
    - `purpose` 'personal' | 'work', nullable, required
    - `isPrimary` boolean, required
  - `socialMedia` object[], required
    - `url` string, uri, required
    - `type` 'LINKEDIN' | 'TWITTER' | 'FACEBOOK' | 'INSTAGRAM', required
    - `isPrimary` boolean, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized - invalid or missing authentication
- `404`: Candidate not found
- `500`: Error response

---

[API](https://skmtc.dev/spott/apis/spott-webhooks.md) - [All operations](https://skmtc.dev/spott/apis/spott-webhooks/llms.txt) - [OpenAPI document](https://skmtc.dev/spott/apis/spott-webhooks/revisions/ad1f8c51cf0a?raw)
