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

# List Knowledge Items

Returns all knowledge items accessible to the API key's assigned role. Items are filtered by the key's permissions — items requiring higher access levels than the key's role are excluded.

<ResponseExample>
  ```json 200 theme={null}
  {
    "success": true,
    "data": {
      "items": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "organizationId": "org_2abc123",
          "path": "docs/api/overview.md",
          "content": "# API Overview\n\nWelcome to the API.",
          "itemType": "text",
          "fileKey": null,
          "fileName": null,
          "contentType": null,
          "fileSize": null,
          "requiredReadPermission": "inherit",
          "requiredWritePermission": "inherit",
          "createdAt": "2026-01-15T10:30:00.000Z",
          "updatedAt": "2026-01-15T10:30:00.000Z"
        }
      ]
    }
  }
  ```

  ```json 401 theme={null}
  {
    "success": false,
    "error": "Invalid API key"
  }
  ```
</ResponseExample>

<ResponseField name="success" type="boolean" required>
  Always `true` for successful responses.
</ResponseField>

<ResponseField name="data" type="object" required>
  <Expandable title="data">
    <ResponseField name="items" type="KnowledgeItem[]" required>
      Array of knowledge items the key has permission to read.

      <Expandable title="KnowledgeItem">
        <ResponseField name="id" type="string" required>UUID of the item.</ResponseField>
        <ResponseField name="organizationId" type="string" required>Organization ID.</ResponseField>
        <ResponseField name="path" type="string" required>File-like path (e.g. `docs/api/overview.md`).</ResponseField>
        <ResponseField name="content" type="string" required>Item content (markdown, JSON, or extracted text).</ResponseField>
        <ResponseField name="itemType" type="string" required>Either `text` or `file`.</ResponseField>
        <ResponseField name="fileKey" type="string | null">Storage key for file items.</ResponseField>
        <ResponseField name="fileName" type="string | null">Original filename for file items.</ResponseField>
        <ResponseField name="contentType" type="string | null">MIME type for file items.</ResponseField>
        <ResponseField name="fileSize" type="integer | null">File size in bytes.</ResponseField>
        <ResponseField name="requiredReadPermission" type="string" required>Permission required to read this item.</ResponseField>
        <ResponseField name="requiredWritePermission" type="string | null">Permission required to write this item.</ResponseField>
        <ResponseField name="createdAt" type="string" required>ISO 8601 timestamp.</ResponseField>
        <ResponseField name="updatedAt" type="string" required>ISO 8601 timestamp.</ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>
