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

# Get candidate by ID

> Returns detailed information about a specific candidate



## OpenAPI

````yaml /api-reference/openapi.json get /candidate/{candidateid}
openapi: 3.0.3
info:
  title: JobAffinity REST API
  version: '1.12'
  description: >
    JobAffinity REST API for managing jobs, candidates, applications, and
    recruitment processes.


    ## Authentication

    All endpoints require HTTP Basic Authentication.


    ## Versioning

    Current version: 1.12


    See `/restapi/changelog` for version history and changes.
  contact:
    name: JobAffinity API Support
servers:
  - url: https://jobaffinity.fr/restapi/v1
    description: REST API v1
  - url: https://jobaffinity.fr/restapi
    description: REST API root (for changelog)
security:
  - basicAuth: []
tags:
  - name: API Info
    description: API metadata and changelog
  - name: Jobs
    description: Job listings and details
  - name: Candidates
    description: Candidate information
  - name: Applications
    description: Job applications
  - name: Processes
    description: Recruitment processes and steps
  - name: Notes
    description: Candidate notes
  - name: Questionnaires
    description: Questionnaire answers
  - name: Webhooks
    description: Webhook tasks
  - name: Job Application Submission
    description: >-
      Submit candidate applications to a job posting via the apply URL provided
      in the job feed. The authentication token is embedded in the URL — no
      additional credentials are required.
paths:
  /candidate/{candidateid}:
    get:
      tags:
        - Candidates
      summary: Get candidate by ID
      description: Returns detailed information about a specific candidate
      operationId: getCandidate
      parameters:
        - name: candidateid
          in: path
          required: true
          description: Candidate ID
          schema:
            type: integer
      responses:
        '200':
          description: Candidate details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Candidate'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '404':
          $ref: '#/components/responses/NotFoundError'
components:
  schemas:
    Candidate:
      type: object
      properties:
        _self:
          type: string
          format: uri
          description: URL of the candidate resource
        _schema:
          type: string
          format: uri
        _status:
          type: string
          enum:
            - OK
            - INVALID
        id:
          type: integer
          description: Candidate identifier
        title:
          type: string
          enum:
            - MR
            - MS
          description: Candidate title
        first_name:
          type: string
          description: First name
        last_name:
          type: string
          description: Last name
        email:
          type: string
          format: email
          description: Primary email address
        email_secondary:
          type: string
          format: email
          description: Secondary email address
        birthdate:
          type: string
          format: date
          description: Date of birth (YYYY-MM-DD)
        home_phone:
          type: string
          description: Home phone number
        mobile_phone:
          type: string
          description: Mobile phone number
        office_phone:
          type: string
          description: Office phone number
        location:
          $ref: '#/components/schemas/PostalAddress'
          description: Candidate postal address
        position:
          type: string
          description: Current position/job title
        position_company:
          type: string
          description: Current company
        experience_start:
          type: string
          format: date
          description: Start of professional experience (YYYY-MM-DD)
        linkedin:
          type: string
          format: uri
          description: LinkedIn profile URL
        instagram:
          type: string
          format: uri
          description: Instagram profile URL
        applications:
          type: object
          properties:
            _self:
              type: string
              format: uri
        notes:
          type: object
          properties:
            _self:
              type: string
              format: uri
        pools:
          type: object
          description: Candidate pools (viviers)
          properties:
            items:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
                    description: Pool name
                  candidates:
                    type: object
                    properties:
                      _self:
                        type: string
                        format: uri
                        description: URL to list candidates in this pool
    PostalAddress:
      type: object
      properties:
        address:
          type: string
          description: The street address
        postalcode:
          type: string
          description: The postal code
        town:
          type: string
          description: Town in which the street address is
        country:
          type: string
          description: Country (ISO 3166-1 alpha-2 country code)
  responses:
    UnauthorizedError:
      description: Authentication information is missing or invalid
      headers:
        WWW-Authenticate:
          schema:
            type: string
    NotFoundError:
      description: The specified resource was not found
      content:
        application/json:
          schema:
            type: object
            properties:
              _status:
                type: string
                enum:
                  - INVALID
              error:
                type: string
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Authentication with API credentials

````