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

# Search people

> Returns a list of people that match the provided filters. Searches across candidates and client contacts. You can search by full name, email address, or phone number. Results use fuzzy matching for partial matches and minor typos, ranked by relevance.



## OpenAPI

````yaml /api-reference/openapi.json get /search/people
openapi: 3.1.0
info:
  title: Spott API Reference
  version: '0.1'
servers:
  - url: https://api.gospott.com
security: []
tags: []
paths:
  /search/people:
    get:
      tags:
        - Search People
      summary: Search people
      description: >-
        Returns a list of people that match the provided filters. Searches
        across candidates and client contacts. You can search by full name,
        email address, or phone number. Results use fuzzy matching for partial
        matches and minor typos, ranked by relevance.
      operationId: searchPeople
      parameters:
        - name: query
          required: true
          in: query
          schema:
            type: string
            minLength: 1
        - name: limit
          required: false
          in: query
          schema:
            minimum: 0
            maximum: 100
            default: 25
            type: integer
      responses:
        '200':
          description: >-
            Successfully retrieved matching people. Returns a list of candidates
            and client contacts matching the search query.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantWidePeopleEntitiesDto'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/ValidationExceptionDto'
                  - $ref: '#/components/schemas/ExceptionBaseDto'
        '401':
          description: Unauthorized - invalid or missing authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionBaseDto'
        '500':
          description: Error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionBaseDto'
      security:
        - x-api-key: []
components:
  schemas:
    TenantWidePeopleEntitiesDto:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/TenantWidePeopleItemDto'
      required:
        - items
    ValidationExceptionDto:
      type: object
      properties:
        status:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        message:
          type: string
        requestId:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationIssueDto'
      required:
        - status
        - message
        - requestId
        - errors
    ExceptionBaseDto:
      type: object
      properties:
        status:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        message:
          type: string
        requestId:
          type: string
      required:
        - status
        - message
        - requestId
    TenantWidePeopleItemDto:
      oneOf:
        - $ref: '#/components/schemas/TenantWideCandidateItemDto'
        - $ref: '#/components/schemas/TenantWideClientContactItemDto'
    ValidationIssueDto:
      oneOf:
        - $ref: '#/components/schemas/ValidationRequiredDto'
        - $ref: '#/components/schemas/ValidationInvalidEmptyStringDto'
        - $ref: '#/components/schemas/ValidationUnknownFieldDto'
        - $ref: '#/components/schemas/ValidationTooSmallDto'
        - $ref: '#/components/schemas/ValidationTooBigDto'
        - $ref: '#/components/schemas/ValidationInvalidTypeDto'
        - $ref: '#/components/schemas/ValidationInvalidValueDto'
        - $ref: '#/components/schemas/ValidationInvalidEmailDto'
        - $ref: '#/components/schemas/ValidationInvalidUuidDto'
        - $ref: '#/components/schemas/ValidationInvalidUrlDto'
        - $ref: '#/components/schemas/ValidationInvalidDatetimeDto'
        - $ref: '#/components/schemas/ValidationInvalidDateDto'
        - $ref: '#/components/schemas/ValidationInvalidTimeDto'
        - $ref: '#/components/schemas/ValidationInvalidDurationDto'
        - $ref: '#/components/schemas/ValidationInvalidIpv4Dto'
        - $ref: '#/components/schemas/ValidationInvalidIpv6Dto'
        - $ref: '#/components/schemas/ValidationInvalidJsonStringDto'
        - $ref: '#/components/schemas/ValidationInvalidJwtDto'
        - $ref: '#/components/schemas/ValidationInvalidRegexDto'
        - $ref: '#/components/schemas/ValidationInvalidPhoneNumberDto'
        - $ref: '#/components/schemas/ValidationInvalidDomainDto'
        - $ref: '#/components/schemas/ValidationInvalidHttpsUrlDto'
        - $ref: '#/components/schemas/ValidationInvalidTimezoneDto'
        - $ref: '#/components/schemas/ValidationPaginationOffsetExceededDto'
    TenantWideCandidateItemDto:
      type: object
      properties:
        entityType:
          type: string
          enum:
            - candidate
        id:
          type: string
        firstName:
          type: string
        middleName:
          type:
            - string
            - 'null'
        lastName:
          type: string
        secondLastName:
          type:
            - string
            - 'null'
        avatarUrl:
          type:
            - string
            - 'null'
        phoneNumbers:
          anyOf:
            - type: array
              items:
                type: string
            - type: 'null'
        emailAddresses:
          anyOf:
            - type: array
              items:
                type: string
            - type: 'null'
        linkedInUrl:
          type:
            - string
            - 'null'
      required:
        - entityType
        - id
        - firstName
        - middleName
        - lastName
        - secondLastName
        - avatarUrl
        - phoneNumbers
        - emailAddresses
        - linkedInUrl
    TenantWideClientContactItemDto:
      type: object
      properties:
        entityType:
          type: string
          enum:
            - clientContact
        id:
          type: string
        candidateId:
          type: string
        firstName:
          type: string
        middleName:
          type:
            - string
            - 'null'
        lastName:
          type: string
        secondLastName:
          type:
            - string
            - 'null'
        avatarUrl:
          type:
            - string
            - 'null'
        companyId:
          type: string
        companyName:
          type: string
        companyLogoUrl:
          type:
            - string
            - 'null'
        phoneNumbers:
          anyOf:
            - type: array
              items:
                type: string
            - type: 'null'
        emailAddresses:
          anyOf:
            - type: array
              items:
                type: string
            - type: 'null'
        linkedInUrl:
          type:
            - string
            - 'null'
      required:
        - entityType
        - id
        - candidateId
        - firstName
        - middleName
        - lastName
        - secondLastName
        - avatarUrl
        - companyId
        - companyName
        - companyLogoUrl
        - phoneNumbers
        - emailAddresses
        - linkedInUrl
    ValidationRequiredDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - REQUIRED
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidEmptyStringDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_EMPTY_STRING
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationUnknownFieldDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - UNKNOWN_FIELD
        path:
          type: string
        message:
          type: string
        received: {}
        keys:
          type: array
          items:
            type: string
      required:
        - code
        - path
        - message
        - keys
    ValidationTooSmallDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - TOO_SMALL
        path:
          type: string
        message:
          type: string
        received: {}
        minimum:
          type: number
        inclusive:
          type: boolean
        origin:
          type: string
      required:
        - code
        - path
        - message
        - minimum
        - inclusive
        - origin
    ValidationTooBigDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - TOO_BIG
        path:
          type: string
        message:
          type: string
        received: {}
        maximum:
          type: number
        inclusive:
          type: boolean
        origin:
          type: string
      required:
        - code
        - path
        - message
        - maximum
        - inclusive
        - origin
    ValidationInvalidTypeDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_TYPE
        path:
          type: string
        message:
          type: string
        received: {}
        expected:
          type: string
      required:
        - code
        - path
        - message
        - expected
    ValidationInvalidValueDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_VALUE
        path:
          type: string
        message:
          type: string
        received: {}
        expected: {}
      required:
        - code
        - path
        - message
    ValidationInvalidEmailDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_EMAIL
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidUuidDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_UUID
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidUrlDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_URL
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidDatetimeDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_DATETIME
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidDateDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_DATE
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidTimeDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_TIME
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidDurationDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_DURATION
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidIpv4Dto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_IPV4
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidIpv6Dto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_IPV6
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidJsonStringDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_JSON_STRING
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidJwtDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_JWT
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidRegexDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_REGEX
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidPhoneNumberDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_PHONE_NUMBER
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidDomainDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_DOMAIN
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidHttpsUrlDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_HTTPS_URL
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationInvalidTimezoneDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - INVALID_TIMEZONE
        path:
          type: string
        message:
          type: string
        received: {}
      required:
        - code
        - path
        - message
    ValidationPaginationOffsetExceededDto:
      type: object
      properties:
        code:
          type: string
          enum:
            - PAGINATION_OFFSET_EXCEEDED
        path:
          type: string
        message:
          type: string
        received: {}
        maximum:
          type: number
      required:
        - code
        - path
        - message
        - maximum
  securitySchemes:
    x-api-key:
      type: apiKey
      name: x-api-key
      in: header
      description: >-
        API key for authentication. Get your API key from Settings → API Keys in
        your Spott dashboard.

````