Slite Knowledge Management API

The Knowledge Management API from Slite — 4 operation(s) for knowledge management.

OpenAPI Specification

slite-knowledge-management-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Public Slite api Ask Knowledge Management API
  version: '1'
  description: Access your Slite documents, search, create, update...
  license:
    name: private
  contact:
    name: Slite
servers:
- url: https://api.slite.com/v1
tags:
- name: Knowledge Management
paths:
  /knowledge-management/notes:
    get:
      operationId: listNotesForKnowledgeManagement
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedNotes'
        '401':
          description: Invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiAuthError'
        '422':
          description: Input validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiFieldValidationError'
        '429':
          description: Rate limitation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiRateLimitError'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
      description: List notes for knowledge management.
      summary: List notes for knowledge management
      security:
      - bearer: []
      parameters:
      - description: Optional filter to only return notes in special review states.
        in: query
        name: reviewStateList
        required: false
        schema:
          type: array
          items:
            $ref: '#/components/schemas/PublicApiReviewState'
      - description: 'Optional: user or group ids to filter notes by owner'
        in: query
        name: ownerIdList
        required: false
        schema:
          type: array
          items:
            type: string
      - description: 'Optional: channel ids to filter notes by channel'
        in: query
        name: channelIdList
        required: false
        schema:
          type: array
          items:
            type: string
      - description: 'Optional: number of trailing days to consider'
        in: query
        name: sinceDaysAgo
        required: false
        schema:
          format: double
          type: number
      - description: Maximum number of notes to return. Defaults to 20.
        in: query
        name: first
        required: false
        schema:
          $ref: '#/components/schemas/KnowledgeManagementFirst'
      - description: Cursor to use to continue fetching notes
        in: query
        name: cursor
        required: false
        schema:
          type: string
      tags:
      - Knowledge Management
  /knowledge-management/notes/public:
    get:
      operationId: listPublicNotesForKnowledgeManagement
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedNotes'
        '401':
          description: Invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiAuthError'
        '422':
          description: Input validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiFieldValidationError'
        '429':
          description: Rate limitation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiRateLimitError'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
      description: List public notes for knowledge management.
      summary: List public notes for knowledge management
      security:
      - bearer: []
      parameters:
      - description: Optional filter to only return notes in special review states.
        in: query
        name: reviewStateList
        required: false
        schema:
          type: array
          items:
            $ref: '#/components/schemas/PublicApiReviewState'
      - description: 'Optional: user or group ids to filter notes by owner'
        in: query
        name: ownerIdList
        required: false
        schema:
          type: array
          items:
            type: string
      - description: 'Optional: channel ids to filter notes by channel'
        in: query
        name: channelIdList
        required: false
        schema:
          type: array
          items:
            type: string
      - description: 'Optional: number of trailing days to consider'
        in: query
        name: sinceDaysAgo
        required: false
        schema:
          format: double
          type: number
      - description: Maximum number of notes to return. Defaults to 20.
        in: query
        name: first
        required: false
        schema:
          $ref: '#/components/schemas/KnowledgeManagementFirst'
      - description: Cursor to use to continue fetching notes
        in: query
        name: cursor
        required: false
        schema:
          type: string
      tags:
      - Knowledge Management
  /knowledge-management/notes/inactive:
    get:
      operationId: listInactiveNotesForKnowledgeManagement
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedNotes'
        '401':
          description: Invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiAuthError'
        '422':
          description: Input validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiFieldValidationError'
        '429':
          description: Rate limitation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiRateLimitError'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
      description: List inactive notes for knowledge management.
      summary: List inactive notes for knowledge management
      security:
      - bearer: []
      parameters:
      - description: 'Optional: user or group ids to filter notes by owner'
        in: query
        name: ownerIdList
        required: false
        schema:
          type: array
          items:
            type: string
      - description: 'Optional: channel ids to filter notes by channel'
        in: query
        name: channelIdList
        required: false
        schema:
          type: array
          items:
            type: string
      - description: Maximum number of notes to return. Defaults to 20.
        in: query
        name: first
        required: false
        schema:
          $ref: '#/components/schemas/KnowledgeManagementFirst'
      - description: Cursor to use to continue fetching notes
        in: query
        name: cursor
        required: false
        schema:
          type: string
      tags:
      - Knowledge Management
  /knowledge-management/notes/empty:
    get:
      operationId: listEmptyNotesForKnowledgeManagement
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedNotes'
        '401':
          description: Invalid authentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiAuthError'
        '422':
          description: Input validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiFieldValidationError'
        '429':
          description: Rate limitation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiRateLimitError'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiError'
      description: List empty notes for knowledge management.
      summary: List empty notes for knowledge management
      security:
      - bearer: []
      parameters:
      - description: 'Optional: user or group ids to filter notes by owner'
        in: query
        name: ownerIdList
        required: false
        schema:
          type: array
          items:
            type: string
      - description: 'Optional: channel ids to filter notes by channel'
        in: query
        name: channelIdList
        required: false
        schema:
          type: array
          items:
            type: string
      - description: Maximum number of notes to return. Defaults to 20.
        in: query
        name: first
        required: false
        schema:
          $ref: '#/components/schemas/KnowledgeManagementFirst'
      - description: Cursor to use to continue fetching notes
        in: query
        name: cursor
        required: false
        schema:
          type: string
      tags:
      - Knowledge Management
components:
  schemas:
    Note:
      properties:
        owner:
          $ref: '#/components/schemas/NoteOwner'
          description: 'Owner of the note for review purposes.

            Either userId or groupId will be set, but not both.

            If no owner is set, this field will be omitted.'
        reviewState:
          $ref: '#/components/schemas/PublicApiReviewState'
          description: 'Review state of the note

            Can be Verified, Outdated, VerificationRequested or VerificationExpired'
        archivedAt:
          type: string
          format: date-time
          nullable: true
          description: Date of the archiving of the note (null if not archived)
        lastEditedAt:
          type: string
          format: date-time
          description: Date of the last edition of the note
        updatedAt:
          type: string
          format: date-time
          description: Date of the last update of the note
        createdAt:
          type: string
          format: date-time
          description: Date of the creation of the note
        columns:
          items:
            type: string
          type: array
          description: If note is in a collection, it will contain its column names
        attributes:
          items:
            type: string
          type: array
          description: 'If note is in a collection, it will contain its attributes ordered

            by column'
        url:
          type: string
          description: Url to the note
        parentNoteId:
          type: string
          nullable: true
          description: 'Parent note id of the current note.

            It can be null if it''s a root note.'
        iconColor:
          type: string
          nullable: true
          description: Optional icon color for the note.
        iconShape:
          type: string
          nullable: true
          description: Optional icon identifier for the note.
        title:
          type: string
          description: Title of the note
        id:
          type: string
          description: Id of the note
      required:
      - archivedAt
      - lastEditedAt
      - updatedAt
      - createdAt
      - url
      - parentNoteId
      - title
      - id
      type: object
    PaginatedNotes:
      properties:
        notes:
          items:
            $ref: '#/components/schemas/Note'
          type: array
        total:
          type: number
          format: double
          description: Total number of children
        hasNextPage:
          type: boolean
          description: Is there any other page to fetch
        nextCursor:
          type: string
          nullable: true
          description: Next cursor to continue fetching the paginate children
      required:
      - notes
      - total
      - hasNextPage
      - nextCursor
      type: object
    PublicApiReviewState:
      enum:
      - Verified
      - Outdated
      - VerificationRequested
      - VerificationExpired
      type: string
    PublicApiFieldValidationError:
      properties:
        details:
          $ref: '#/components/schemas/FieldErrors'
        message:
          type: string
          enum:
          - Validation Failed
          nullable: false
        id:
          type: string
          enum:
          - field-validation
          nullable: false
      required:
      - message
      - id
      type: object
    PublicApiRateLimitError:
      properties:
        message:
          type: string
          enum:
          - You've reached the api rate limit. Please wait and retry later.
          nullable: false
        id:
          type: string
          enum:
          - rate-limit
          nullable: false
      required:
      - message
      - id
      type: object
    KnowledgeManagementFirst:
      type: integer
      format: int32
      minimum: 1
      maximum: 50
    FieldErrors:
      properties: {}
      type: object
      additionalProperties:
        properties:
          value: {}
          message:
            type: string
        required:
        - message
        type: object
    PublicApiError:
      properties:
        message:
          type: string
        id:
          type: string
      required:
      - message
      - id
      type: object
    PublicApiAuthError:
      properties:
        message:
          type: string
          enum:
          - Invalid apiKey
          nullable: false
        id:
          type: string
          enum:
          - auth/unauthorized
          nullable: false
      required:
      - message
      - id
      type: object
    NoteOwner:
      properties:
        groupId:
          type: string
          description: Group id of the owner (if owner is a group)
        userId:
          type: string
          description: User id of the owner (if owner is a user)
      type: object
      description: 'Owner of the note for review purposes.

        Either userId or groupId will be set, but not both.'
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: API keys can be generated under Settings > API