Documentation navigation
GET /v2/developers/fields

The fields a developer search can use

Access
Authenticated
search:read
Cost
Free
Rate limit
10 / second per actor
Quota
None

Every index field with its type, operators, what it may be used for (filter, sort, boost, include), its readiness status and coverage. A disabled field is refused with a 400; any other non-live field runs and is listed in a response's not_live. Cached 30 seconds. Free.

Responses

  • 200 The registry
    • ok boolean required
      true
    • registry string required
      liveunavailable
    • fields array of DevsField required
      • name string required
      • type string | null required

        Turbopuffer type, e.g. uint, float, string, []string, datetime.

      • ops array of string required

        The filter operators this field takes.

      • keyword boolean required

        Full-text indexed: BM25 and the token operators.

      • filterable boolean required
      • sortable boolean required
      • boostable boolean required
      • displayable boolean required
      • status string required
        livevalidatedbackfilledcollectingplanneddisabled
      • coverage_pct number | null required
      • rows string | null required

        Row kinds that carry it: profile, repo, role.

      • description string | null required
      • examples array of any required
  • 400 The query does not compile; `hint` says what to change
    • ok boolean required
      false
    • error string required
    • hint string required
  • 401 Missing or invalid API key
    • code string required

      Stable machine-readable error code. Branch on this, never on the numeric status.

      bad_requestunauthorizedsignature_requiredpayment_requiredforbiddennot_foundconflictgonepayload_too_largeunprocessable_entitytoo_many_requestsinternal_errornot_implementedbilling_unavailablenot_contactablemailbox_link_unavailablemailbox_requiredmail_engine_unavailablewebhook_publisher_unavailabledatabase_unavailableclient_errorbuild_failed
    • message string required

      Human-readable explanation of the refusal.

    • status integer required

      The HTTP status code, repeated in the body.

    • remedy object

      A self-serve path forward, when one exists (a 402 points at how to restore access).

      • kind string required

        What kind of remedy this is, so a client can route it: whether the caller can clear the condition through the API, or a person must act in the web app.

        topupconnect_mailbox
      • url string required

        Where to go to clear the condition: an API path, or a web app page when only a person can.

  • 402 Your plan does not include this capability
    • code string required

      Stable machine-readable error code. Branch on this, never on the numeric status.

      bad_requestunauthorizedsignature_requiredpayment_requiredforbiddennot_foundconflictgonepayload_too_largeunprocessable_entitytoo_many_requestsinternal_errornot_implementedbilling_unavailablenot_contactablemailbox_link_unavailablemailbox_requiredmail_engine_unavailablewebhook_publisher_unavailabledatabase_unavailableclient_errorbuild_failed
    • message string required

      Human-readable explanation of the refusal.

    • status integer required

      The HTTP status code, repeated in the body.

    • remedy object

      A self-serve path forward, when one exists (a 402 points at how to restore access).

      • kind string required

        What kind of remedy this is, so a client can route it: whether the caller can clear the condition through the API, or a person must act in the web app.

        topupconnect_mailbox
      • url string required

        Where to go to clear the condition: an API path, or a web app page when only a person can.

  • 403 The key lacks search:read
    • code string required

      Stable machine-readable error code. Branch on this, never on the numeric status.

      bad_requestunauthorizedsignature_requiredpayment_requiredforbiddennot_foundconflictgonepayload_too_largeunprocessable_entitytoo_many_requestsinternal_errornot_implementedbilling_unavailablenot_contactablemailbox_link_unavailablemailbox_requiredmail_engine_unavailablewebhook_publisher_unavailabledatabase_unavailableclient_errorbuild_failed
    • message string required

      Human-readable explanation of the refusal.

    • status integer required

      The HTTP status code, repeated in the body.

    • remedy object

      A self-serve path forward, when one exists (a 402 points at how to restore access).

      • kind string required

        What kind of remedy this is, so a client can route it: whether the caller can clear the condition through the API, or a person must act in the web app.

        topupconnect_mailbox
      • url string required

        Where to go to clear the condition: an API path, or a web app page when only a person can.

  • 404 The seed is not in the index
    • ok boolean required
      false
    • error string required
    • hint string required
  • 429 Rate limit (10 requests per second per key), or the index is busy; see Retry-After
    • ok boolean required
      false
    • error string required
    • hint string required
  • 503 Search is not enabled in this environment, or the index is unavailable; see Retry-After
    • ok boolean required
      false
    • error string required
    • hint string required