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

# List accessible prompts and groups

> Returns all prompt templates and groups the user is entitled to see. Excludes ephemeral prompts.



## OpenAPI

````yaml /api-reference/openapi.json get /prompts
openapi: 3.0.3
info:
  title: Findable API
  version: 3.2.38
  description: >
    REST API for the Findable AI Assistant platform.


    ## Authentication


    All endpoints (except `/server/setup` and `/server/bootstrap`) require a
    valid **Azure AD / Entra ID Bearer token**.


    ### Obtaining a token


    1. Register (or reuse) an **App Registration** in Azure Entra ID for your
    client.

    2. Under **API Permissions**, add a delegated permission for the Findable
    server app:
       `api://<SERVER_CLIENT_ID>/User.Read`
    3. Acquire a token using MSAL (or any OAuth 2.0 library) with the following
    parameters:


    | Parameter | Value |

    |-----------|-------|

    | Authority | `https://login.microsoftonline.com/<TENANT_ID>` |

    | Client ID | Your client app registration ID |

    | Scope | `api://<SERVER_CLIENT_ID>/User.Read` |

    | Grant type | Authorization Code (interactive) or Client Credentials
    (daemon) |


    ### Example (MSAL Node.js)


    ```javascript

    const { ConfidentialClientApplication } = require("@azure/msal-node");


    const cca = new ConfidentialClientApplication({
      auth: {
        clientId: "<YOUR_CLIENT_ID>",
        authority: "https://login.microsoftonline.com/<TENANT_ID>",
        clientSecret: "<YOUR_CLIENT_SECRET>",
      },
    });


    const result = await cca.acquireTokenByClientCredential({
      scopes: ["api://<SERVER_CLIENT_ID>/.default"],
    });


    // Use result.accessToken in the Authorization header

    ```


    ### Using the token


    Include the token in every request:

    ```

    Authorization: Bearer <access_token>

    ```


    ### Roles


    Access is determined by Azure AD group membership configured in the
    application settings:

    - **Admin (Owner)**: Full access to all endpoints including admin operations

    - **Contributor**: Can create and manage chats, files, and content

    - **User**: Read access to entitled chats and resources
  contact:
    name: Findable Support
  license:
    name: Proprietary
servers:
  - url: /server
    description: Application server (relative)
security:
  - BearerAuth: []
tags:
  - name: AI
    description: Chat completion and AI generation endpoints
  - name: Chats
    description: Chat configuration CRUD with ACL enforcement
  - name: Settings
    description: Application settings and health
  - name: Files
    description: Blob storage file operations
  - name: Search
    description: Azure AI Search resource management
  - name: User
    description: User profile, feedback, chat logs, and preferences
  - name: Flows
    description: FlowEngine flow designer operations
  - name: Prompts
    description: Prompt template management
  - name: Pages
    description: Navigation page management
  - name: Admin
    description: Administrative operations (admin-only)
  - name: Bootstrap
    description: Bootstrap seed data operations (admin-only)
  - name: Setup
    description: Initial application setup (pre-auth)
  - name: Cosmos
    description: Generic Cosmos DB CRUD operations
  - name: Tools
    description: Tool providers, web search, and utility tools
  - name: MCP
    description: Model Context Protocol server management
  - name: Telemetry
    description: Version, health, and API permission checks
  - name: SharePoint
    description: SharePoint entitlement management
  - name: Data Platform
    description: Data platform connection management
  - name: Vector Stores
    description: Vector store provider operations
  - name: OneDrive
    description: OneDrive personal file storage operations
  - name: Jobs
    description: Background job and scheduler management
  - name: Memory
    description: User and organizational memory operations
  - name: Slack
    description: >-
      Slack bot interactions and webhooks (public, uses Slack signature
      verification)
  - name: Teams
    description: Microsoft Teams bot webhooks and interactions
  - name: Human Input
    description: Human-in-the-loop input requests for flow executions
  - name: Datasources
    description: Datasource catalog CRUD with ACL enforcement
  - name: Assignments
    description: >-
      Assignment lifecycle: inbox, sent, create, launch, complete, delegate,
      reject, reassign, remind, and recurring schedules. Experimental feature —
      requires experimental flag enabled.
paths:
  /prompts:
    get:
      tags:
        - Prompts
      summary: List accessible prompts and groups
      description: >-
        Returns all prompt templates and groups the user is entitled to see.
        Excludes ephemeral prompts.
      responses:
        '200':
          description: Array of prompt and group objects
          content:
            application/json:
              schema:
                type: array
                items:
                  oneOf:
                    - $ref: '#/components/schemas/PromptTemplate'
                    - $ref: '#/components/schemas/PromptGroup'
        '401':
          description: Not authenticated
components:
  schemas:
    PromptTemplate:
      type: object
      properties:
        id:
          type: string
          minLength: 1
        title:
          type: string
          minLength: 1
          maxLength: 200
        description:
          type: string
        content:
          type: string
          minLength: 1
        variableSpecs:
          default: []
          type: array
          items:
            type: object
            properties:
              name:
                type: string
                minLength: 1
              type:
                default: text
                type: string
                enum:
                  - text
                  - multiline
                  - number
                  - select
                  - multiselect
                  - boolean
                  - date
                  - file
                  - principal
                  - range
                  - hierarchy
                  - datetime
                  - time
                  - hidden
                  - password
                  - table
                  - repeater
              label:
                type: string
              placeholder:
                type: string
              helperText:
                type: string
              required:
                type: boolean
              defaultValue:
                anyOf:
                  - type: string
                  - type: number
                  - type: boolean
                  - type: array
                    items:
                      type: string
              options:
                type: array
                items:
                  anyOf:
                    - type: string
                    - type: object
                      properties:
                        group:
                          type: string
                          minLength: 1
                        items:
                          minItems: 1
                          type: array
                          items:
                            type: string
                      required:
                        - group
                        - items
                      additionalProperties: false
                    - type: object
                      properties:
                        value:
                          type: string
                        label:
                          type: string
                        description:
                          type: string
                        icon:
                          type: string
                        disabled:
                          type: boolean
                      required:
                        - value
                      additionalProperties: false
              min:
                type: number
              max:
                type: number
              step:
                type: number
              rows:
                type: number
              validation:
                type: string
                enum:
                  - none
                  - email
                  - url
                  - phone
                  - ipv4
                  - ipv6
                  - subnet
                  - uuid
                  - alphanumeric
                  - numeric
                  - custom
              pattern:
                type: string
              patternMessage:
                type: string
              minLength:
                type: number
              maxLength:
                type: number
              mask:
                type: string
              allowUsers:
                type: boolean
              allowGroups:
                type: boolean
              multiple:
                type: boolean
              accept:
                type: string
              maxFileSize:
                type: number
              maxFiles:
                type: number
              variant:
                type: string
                enum:
                  - default
                  - radio
                  - chips
                  - buttons
              width:
                type: string
                enum:
                  - full
                  - half
                  - third
                  - quarter
              order:
                type: number
              group:
                type: string
              disabled:
                type: boolean
              readonly:
                type: boolean
              conditionals:
                type: array
                items:
                  type: object
                  properties:
                    field:
                      type: string
                      minLength: 1
                    operator:
                      type: string
                      enum:
                        - equals
                        - not_equals
                        - contains
                        - not_contains
                        - greater_than
                        - less_than
                        - is_empty
                        - is_not_empty
                        - in
                        - not_in
                    value: {}
                    action:
                      type: string
                      enum:
                        - show
                        - hide
                        - require
                        - disable
                        - enable
                  required:
                    - field
                    - operator
                    - action
                  additionalProperties: false
              allowOther:
                type: boolean
              promptTemplateId:
                type: string
              minItems:
                type: number
              maxItems:
                type: number
            required:
              - name
              - type
            additionalProperties: false
        tags:
          default: []
          type: array
          items:
            type: string
        scope:
          default: shared
          type: string
          enum:
            - personal
            - shared
        isPublic:
          default: false
          type: boolean
        hideFromCatalog:
          default: false
          type: boolean
        owners:
          default: []
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              type:
                type: string
                enum:
                  - group
                  - user
              displayName:
                type: string
              mail:
                type: string
              securityEnabled:
                type: boolean
              mailEnabled:
                type: boolean
              groupTypes:
                nullable: true
                type: array
                items:
                  type: string
              groupType:
                type: string
              userPrincipalName:
                type: string
              jobTitle:
                type: string
              department:
                type: string
              officeLocation:
                type: string
            required:
              - id
              - type
            additionalProperties: {}
        contributors:
          default: []
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              type:
                type: string
                enum:
                  - group
                  - user
              displayName:
                type: string
              mail:
                type: string
              securityEnabled:
                type: boolean
              mailEnabled:
                type: boolean
              groupTypes:
                nullable: true
                type: array
                items:
                  type: string
              groupType:
                type: string
              userPrincipalName:
                type: string
              jobTitle:
                type: string
              department:
                type: string
              officeLocation:
                type: string
            required:
              - id
              - type
            additionalProperties: {}
        users:
          default: []
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              type:
                type: string
                enum:
                  - group
                  - user
              displayName:
                type: string
              mail:
                type: string
              securityEnabled:
                type: boolean
              mailEnabled:
                type: boolean
              groupTypes:
                nullable: true
                type: array
                items:
                  type: string
              groupType:
                type: string
              userPrincipalName:
                type: string
              jobTitle:
                type: string
              department:
                type: string
              officeLocation:
                type: string
            required:
              - id
              - type
            additionalProperties: {}
        inheritEntitlements:
          default: true
          anyOf:
            - type: boolean
            - type: object
              properties:
                owners:
                  type: boolean
                contributors:
                  type: boolean
                users:
                  type: boolean
              additionalProperties: false
        parentId:
          type: string
        lifecycle:
          default: permanent
          type: string
          enum:
            - permanent
            - ephemeral
        ttl:
          type: number
          minimum: 0
          exclusiveMinimum: true
        executionId:
          type: string
      required:
        - id
        - title
        - content
        - variableSpecs
        - tags
        - scope
        - isPublic
        - hideFromCatalog
        - owners
        - contributors
        - users
        - inheritEntitlements
        - lifecycle
      additionalProperties: false
    PromptGroup:
      type: object
      properties:
        id:
          type: string
          minLength: 1
        title:
          type: string
          minLength: 1
          maxLength: 200
        description:
          type: string
        scope:
          default: shared
          type: string
          enum:
            - personal
            - shared
        isPublic:
          default: false
          type: boolean
        hideFromCatalog:
          default: false
          type: boolean
        owners:
          default: []
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              type:
                type: string
                enum:
                  - group
                  - user
              displayName:
                type: string
              mail:
                type: string
              securityEnabled:
                type: boolean
              mailEnabled:
                type: boolean
              groupTypes:
                nullable: true
                type: array
                items:
                  type: string
              groupType:
                type: string
              userPrincipalName:
                type: string
              jobTitle:
                type: string
              department:
                type: string
              officeLocation:
                type: string
            required:
              - id
              - type
            additionalProperties: {}
        contributors:
          default: []
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              type:
                type: string
                enum:
                  - group
                  - user
              displayName:
                type: string
              mail:
                type: string
              securityEnabled:
                type: boolean
              mailEnabled:
                type: boolean
              groupTypes:
                nullable: true
                type: array
                items:
                  type: string
              groupType:
                type: string
              userPrincipalName:
                type: string
              jobTitle:
                type: string
              department:
                type: string
              officeLocation:
                type: string
            required:
              - id
              - type
            additionalProperties: {}
        users:
          default: []
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                minLength: 1
              type:
                type: string
                enum:
                  - group
                  - user
              displayName:
                type: string
              mail:
                type: string
              securityEnabled:
                type: boolean
              mailEnabled:
                type: boolean
              groupTypes:
                nullable: true
                type: array
                items:
                  type: string
              groupType:
                type: string
              userPrincipalName:
                type: string
              jobTitle:
                type: string
              department:
                type: string
              officeLocation:
                type: string
            required:
              - id
              - type
            additionalProperties: {}
        inheritEntitlements:
          default: true
          anyOf:
            - type: boolean
            - type: object
              properties:
                owners:
                  type: boolean
                contributors:
                  type: boolean
                users:
                  type: boolean
              additionalProperties: false
        parentId:
          type: string
      required:
        - id
        - title
        - scope
        - isPublic
        - hideFromCatalog
        - owners
        - contributors
        - users
        - inheritEntitlements
      additionalProperties: false
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Azure AD access token obtained via MSAL

````