Fini Knowledge API

The Knowledge API from Fini — 5 operation(s) for knowledge.

OpenAPI Specification

fini-knowledge-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Fini AI Agents Knowledge API
  version: v2
  description: Public REST API for Fini AI, the self-improving AI agent for enterprise customer support. Manage agents, conversations, knowledge (sources, articles, folders), rules, tags, and prompts, and drive the agent loop via Generate Answer. Structure captured by API Evangelist from the published Fini API reference; not an official Fini-published OpenAPI.
  contact:
    name: Fini AI
    url: https://docs.usefini.com/en/api-reference/authentication
  x-apis-json-generated: true
servers:
- url: https://api-prod.usefini.com/v2
  description: Production
security:
- bearerAuth: []
tags:
- name: Knowledge
paths:
  /knowledge/public/bulk:
    post:
      operationId: bulkGenerateKnowledge
      summary: Queue generate-and-save jobs for multiple source IDs in one request.
      tags:
      - Knowledge
      description: Queue generate-and-save jobs for multiple source IDs in one request. Requires the `write` scope.
      externalDocs:
        url: https://docs.usefini.com/en/api-reference/bulk-generate-knowledge
      responses:
        '200':
          description: Successful response.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
        description: See the Fini API reference for the request body schema.
  /knowledge/public/jobs/status:
    post:
      operationId: checkKnowledgeJobs
      summary: Check status for one or more background knowledge-generation jobs.
      tags:
      - Knowledge
      description: Check status for one or more background knowledge-generation jobs. Requires the `read` scope.
      externalDocs:
        url: https://docs.usefini.com/en/api-reference/check-knowledge-jobs
      responses:
        '200':
          description: Successful response.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
        description: See the Fini API reference for the request body schema.
  /knowledge/public:
    post:
      operationId: generateKnowledge
      summary: Queue one knowledge-generation job from candidate text, with optional source or inbox linkage.
      tags:
      - Knowledge
      description: Queue one knowledge-generation job from candidate text, with optional source or inbox linkage. Requires the `write` scope.
      externalDocs:
        url: https://docs.usefini.com/en/api-reference/generate-knowledge
      responses:
        '200':
          description: Successful response.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
        description: See the Fini API reference for the request body schema.
  /knowledge/public/tree/initialize:
    post:
      operationId: initializeKnowledgeFolders
      summary: Generate a downloadable tree-import template file from an initialization prompt.
      tags:
      - Knowledge
      description: Generate a downloadable tree-import template file from an initialization prompt. Requires the `write` scope.
      externalDocs:
        url: https://docs.usefini.com/en/api-reference/initialize-knowledge-folders
      responses:
        '200':
          description: Successful response.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
        description: See the Fini API reference for the request body schema.
  /knowledge/public/tree/persist:
    post:
      operationId: persistKnowledgeFolders
      summary: Upload a tree file and persist it into the workspace knowledge graph.
      tags:
      - Knowledge
      description: Upload a tree file and persist it into the workspace knowledge graph. Requires the `write` scope.
      externalDocs:
        url: https://docs.usefini.com/en/api-reference/persist-knowledge-folders
      responses:
        '200':
          description: Successful response.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/ServerError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
        description: See the Fini API reference for the request body schema.
components:
  responses:
    Forbidden:
      description: API key lacks the required scope.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            statusCode: 403
            message: API key does not have the required scope for this operation
            error: Forbidden
    Unauthorized:
      description: Missing or invalid API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            statusCode: 401
            message: Unauthorized
            error: Unauthorized
    ServerError:
      description: Internal server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            statusCode: 500
            message: Internal Server Error
            error: Internal Server Error
  schemas:
    Error:
      type: object
      description: Standard Fini error envelope.
      properties:
        statusCode:
          type: integer
          example: 403
        message:
          type: string
          example: API key does not have the required scope for this operation
        error:
          type: string
          example: Forbidden
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: fini_ API key
      description: 'Bearer token containing your Fini workspace API key. Format: `Bearer fini_...`. The key carries `read` and/or `write` scope; write routes require the `write` scope.'