Paradox Candidate Attributes API

Manage custom candidate attribute data

OpenAPI Specification

paradox-candidate-attributes-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Paradox Authentication Candidate Attributes API
  description: API for the Paradox conversational AI recruiting platform powered by Olivia. Provides endpoints for managing candidates, users, interview scheduling, locations, company data, reporting, and candidate attributes. Paradox automates candidate screening, interview scheduling, and hiring workflows through chat, SMS, and mobile-driven experiences.
  version: 1.0.0
  contact:
    name: Paradox Support
    url: https://www.paradox.ai/contact
    email: support@paradox.ai
  license:
    name: Proprietary
    url: https://www.paradox.ai/legal/service-terms
  termsOfService: https://www.paradox.ai/legal/service-terms
servers:
- url: https://api.paradox.ai/api/v1/public
  description: Production (US)
- url: https://api.eu1.paradox.ai/api/v1/public
  description: Production (EU)
- url: https://stgapi.paradox.ai/api/v1/public
  description: Staging (US)
- url: https://api.stg.eu1.paradox.ai/api/v1/public
  description: Staging (EU)
- url: https://testapi.paradox.ai/api/v1/public
  description: Test
- url: https://dev2api.paradox.ai/api/v1/public
  description: Development
security:
- oauth2: []
- bearerAuth: []
tags:
- name: Candidate Attributes
  description: Manage custom candidate attribute data
paths:
  /candidate/attributes/{oid}:
    get:
      operationId: getCandidateAttributes
      summary: Paradox Get candidate attributes
      description: Retrieve all current custom attributes for a specific candidate.
      tags:
      - Candidate Attributes
      parameters:
      - name: oid
        in: path
        required: true
        description: Candidate OID or external OID
        schema:
          type: string
      responses:
        '200':
          description: Candidate attributes returned successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  attributes:
                    type: object
                    additionalProperties:
                      type: string
                      maxLength: 255
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /candidate/attributes:
    patch:
      operationId: patchCandidateAttributes
      summary: Paradox Patch candidate attributes
      description: Partially update candidate attributes. Only the specified attributes will be modified; existing attributes not included will remain unchanged.
      tags:
      - Candidate Attributes
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - oid
              - attributes
              properties:
                oid:
                  type: string
                  description: Candidate OID or external OID
                attributes:
                  type: object
                  additionalProperties:
                    type: string
                    maxLength: 255
                  description: Key-value pairs of attributes to update
      responses:
        '200':
          description: Candidate attributes patched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
    put:
      operationId: updateCandidateAttributes
      summary: Paradox Update candidate attributes
      description: Replace all candidate attributes with the provided set. Any attributes not included in the request will be removed.
      tags:
      - Candidate Attributes
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - oid
              - attributes
              properties:
                oid:
                  type: string
                  description: Candidate OID or external OID
                attributes:
                  type: object
                  additionalProperties:
                    type: string
                    maxLength: 255
                  description: Complete set of key-value attribute pairs
      responses:
        '200':
          description: Candidate attributes updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    SuccessResponse:
      type: object
      properties:
        success:
          type: boolean
  responses:
    BadRequest:
      description: Invalid request data
      content:
        application/json:
          schema:
            type: object
            properties:
              success:
                type: boolean
                const: false
              message:
                type: string
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            type: object
            properties:
              success:
                type: boolean
                const: false
              message:
                type: string
    Unauthorized:
      description: Authentication failed
      content:
        application/json:
          schema:
            type: object
            properties:
              success:
                type: boolean
                const: false
              message:
                type: string
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0 client credentials authentication
      flows:
        clientCredentials:
          tokenUrl: /auth/token
          scopes: {}
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Bearer token obtained from the OAuth 2.0 token endpoint
externalDocs:
  description: Paradox API Documentation
  url: https://readme.paradox.ai/docs