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

# List the file formats a knowledge base can ingest

> The single catalog of ingestible formats, the list the upload picker offers, connector syncs follow and the ingestion check applies. Static and identical for every caller, so no authentication is required. Families: `document`, `text`, `data`, `email`, `calendar`, `image`, `audio`, `video`; image, audio and video files are parsed by a language model. Given mime_type and/or filename, the response also carries the ingestion check's verdict for that one file (resolved_mime, ingestible).




## OpenAPI

````yaml /api-reference/storage/swagger.yml get /v1/supported_formats
openapi: 3.0.3
info:
  version: 1.0.0
  title: Knowledges API
  description: >
    Public REST API for the Prisme.ai Knowledges (storage) workspace: knowledge
    bases, documents (uploaded files, web pages, remote files, connector
    documents), recurring web-crawl sources, semantic search, access control,
    per-knowledge-base API keys, and skills.


    Resource identifiers use the physical prefixes emitted by the implementation
    (`vs_` knowledge base, `vsf_` document, `seed_` web source, `kb-` API-key
    slug).


    This spec documents the public REST surface only. Internal helpers (private
    automations prefixed with `_`) and admin/GDPR lifecycle operations are not
    part of the public contract, except the platform health probe listed under
    the Admin tag.


    Each knowledge base also exposes a Model Context Protocol endpoint (`POST
    /v1/knowledge_bases/{knowledgeBaseId}/mcp`, JSON-RPC 2.0) giving agents
    filesystem-style read access to its content. It is listed under the MCP tag
    for its URL and auth only; use an MCP client rather than calling it as a
    REST resource.
  contact:
    name: Prisme.ai
    url: https://prisme.ai
servers:
  - url: https://{host}/v2/workspaces/slug:storage/webhooks
    description: Prisme.ai workspace webhooks
    variables:
      host:
        default: api.studio.prisme.ai
        description: API host (override for self-hosted or sandbox)
security:
  - BearerAuth: []
  - WorkspaceApiKeyAuth: []
tags:
  - name: Knowledge Bases
    description: >-
      Create, list, read, update, and delete knowledge bases (vector-backed
      document stores).
  - name: Documents
    description: >-
      Ingest and manage documents (uploaded files, web pages, remote files,
      connector documents) and their indexing.
  - name: Web Sources
    description: >-
      Recurring web crawl seeds that discover and index pages into a knowledge
      base.
  - name: Search
    description: Semantic search over a knowledge base.
  - name: MCP
    description: >-
      Per-knowledge-base Model Context Protocol endpoint for deterministic,
      filesystem-style access to content (kb_search, kb_ls, kb_find, kb_cat,
      kb_grep, kb_head, kb_tail, kb_sed, kb_source_url).
  - name: Access
    description: Per-knowledge-base access bindings (user, group, org, agent principals).
  - name: API Keys
    description: Per-knowledge-base API keys for connector authentication.
  - name: Files
    description: >-
      Files uploaded to the storage workspace, before or after they are attached
      to a knowledge base.
  - name: Stats
    description: Aggregate dashboard statistics.
  - name: Skills
    description: Prompt/instruction registry entries.
  - name: Admin
    description: >-
      Platform health probe called by the AI Governance Infrastructure page.
      Requires elevated permissions, a platform administrator session
      (`platformRole` `superadmin` or `root`).
paths:
  /v1/supported_formats:
    get:
      tags:
        - Formats
      summary: List the file formats a knowledge base can ingest
      description: >
        The single catalog of ingestible formats, the list the upload picker
        offers, connector syncs follow and the ingestion check applies. Static
        and identical for every caller, so no authentication is required.
        Families: `document`, `text`, `data`, `email`, `calendar`, `image`,
        `audio`, `video`; image, audio and video files are parsed by a language
        model. Given mime_type and/or filename, the response also carries the
        ingestion check's verdict for that one file (resolved_mime, ingestible).
      operationId: listSupportedFormats
      parameters:
        - name: mime_type
          in: query
          required: false
          schema:
            type: string
            maxLength: 256
          description: >-
            Declared type of one file to check. Parameters (`; charset=...`) are
            ignored.
        - name: filename
          in: query
          required: false
          schema:
            type: string
            maxLength: 512
          description: >-
            Name of that file. Its extension types the file when mime_type is
            missing or octet-stream (application/ or binary/); an extension
            nothing here parses resolves to application/octet-stream, which is
            not ingestible.
      responses:
        '200':
          description: Supported formats.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SupportedFormats'
      security: []
components:
  schemas:
    SupportedFormats:
      type: object
      properties:
        object:
          type: string
          enum:
            - list
        data:
          type: array
          items:
            type: object
            properties:
              mime:
                type: string
                example: message/rfc822
              extensions:
                type: array
                description: Bare, lowercase extensions (no dot).
                items:
                  type: string
                example:
                  - eml
              family:
                type: string
                enum:
                  - document
                  - text
                  - data
                  - email
                  - calendar
                  - image
                  - audio
                  - video
        mime_types:
          type: array
          items:
            type: string
        extensions:
          type: array
          items:
            type: string
        extension_mime_types:
          type: object
          description: Each extension mapped to its canonical mime type.
          additionalProperties:
            type: string
          example:
            eml: message/rfc822
            msg: application/vnd.ms-outlook
        resolved_mime:
          type: string
          description: >-
            Only with mime_type or filename. The type the ingestion check
            applies - the declared one, or the extension's when the declared one
            is missing or octet-stream (application/ or binary/). Empty when the
            file has neither a type nor an extension (such a file is
            ingestible).
          example: message/rfc822
        ingestible:
          type: boolean
          description: >-
            Only with mime_type or filename. False when the ingestion check
            would refuse the file (UNSUPPORTED_FILE_TYPE).
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        User session JWT or instance API key (`iak_*`). Send as `Authorization:
        Bearer <token>`.
    WorkspaceApiKeyAuth:
      type: apiKey
      in: header
      name: x-prismeai-api-key
      description: Workspace- or knowledge-base-scoped API key.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.