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

# Search people

> Search bounded Qoory person identity fields. This is not a profile or bulk people export endpoint.



## OpenAPI

````yaml /openapi/public-v1.json get /v1/people/search
openapi: 3.1.0
info:
  title: Qoory Developer API
  version: 1.0.0-beta
  description: >-
    Authenticated, credit-metered REST API for bounded, public-safe intelligence
    from Qoory's curated entity graph. Responses use strict source-free DTOs and
    do not expose bulk entity listing endpoints.
servers:
  - url: https://api.qoory.ai
    description: Qoory production API
security: []
tags:
  - name: Search
    description: Resolve specific entities through bounded search and identity matching.
  - name: Discovery
    description: Explore curated, fixed-size Qoory snapshots without bulk entity listing.
  - name: Projects
    description: Fetch project identities and bounded project intelligence.
  - name: Funds
    description: >-
      Fetch fund identities, rankings, partners, and verified portfolio
      relationships.
  - name: People
    description: Fetch person identities, roles, and verified investment relationships.
  - name: Tokens
    description: Fetch token identities, market facts, tokenomics, and unlock windows.
  - name: Markets
    description: Fetch bounded crypto-market snapshots and visualisation data.
  - name: Stocks
    description: Fetch crypto-related stock identities, rankings, and curated news.
  - name: News
    description: Fetch Qoory-curated, source-free news summaries and entity links.
  - name: Narratives
    description: Fetch Qoory-curated market narratives and bounded timelines.
  - name: Events
    description: Fetch eligible Web3 event identities and upcoming-event snapshots.
  - name: X Accounts
    description: Fetch opaque Qoory-owned X-account references and eligible entity links.
paths:
  /v1/people/search:
    get:
      tags:
        - Search
      summary: Search people
      description: >-
        Search bounded Qoory person identity fields. This is not a profile or
        bulk people export endpoint.
      operationId: searchPeople
      parameters:
        - name: q
          in: query
          required: true
          description: >-
            Case-insensitive text to match within this endpoint's bounded
            candidate set.
          example: uniswap
          schema:
            type: string
            minLength: 2
            maxLength: 500
        - name: limit
          in: query
          required: false
          description: >-
            Maximum number of items to return. This API does not expose
            pagination for this operation.
          example: 10
          schema:
            type: integer
            minimum: 1
            maximum: 20
            default: 10
      responses:
        '200':
          description: Successful response.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                type: object
                additionalProperties: false
                properties:
                  data:
                    $ref: '#/components/schemas/DeveloperApiPeopleSearchResponseData'
                    description: Operation-specific response data.
                  meta:
                    type: object
                    additionalProperties: false
                    properties:
                      request_id:
                        type: string
                        minLength: 8
                        maxLength: 96
                        pattern: ^[A-Za-z0-9_.:-]{8,96}$
                      credits_used:
                        type: integer
                        minimum: 0
                      credits_remaining:
                        type: integer
                        minimum: 0
                      rate_limit:
                        type: object
                        additionalProperties: false
                        properties:
                          limit:
                            type: integer
                            minimum: 0
                          remaining:
                            type: integer
                            minimum: 0
                          reset_at:
                            type: string
                            format: date-time
                          tier:
                            type: string
                            enum:
                              - free
                              - pro
                              - pro_plus
                              - team
                              - internal
                        required:
                          - limit
                          - remaining
                          - reset_at
                          - tier
                    required:
                      - request_id
                    description: Request correlation, credit, and rate-limit metadata.
                required:
                  - data
                  - meta
              example:
                data:
                  kind: people_search
                  query: uniswap founder
                  limit: 10
                  results:
                    - type: person
                      id: hayden-adams
                      slug: hayden-adams
                      full_name: Hayden Adams
                meta:
                  request_id: req_example
                  credits_used: 1
                  credits_remaining: 99
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '401':
          description: Missing or invalid API key.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: INVALID_API_KEY
                  message: The API key is invalid.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '402':
          description: Insufficient credits.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: INSUFFICIENT_CREDITS
                  message: Not enough credits are available for this request.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 0
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '403':
          description: API key is disabled, revoked, or missing the required scope.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: FORBIDDEN
                  message: The API key does not have the required scope.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '422':
          description: Invalid request.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: INVALID_REQUEST
                  message: The request parameters are invalid.
                  details:
                    - path: limit
                      message: Expected a value within the documented range.
                      code: too_big
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '429':
          description: Rate limit exceeded.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
            Retry-After:
              description: Whole seconds to wait before retrying a rate-limited request.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 10
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: RATE_LIMITED
                  message: Rate limit exceeded.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
        '500':
          description: Internal server error.
          headers:
            Cache-Control:
              description: Developer API responses are not cacheable.
              schema:
                type: string
                enum:
                  - no-store
            x-qoory-request-id:
              description: Public request id for support and usage correlation.
              schema:
                type: string
                minLength: 8
                maxLength: 96
                pattern: ^[A-Za-z0-9_.:-]{8,96}$
            x-qoory-credits-used:
              description: Credits charged for the request, when metering ran.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-credits-remaining:
              description: Credits remaining after the request, when available.
              schema:
                type: string
                pattern: ^[0-9]+$
                maxLength: 20
            x-qoory-rate-limit:
              description: >-
                Stringified rate-limit metadata with limit, remaining, reset_at,
                and tier.
              schema:
                type: string
                maxLength: 512
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperApiErrorEnvelope'
              example:
                error:
                  code: INTERNAL_ERROR
                  message: The request could not be completed.
                meta:
                  request_id: req_example
                  credits_used: 0
                  credits_remaining: 100
                  rate_limit:
                    limit: 30
                    remaining: 29
                    reset_at: '2026-06-26T00:00:00.000Z'
                    tier: free
      security:
        - bearerAuth: []
components:
  schemas:
    DeveloperApiPeopleSearchResponseData:
      type: object
      additionalProperties: false
      properties:
        kind:
          type: string
          enum:
            - people_search
          description: Stable response-shape discriminator.
        query:
          type: string
          description: Normalized query represented by this response.
        limit:
          type: integer
          description: Maximum result count applied to this response.
        results:
          type: array
          items:
            $ref: '#/components/schemas/DeveloperApiSearchPerson'
          description: Bounded ordered records returned by this operation.
      required:
        - kind
        - query
        - limit
        - results
      title: People Search Response Data
      description: Bounded person identity search results.
    DeveloperApiErrorEnvelope:
      type: object
      additionalProperties: false
      properties:
        error:
          type: object
          additionalProperties: false
          properties:
            code:
              type: string
              enum:
                - MISSING_API_KEY
                - INVALID_API_KEY
                - DISABLED_API_KEY
                - REVOKED_API_KEY
                - USER_SUSPENDED
                - FEATURE_DISABLED
                - CONFIGURATION_ERROR
                - FORBIDDEN
                - INVALID_REQUEST
                - RATE_LIMITED
                - INSUFFICIENT_CREDITS
                - NOT_FOUND
                - DATA_UNAVAILABLE
                - INTERNAL_ERROR
              description: Stable machine-readable error code.
            message:
              type: string
              description: Public-safe human-readable error message.
            details:
              $ref: '#/components/schemas/DeveloperApiValidationErrorDetails'
              description: Optional bounded validation details for an invalid request.
          required:
            - code
            - message
          description: Standard Developer API error object.
        meta:
          type: object
          additionalProperties: false
          properties:
            request_id:
              type: string
              minLength: 8
              maxLength: 96
              pattern: ^[A-Za-z0-9_.:-]{8,96}$
              description: Public request identifier for support and usage correlation.
            credits_used:
              type: integer
              minimum: 0
              description: Total credits charged for this request.
            credits_remaining:
              type: integer
              minimum: 0
              description: Credits available after this request, when known.
            rate_limit:
              type: object
              additionalProperties: false
              properties:
                limit:
                  type: integer
                  minimum: 0
                  description: Maximum result count applied to this response.
                remaining:
                  type: integer
                  minimum: 0
                  description: Requests remaining in the active rate-limit window.
                reset_at:
                  type: string
                  format: date-time
                  description: UTC timestamp when the active rate-limit window resets.
                tier:
                  type: string
                  enum:
                    - free
                    - pro
                    - pro_plus
                    - team
                    - internal
                  description: >-
                    Rate-limit or trend tier, as defined by the containing
                    schema.
              required:
                - limit
                - remaining
                - reset_at
                - tier
              description: Rate-limit metadata for the active request window.
          required:
            - request_id
          description: Request correlation, credit, and rate-limit metadata.
      required:
        - error
        - meta
      title: Error Envelope
      description: Standard error response shared by every Developer API operation.
    DeveloperApiSearchPerson:
      type: object
      additionalProperties: false
      properties:
        type:
          type: string
          enum:
            - person
          description: Stable entity or record-type discriminator.
        id:
          type: string
          description: Stable Qoory identifier for this record.
        slug:
          type: string
          description: Canonical Qoory slug for this entity.
        full_name:
          type: string
          description: Canonical display name for a Qoory person.
      required:
        - type
        - id
        - slug
        - full_name
      title: Search Person
      description: Stable person identity returned by search.
    DeveloperApiValidationErrorDetails:
      anyOf:
        - type: array
          items:
            type: object
            additionalProperties: false
            properties:
              path:
                type: string
                maxLength: 160
                pattern: ^[A-Za-z0-9_.:-]{1,160}$
                description: Bounded input path associated with a validation issue.
              message:
                type: string
                maxLength: 500
                description: Public-safe human-readable error message.
              code:
                type: string
                maxLength: 80
                pattern: ^[A-Za-z0-9_]+$
                description: Stable machine-readable error code.
            required:
              - path
              - message
              - code
          maxItems: 50
        - type: object
          additionalProperties: false
          properties:
            formErrors:
              type: array
              items:
                type: string
                maxLength: 500
              maxItems: 50
              description: Validation messages that apply to the request as a whole.
            fieldErrors:
              type: object
              maxProperties: 50
              propertyNames:
                type: string
                minLength: 1
                maxLength: 160
                pattern: ^[A-Za-z0-9_.:-]{1,160}$
              additionalProperties:
                type: array
                items:
                  type: string
                  maxLength: 500
                maxItems: 50
              description: Validation messages grouped by bounded input field name.
          required: []
      title: Validation Error Details
      description: Bounded validation issues for an invalid request.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Qoory API key
      description: Use the HTTP authentication scheme with a Qoory API key.

````