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

# List documents

> Retrieves a paginated list of documents with optional filtering by status, assignee, parent, and other criteria. Only returns documents with active approved versions unless otherwise specified.



## OpenAPI

````yaml https://app.stainless.com/api/spec/documented/avido/openapi.documented.yml get /v0/documents
openapi: 3.1.1
info:
  title: Avido API
  description: >-
    Avido's API for LLM usage events, tool calls, trace management, webhook
    validation, and more. See each endpoint's request/response schema for
    details.
  version: 0.1.0
  contact:
    name: Avido Support
    email: support@avidoai.com
    url: https://avidoai.com/support
servers:
  - url: https://api.avidoai.com
    description: Production API
security:
  - ApiKey: []
    ApplicationId: []
paths:
  /v0/documents:
    get:
      tags:
        - Documents
      summary: List documents
      description: >-
        Retrieves a paginated list of documents with optional filtering by
        status, assignee, parent, and other criteria. Only returns documents
        with active approved versions unless otherwise specified.
      operationId: listDocuments
      parameters:
        - in: query
          name: skip
          schema:
            description: Number of items to skip before starting to collect the result set.
            example: 0
            default: 0
            type: integer
            minimum: 0
            maximum: 9007199254740991
          description: Number of items to skip before starting to collect the result set.
        - in: query
          name: limit
          schema:
            description: Number of items to include in the result set.
            example: 25
            type: integer
            minimum: 1
            maximum: 100
          description: Number of items to include in the result set.
        - in: query
          name: orderBy
          schema:
            description: Field to order the result set by.
            example: createdAt
            default: createdAt
            type: string
            enum:
              - createdAt
              - modifiedAt
              - type
              - assignee
              - id
          description: Field to order the result set by.
        - in: query
          name: orderDir
          schema:
            description: Order direction.
            example: desc
            default: desc
            type: string
            enum:
              - asc
              - desc
          description: Order direction.
        - in: query
          name: type
          schema:
            default: KNOWLEDGE
            description: Filter by document type. Defaults to `KNOWLEDGE` when omitted.
            example: KNOWLEDGE
            type: string
            enum:
              - KNOWLEDGE
              - POLICY
          description: Filter by document type. Defaults to `KNOWLEDGE` when omitted.
        - in: query
          name: documentStatus
          schema:
            description: >-
              Filter by document-level status (`DocumentV2.status`). When
              omitted, the API defaults to `ACTIVE` for library queries and
              skips the filter for quickstart-scoped queries (so DRAFT KB-Review
              uploads remain visible). Distinct from `status` below which
              filters the document's active version status.
            example: ACTIVE
            type: string
            enum:
              - DRAFT
              - ACTIVE
          description: >-
            Filter by document-level status (`DocumentV2.status`). When omitted,
            the API defaults to `ACTIVE` for library queries and skips the
            filter for quickstart-scoped queries (so DRAFT KB-Review uploads
            remain visible). Distinct from `status` below which filters the
            document's active version status.
        - in: query
          name: status
          schema:
            description: >-
              Filter by document version status (filters documents by their
              active version status). Supports multiple values.
            example: APPROVED
            type: array
            items:
              type: string
              enum:
                - DRAFT
                - REVIEW
                - APPROVED
                - ARCHIVED
                - ACTIVE
              description: >-
                Status of the document. Valid options: DRAFT, REVIEW, APPROVED,
                ARCHIVED, ACTIVE.
              example: APPROVED
          description: >-
            Filter by document version status (filters documents by their active
            version status). Supports multiple values.
        - in: query
          name: tagId
          schema:
            description: Filter documents by tag ID
            example: 789e4567-e89b-12d3-a456-426614174000
            type: array
            items:
              type: string
          description: Filter documents by tag ID
        - in: query
          name: search
          schema:
            description: Search in document version title and content
            example: API documentation
            type: string
          description: Search in document version title and content
        - in: query
          name: scrapeJobId
          schema:
            description: Filter by scrape job ID. Supports multiple values.
            example: 321e4567-e89b-12d3-a456-426614174000
            type: array
            items:
              type: string
              format: uuid
              pattern: >-
                ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: Filter by scrape job ID. Supports multiple values.
        - in: query
          name: fileProcessingId
          schema:
            description: >-
              Filter by source FileProcessing ID (the row that ingested the
              doc). Supports multiple values, capped at 100.
            example: 654e7890-e89b-12d3-a456-426614174000
            maxItems: 100
            type: array
            items:
              type: string
              format: uuid
              pattern: >-
                ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: >-
            Filter by source FileProcessing ID (the row that ingested the doc).
            Supports multiple values, capped at 100.
        - in: query
          name: topicId
          schema:
            description: Filter documents by topic ID
            example: 789e1234-e89b-12d3-a456-426614174000
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: Filter documents by topic ID
        - in: query
          name: assignee
          schema:
            description: Filter by assignee user ID
            example: user_123456789
            type: string
          description: Filter by assignee user ID
        - in: query
          name: startDate
          schema:
            description: Filter documents created after this date (inclusive).
            example: '2024-01-01T00:00:00.000Z'
            type: string
            format: date-time
            pattern: >-
              ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
          description: Filter documents created after this date (inclusive).
        - in: query
          name: endDate
          schema:
            description: Filter documents created before this date (inclusive).
            example: '2024-12-31T23:59:59.999Z'
            type: string
            format: date-time
            pattern: >-
              ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
          description: Filter documents created before this date (inclusive).
        - in: query
          name: quickstartId
          schema:
            description: Filter documents linked to a specific quickstart.
            example: 456e7890-e89b-12d3-a456-426614174001
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: Filter documents linked to a specific quickstart.
        - in: query
          name: metadataStep
          schema:
            description: >-
              Filter documents whose active version metadata contains this step
              value.
            example: KNOWLEDGE_BASE_REVIEW
            type: string
            maxLength: 64
          description: >-
            Filter documents whose active version metadata contains this step
            value.
      responses:
        '200':
          description: Successfully retrieved documents
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDocumentResponse'
        '400':
          description: bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationErrorResponse'
        '500':
          description: internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      x-codeSamples:
        - lang: JavaScript
          source: |-
            import Avido from 'avido';

            const client = new Avido({
              apiKey: process.env['AVIDO_API_KEY'], // This is the default and can be omitted
              applicationID: process.env['AVIDO_APPLICATION_ID'], // This is the default and can be omitted
            });

            // Automatically fetches more pages as needed.
            for await (const documentListResponse of client.documents.list()) {
              console.log(documentListResponse.id);
            }
        - lang: Python
          source: |-
            import os
            from avido import Avido

            client = Avido(
                api_key=os.environ.get("AVIDO_API_KEY"),  # This is the default and can be omitted
                application_id=os.environ.get("AVIDO_APPLICATION_ID"),  # This is the default and can be omitted
            )
            page = client.documents.list()
            page = page.data[0]
            print(page.id)
components:
  schemas:
    PaginatedDocumentResponse:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
                pattern: >-
                  ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                description: Unique identifier of the document
                example: 123e4567-e89b-12d3-a456-426614174000
              createdAt:
                description: When the document was created
                example: '2024-01-05T12:34:56.789Z'
                type: string
                format: date-time
                pattern: >-
                  ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              modifiedAt:
                description: When the document was last modified
                example: '2024-01-05T12:34:56.789Z'
                type: string
                format: date-time
                pattern: >-
                  ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
              orgId:
                type: string
                description: Organization ID that owns this document
                example: org_123456789
              applicationId:
                type: string
                format: uuid
                pattern: >-
                  ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                description: Application ID this document belongs to
                example: 456e4567-e89b-12d3-a456-426614174000
              assignee:
                description: User ID of the person assigned to this document
                example: user_123456789
                nullable: true
                anyOf:
                  - type: string
                  - type: 'null'
              scrapeJob:
                $ref: '#/components/schemas/ScrapeJobOutput'
                description: Optional scrape job that generated this document
                nullable: true
              scrapeJobId:
                description: Optional ID of the scrape job that generated this document
                example: 321e4567-e89b-12d3-a456-426614174000
                nullable: true
                type: string
                format: uuid
                pattern: >-
                  ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              fileProcessingId:
                description: >-
                  Optional ID of the FileProcessing row that ingested this
                  document (CSV/PDF/XLSX/markdown uploads). Null for scraped,
                  generated, or directly-created docs.
                example: 654e7890-e89b-12d3-a456-426614174000
                nullable: true
                type: string
                format: uuid
                pattern: >-
                  ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              type:
                type: string
                enum:
                  - KNOWLEDGE
                  - POLICY
                description: 'Type of the document. Valid options: KNOWLEDGE, POLICY.'
                example: KNOWLEDGE
              topicId:
                description: Optional ID of the topic this document belongs to
                example: 789e1234-e89b-12d3-a456-426614174000
                nullable: true
                type: string
                format: uuid
                pattern: >-
                  ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              optimized:
                type: boolean
                description: Whether the document has been optimized
                example: false
              isVerified:
                type: boolean
                description: >-
                  Whether the document has been signed off during quickstart
                  review
                example: false
              status:
                type: string
                enum:
                  - DRAFT
                  - ACTIVE
                description: Visibility status of the document in the knowledge library.
                example: ACTIVE
              versions:
                type: array
                items:
                  $ref: '#/components/schemas/DocumentVersionOutput'
                description: Array of document versions
              title:
                type: string
                description: use versions.title instead
                deprecated: true
              content:
                type: string
                description: use versions.content
                deprecated: true
              tags:
                type: array
                items:
                  $ref: '#/components/schemas/CoreTagOutput'
            required:
              - id
              - createdAt
              - modifiedAt
              - orgId
              - applicationId
              - type
              - optimized
              - isVerified
              - status
              - versions
              - title
              - content
              - tags
            additionalProperties: false
        pagination:
          type: object
          properties:
            skip:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Number of items skipped.
              example: 0
            limit:
              type: integer
              minimum: 1
              maximum: 9007199254740991
              description: Number of items per page.
              example: 25
            total:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Total number of items available.
              example: 100
            totalPages:
              type: integer
              minimum: 0
              maximum: 9007199254740991
              description: Total number of pages available.
              example: 4
            totalCount:
              description: >-
                Total number of items without filters applied. Used to
                distinguish between truly empty results and empty filtered
                results.
              example: 100
              type: integer
              minimum: 0
              maximum: 9007199254740991
          required:
            - skip
            - limit
            - total
            - totalPages
          additionalProperties: false
          title: PaginationResponse
          description: Pagination metadata returned in a paginated response.
      required:
        - data
        - pagination
      additionalProperties: false
      title: Paginated Documents
      description: Paginated response containing documents
    ErrorResponse:
      type: object
      properties:
        message:
          type: string
          description: A human-readable error message explaining the error.
          example: Resource not found
      required:
        - message
      additionalProperties: false
      title: ErrorResponse
      description: Standard error format for failed API operations.
    ValidationErrorResponse:
      type: object
      properties:
        message:
          type: string
          description: A human-readable error message indicating what went wrong.
          example: Invalid request data
        issues:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
              message:
                type: string
              path:
                type: array
                items:
                  type: string
            required:
              - code
              - message
              - path
            additionalProperties: false
          description: Array of detailed validation error objects.
          example:
            - code: invalid_string
              message: Invalid UUID
              path:
                - id
      required:
        - message
        - issues
      additionalProperties: false
      title: ValidationErrorResponse
      description: Details about validation errors in incoming requests.
    ScrapeJobOutput:
      type: object
      properties:
        id:
          type: string
          format: uuid
          pattern: >-
            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: The unique identifier of the scrape job
          example: 123e4567-e89b-12d3-a456-426614174000
        createdAt:
          description: When the scrape job was created
          example: '2024-01-05T12:34:56.789Z'
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        modifiedAt:
          description: When the scrape job was last modified
          example: '2024-01-05T12:34:56.789Z'
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        orgId:
          type: string
          description: Organization ID that owns the scrape job
          example: org_123
        applicationId:
          type: string
          format: uuid
          pattern: >-
            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: Application ID this scrape job belongs to
          example: 456e4567-e89b-12d3-a456-426614174000
        initiatedBy:
          type: string
          description: User ID who initiated the scrape job
          example: user_123
        name:
          type: string
          description: The name/title of the scrape job
          example: Documentation Scrape
        url:
          type: string
          maxLength: 2048
          format: uri
          description: The URL that was scraped
          example: https://example.com
        pages:
          description: The pages scraped from the URL
          example:
            - url: https://example.com/page1
              title: Page 1
              description: This is the first page of the documentation.
              category: Documentation
            - url: https://example.com/page2
          type: array
          items:
            $ref: '#/components/schemas/ScrapeJobPageOutput'
        failedPages:
          description: Pages that failed to scrape after all retry attempts
          example:
            - url: https://example.com/page3
              error: Connection timeout after 5 retries
          type: array
          items:
            $ref: '#/components/schemas/ScrapeJobPageFailureOutput'
        status:
          $ref: '#/components/schemas/ScrapeJobStatus'
          description: Current status of the scrape job
        quickstartStatus:
          $ref: '#/components/schemas/QuickstartScrapeJobStatus'
          description: The quickstart association status of the scrape job
      required:
        - id
        - createdAt
        - modifiedAt
        - orgId
        - applicationId
        - initiatedBy
        - name
        - url
        - status
        - quickstartStatus
      additionalProperties: false
      title: Scrape Job
      description: A scrape job for extracting content from a website
    DocumentVersionOutput:
      type: object
      properties:
        id:
          type: string
          format: uuid
          pattern: >-
            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: Unique identifier of the document version
          example: 321e4567-e89b-12d3-a456-426614174001
        createdAt:
          description: When the document version was created
          example: '2024-01-05T12:34:56.789Z'
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        modifiedAt:
          description: When the document version was last modified
          example: '2024-01-05T12:34:56.789Z'
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        orgId:
          type: string
          description: Organization ID that owns this document version
          example: org_123456789
        applicationId:
          type: string
          format: uuid
          pattern: >-
            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: Application ID this document version belongs to
          example: 456e4567-e89b-12d3-a456-426614174000
        title:
          type: string
          description: Title of the document version
          example: API Documentation
        content:
          type: string
          description: Content of the document version
          example: This document describes the API endpoints...
        metadata:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
          description: Optional metadata associated with the document version
        originalSentences:
          description: Array of original sentences from the source
          example:
            - This is the first sentence.
            - This is the second sentence.
          type: array
          items:
            type: string
        language:
          type: string
          description: Language of the document version
          example: english
        status:
          type: string
          enum:
            - DRAFT
            - REVIEW
            - APPROVED
            - ARCHIVED
            - ACTIVE
          description: >-
            Status of the document. Valid options: DRAFT, REVIEW, APPROVED,
            ARCHIVED, ACTIVE.
          example: APPROVED
        type:
          type: string
          enum:
            - KNOWLEDGE
            - POLICY
          description: 'Type of the document. Valid options: KNOWLEDGE, POLICY.'
          example: KNOWLEDGE
        versionNumber:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Version number of this document version
          example: 1
        documentId:
          type: string
          format: uuid
          pattern: >-
            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: ID of the document this version belongs to
          example: 123e4567-e89b-12d3-a456-426614174000
      required:
        - id
        - createdAt
        - modifiedAt
        - orgId
        - applicationId
        - title
        - content
        - metadata
        - originalSentences
        - language
        - status
        - type
        - versionNumber
        - documentId
      additionalProperties: false
      title: DocumentVersion
      description: A specific version of a document with its content and metadata
    CoreTagOutput:
      type: object
      properties:
        id:
          type: string
          format: uuid
          pattern: >-
            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          description: Unique identifier of the tag
          example: 123e4567-e89b-12d3-a456-426614174000
        name:
          type: string
          description: Name of the tag
          example: API Documentation
        color:
          type: string
          description: Hex color code for the tag
          example: '#3B82F6'
      required:
        - id
        - name
        - color
      additionalProperties: false
    ScrapeJobPageOutput:
      type: object
      properties:
        url:
          type: string
          maxLength: 2048
          format: uri
          description: The URL of the page
          example: https://example.com/page1
        title:
          description: The title of the page
          example: Page 1
          type: string
        description:
          description: The description of the page
          example: This is the first page of the documentation.
          type: string
        category:
          description: The category of the page
          example: Documentation
          type: string
      required:
        - url
      additionalProperties: false
    ScrapeJobPageFailureOutput:
      type: object
      properties:
        url:
          type: string
          maxLength: 2048
          format: uri
          description: The URL that failed to scrape
          example: https://example.com/page1
        error:
          type: string
          description: The error message from the failed scrape attempt
          example: Connection timeout after 5 retries
      required:
        - url
        - error
      additionalProperties: false
      title: Scrape Job Page Failure
      description: Information about a page that failed to scrape after all retry attempts
    ScrapeJobStatus:
      type: string
      enum:
        - MAPPING
        - PENDING
        - IN_PROGRESS
        - COMPLETED
        - FAILED
      description: The status of the scrape job
      example: PENDING
    QuickstartScrapeJobStatus:
      type: string
      enum:
        - PROCESSING
        - REVIEW
        - COMPLETED
        - NOT_ASSOCIATED
      description: The quickstart status of the scrape job
      example: NOT_ASSOCIATED
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: Your unique Avido API key
    ApplicationId:
      type: apiKey
      in: header
      name: x-application-id
      description: Your unique Avido Application ID

````