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

# Creates a Knowledge Base.



## OpenAPI

````yaml /api-reference/openapi.yaml post /knowledge-bases
openapi: 3.0.3
info:
  title: Totoy API
  description: >-
    Explain documents in simple, plain or detailed language and create Knowledge
    Bases from your documents in 19 languages.
  termsOfService: https://www.totoy.ai
  contact:
    name: Totoy Support
    email: support@totoy.ai
  license:
    name: MIT
    url: https://raw.githubusercontent.com/totoy-ai/totoy-openapi/main/LICENSE
  version: 1.1.5
servers:
  - url: https://api.totoy.ai/v1
security:
  - ApiKeyAuth: []
tags:
  - name: Explanation
    description: >-
      Given a document in any language, an output language and one of three
      language levels, the assistant will return an `Explanation` for this
      document.
  - name: Knowledge Bases
    description: >-
      Create `Knowledge Bases` from document or text `Sources` and chat with an
      assistant about them in 19 languages.
  - name: Sources
    description: >-
      `Sources` are used to upload documents (.pdf, .jpg or .png) or plain texts
      that can be used with features like `Explanation` or `Knowledge Bases.`
  - name: Projects
    description: '`Projects` are used to group `Knowledge Bases` and `Explanations`.'
  - name: Organization
    description: Get information about your `Organization`.
paths:
  /knowledge-bases:
    post:
      tags:
        - Knowledge Bases
      summary: Creates a Knowledge Base.
      operationId: createKnowledgeBase
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateKnowledgeBaseRequest'
            examples:
              create-knowledge-base-request-example:
                $ref: '#/components/examples/create-knowledge-base-request-example'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KnowledgeBase'
              examples:
                knowledge-base-example-1:
                  $ref: '#/components/examples/knowledge-base-example-1'
        4XX:
          $ref: '#/components/responses/general4XXResponse'
        5XX:
          $ref: '#/components/responses/general5XXResponse'
components:
  schemas:
    CreateKnowledgeBaseRequest:
      title: CreateKnowledgeBaseRequest
      type: object
      additionalProperties: false
      properties:
        name:
          description: The name for the `Knowledge Base`
          type: string
          maxLength: 256
          example: Totoy Customer Support Assistant
        instructions:
          description: The instructions for the `Knowledge Base`.
          type: string
          maxLength: 4096
          example: >-
            You are a customer support assistant for the customers of the
            company Totoy.
        project_id:
          description: >-
            The unique identifier for the `Project` that the `Knowledge Base`
            will be assigned to. If no `project_id` is provided, the `Knowledge
            Base` will be assigned to the default `Project`.
          maxLength: 28
          pattern: ^pj_[a-zA-Z0-9]{25}$
          type: string
          example: pj_avX7imfLaPcQnv5ckvGlOEBA9
    KnowledgeBase:
      title: KnowledgeBase
      type: object
      additionalProperties: false
      properties:
        knowledge_base_id:
          description: The unique identifier for the `Knowledge Base`.
          maxLength: 28
          pattern: ^kb_[a-zA-Z0-9]{25}$
          type: string
          example: kb_feMfJbeqbAEj4u8K5HqmKpUbY
        name:
          description: The name for the `Knowledge Base`.
          type: string
          maxLength: 256
          example: Totoy Customer Support Assistant
        created_at:
          description: >-
            The date-time of when the `Knowledge Base` was created, in ISO 8601
            format.
          type: string
          format: date-time
          example: '2023-07-05T12:00:00Z'
        updated_at:
          description: >-
            The date-time of when the `Knowledge Base` was last modified, in ISO
            8601 format.
          type: string
          format: date-time
          example: '2023-07-05T12:00:00Z'
        instructions:
          description: The instructions for the `Knowledge Base`.
          type: string
          maxLength: 4096
          example: >-
            You are a customer support assistant for the customers of the
            company Totoy.
        project_id:
          description: >-
            The unique identifier for the `Project` that the `Knowledge Base` is
            assigned to.
          maxLength: 28
          pattern: ^pj_[a-zA-Z0-9]{25}$
          type: string
          example: pj_avX7imfLaPcQnv5ckvGlOEBA9
      required:
        - knowledge_base_id
        - name
        - created_at
        - updated_at
        - instructions
        - project_id
    Problem:
      title: Problem
      description: A Response Body for HTTP Problem Details in RFC 9457 format.
      type: object
      additionalProperties: false
      properties:
        type:
          description: A URI reference that identifies the problem type.
          type: string
          maxLength: 512
          example: https://docs.totoy.ai/probs/out-of-credit
        title:
          description: A short, human-readable summary of the problem type.
          type: string
          maxLength: 512
          example: You do not have enough credit.
        status:
          description: >-
            The HTTP status code generated by the origin server for this
            occurrence of the problem.
          type: integer
          format: int32
          example: 403
        detail:
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
          type: string
          maxLength: 4096
          example: You do not have enough credit to perform this operation.
        instance:
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem.
          type: string
          maxLength: 512
          example: /projects/pj_avX7imfLaPcQnv5ckvGlOEBA9
  examples:
    create-knowledge-base-request-example:
      summary: Create Knowledge Base Request Example
      description: An example for creating a new `Knowledge Base`.
      value:
        name: Totoy Customer Support Assistant
        instructions: >-
          You are a customer support assistant for the customers of the company
          Totoy.
        project_id: pj_avX7imfLaPcQnv5ckvGlOEBA9
    knowledge-base-example-1:
      summary: Knowledge Base Example 1
      description: An example for a `Knowledge Base`.
      value:
        knowledge_base_id: kb_feMfJbeqbAEj4u8K5HqmKpUbY
        name: Totoy Customer Support Assistant
        instructions: >-
          You are a customer support assistant for the customers of the company
          Totoy.
        project_id: pj_avX7imfLaPcQnv5ckvGlOEBA9
        created_at: '2023-07-05T12:00:00Z'
        updated_at: '2023-07-05T12:00:00Z'
  responses:
    general4XXResponse:
      description: Client Error
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
    general5XXResponse:
      description: Server Error
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer

````