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

# Retrieve a datasource



## OpenAPI

````yaml get /v2/knowledge/{knowledge_id}/datasources/{datasource_id}
openapi: 3.1.0
info:
  title: orq.ai API
  version: '2.0'
  description: orq.ai API documentation
servers:
  - url: https://api.orq.ai
security:
  - ApiKey: []
tags:
  - description: List models available through the AI Router.
    name: Models
  - name: Guardrail Rules
  - name: Policies
  - name: Routing Rules
  - name: API keys
    description: >-
      API keys authenticate programmatic access to the workspace. The unified
      key model exposes opaque tokens, per-domain access grants, and budget /
      rate-limit constraints (see ADR 0001 and ADR 0002).
  - name: Budgets
    description: >-
      Budgets govern spend, token usage, and request rate across six scopes:
      workspace, project, identity, api-key, provider, and model. A budget is
      hierarchical and defense-in-depth — every applicable budget is a hard
      gate, and the most restrictive one wins per dimension (see ADR 0007).
  - name: Documentation
    description: >-
      Search the orq.ai documentation. Proxies the workspace's query to the
      hosted docs search index.
  - name: Files
    description: File upload and retrieval operations.
  - name: Identities
    description: >-
      Identities represent end users from your system for usage and engagement
      tracking.
  - name: Projects
    description: Projects organize resources within a workspace
  - name: Skills
    description: >-
      Skills are modular instructions you can use to codify processes and
      conventions
  - name: Responses
  - description: >-
      Run agents on a cadence — cron, interval, or one-off. Minimum firing
      interval is 1 hour.
    name: Agent Schedules
  - name: Embeddings
  - name: Reporting
    description: >-
      GenAI reporting API over canonical analytics rollups. Accepts a metric
      name, time range, grain, group-by, and filters; returns a typed time
      series and optional totals.
externalDocs:
  url: https://docs.orq.ai
  description: orq.ai Documentation
paths:
  /v2/knowledge/{knowledge_id}/datasources/{datasource_id}:
    get:
      tags:
        - Knowledge Bases
      summary: Retrieve a datasource
      operationId: RetrieveDatasource
      parameters:
        - schema:
            type: string
            description: The unique identifier of the knowledge base
          required: true
          description: The unique identifier of the knowledge base
          name: knowledge_id
          in: path
        - schema:
            type: string
            description: The unique identifier of the datasource.
          required: true
          description: The unique identifier of the datasource.
          name: datasource_id
          in: path
      responses:
        '200':
          description: Datasource successfully retrieved
          content:
            application/json:
              schema:
                type: object
                properties:
                  _id:
                    type: string
                    format: ulid
                    pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
                    default: 01KTRG2896H5TENBZA8EB6B22Q
                    readOnly: true
                    description: The unique identifier of the data source
                  display_name:
                    type: string
                    description: >-
                      The display name of the datasource. Normally the name of
                      the uploaded file
                  description:
                    type:
                      - string
                      - 'null'
                    description: The description of the knowledge base
                  status:
                    type: string
                    enum:
                      - pending
                      - processing
                      - completed
                      - failed
                      - queued
                  file_id:
                    type:
                      - string
                      - 'null'
                    description: >-
                      The unique identifier of the file used to create the
                      datasource.
                  created:
                    type: string
                    description: The date and time the datasource was created
                  updated:
                    type: string
                    description: The date and time the datasource was updated
                  created_by_id:
                    type:
                      - string
                      - 'null'
                    format: uuid
                    pattern: >-
                      ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
                    readOnly: true
                    description: The user ID of the creator of the knowledge base
                  update_by_id:
                    type:
                      - string
                      - 'null'
                    format: uuid
                    pattern: >-
                      ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
                    readOnly: true
                    description: >-
                      The user ID of the last user who updated the knowledge
                      base
                  knowledge_id:
                    type: string
                    description: The unique identifier of the knowledge base
                  chunks_count:
                    type: number
                    description: The number of chunks in the datasource
                required:
                  - display_name
                  - status
                  - created
                  - updated
                  - knowledge_id
                  - chunks_count
components:
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      bearerFormat: JWT

````