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

# Reindex knowledge

> Manually trigger a full re-indexing of the knowledge. The reindex runs **asynchronously**: the API returns as soon as the job is enqueued. Re-indexing is not performed immediately. This endpoint consumes credits — the actual credit cost is variable, based on the volume of data being re-indexed, and is charged asynchronously as processing completes. If the background re-index later fails, subsequent retrievals surface that terminal state through `status` and `last_error`.



## OpenAPI

````yaml post /knowledge/{knowledge_id}/reindex
openapi: 3.0.3
info:
  version: 0.1.1
  title: Datagrid API
  description: Datagrid API
servers:
  - url: https://api.datagrid.com/v1
security:
  - BearerAuth: []
paths:
  /knowledge/{knowledge_id}/reindex:
    post:
      tags:
        - Knowledge
      summary: Reindex knowledge
      description: >-
        Manually trigger a full re-indexing of the knowledge. The reindex runs
        **asynchronously**: the API returns as soon as the job is enqueued.
        Re-indexing is not performed immediately. This endpoint consumes credits
        — the actual credit cost is variable, based on the volume of data being
        re-indexed, and is charged asynchronously as processing completes. If
        the background re-index later fails, subsequent retrievals surface that
        terminal state through `status` and `last_error`.
      operationId: reindexKnowledge
      parameters:
        - name: knowledge_id
          in: path
          required: true
          schema:
            type: string
          description: The id of the knowledge to reindex.
      responses:
        '204':
          description: >-
            Reindex job triggered successfully. The reindex runs asynchronously;
            there is no immediate re-indexing.
          headers:
            X-Daily-Credit-Cap-Remaining:
              $ref: '#/components/headers/DailyCreditCapRemaining'
            X-Monthly-Credit-Cap-Remaining:
              $ref: '#/components/headers/MonthlyCreditCapRemaining'
        '402':
          description: >-
            Credit limit exceeded. Either the organization does not have enough
            credits to perform this operation, or it has reached the monthly
            credit cap set in Control Tower. Check your billing status, or wait
            for the cap to reset.
          headers:
            X-Daily-Credit-Cap-Remaining:
              $ref: '#/components/headers/DailyCreditCapRemaining'
            X-Monthly-Credit-Cap-Remaining:
              $ref: '#/components/headers/MonthlyCreditCapRemaining'
        '429':
          description: >-
            Rate limit exceeded. The request has been throttled because the rate
            limit for this endpoint has been reached. Check the `Retry-After`
            response header and retry after the specified number of seconds.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitError'
components:
  headers:
    DailyCreditCapRemaining:
      description: >-
        Credits left before the account's daily credit cap (set in Control
        Tower) is reached, rounded up. `0` means the cap has been reached; the
        daily cap does not block requests. Present only when a daily cap is
        configured.
      schema:
        type: integer
        example: 600
    MonthlyCreditCapRemaining:
      description: >-
        Credits left before the account's monthly credit cap (set in Control
        Tower) is reached, rounded up. At `0`, credit-consuming requests return
        `402` until the next calendar month. Present only when a monthly cap is
        configured.
      schema:
        type: integer
        example: 15000
  schemas:
    RateLimitError:
      type: object
      description: >-
        Returned when the rate limit is exceeded. Rate limits are enforced per
        teamspace, endpoint path, and HTTP method over a 60-second sliding
        window. Each endpoint may have its own limit — check the
        X-RateLimit-Limit response header for the effective value.
      required:
        - error
        - message
        - retryable
        - status_code
      properties:
        status_code:
          type: integer
          description: The HTTP status code (429).
        statusCode:
          type: integer
          deprecated: true
          description: Deprecated. Use status_code instead.
        error:
          type: string
          enum:
            - rate_limit_exceeded
          description: The error code identifying this as a rate limit error.
        message:
          type: string
          description: A human-readable error message.
        mitigation:
          type: string
          description: Suggested action to resolve the error.
        retryable:
          type: boolean
          description: Whether the request can be retried after a delay.
        details:
          type: object
          properties:
            reason:
              type: string
              description: A detailed explanation of why the rate limit was exceeded.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.