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

# List Prompts

> Retrieve a list of prompts accessible to the authenticated user

Returns a list of prompts that the authenticated user has access to based on their role and permissions. Admins with bypass access control see all prompts, while other users only see prompts they own or have read access to.

## Response

<ResponseField name="Response" type="array">
  Array of prompt objects

  <Expandable title="Prompt Object">
    <ResponseField name="id" type="string" required>
      Unique identifier for the prompt
    </ResponseField>

    <ResponseField name="command" type="string" required>
      Command trigger for the prompt (e.g., "summarize", "translate")
    </ResponseField>

    <ResponseField name="user_id" type="string" required>
      ID of the user who created the prompt
    </ResponseField>

    <ResponseField name="name" type="string" required>
      Display name for the prompt
    </ResponseField>

    <ResponseField name="content" type="string" required>
      The prompt template content
    </ResponseField>

    <ResponseField name="data" type="object" optional>
      Additional data associated with the prompt
    </ResponseField>

    <ResponseField name="meta" type="object" optional>
      Metadata for the prompt
    </ResponseField>

    <ResponseField name="tags" type="array" optional>
      Array of tag strings for categorizing the prompt
    </ResponseField>

    <ResponseField name="is_active" type="boolean" default={true}>
      Whether the prompt is currently active
    </ResponseField>

    <ResponseField name="version_id" type="string" optional>
      ID of the active history entry (version control)
    </ResponseField>

    <ResponseField name="created_at" type="integer" required>
      Unix timestamp (epoch seconds) when prompt was created
    </ResponseField>

    <ResponseField name="updated_at" type="integer" required>
      Unix timestamp (epoch seconds) when prompt was last updated
    </ResponseField>

    <ResponseField name="access_grants" type="array" default={[]}>
      Array of access grant objects defining who can access this prompt
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://your-domain.com/api/prompts" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "command": "summarize",
      "user_id": "user-123",
      "name": "Text Summarizer",
      "content": "Please summarize the following text: {{input}}",
      "data": {},
      "meta": {},
      "tags": ["productivity", "writing"],
      "is_active": true,
      "version_id": "ver-123",
      "created_at": 1709164800,
      "updated_at": 1709251200,
      "access_grants": []
    },
    {
      "id": "660f9511-f3ac-52e5-b827-557766551111",
      "command": "translate",
      "user_id": "user-123",
      "name": "Language Translator",
      "content": "Translate the following to {{language}}: {{text}}",
      "data": {},
      "meta": {},
      "tags": ["languages"],
      "is_active": true,
      "version_id": "ver-456",
      "created_at": 1709078400,
      "updated_at": 1709164800,
      "access_grants": []
    }
  ]
  ```
</ResponseExample>
