Small Improvements praise-resource API

Praise Resource

OpenAPI Specification

small-improvements-praise-resource-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  description: The Small Improvements REST API (v2) provides programmatic access to the core performance management platform, covering users, feedback cycles, review questionnaires, objectives, 1:1 meetings, pulse surveys, praise, messages, and administrative settings. Authentication uses personal Bearer access tokens generated from user profile settings.
  version: '2.0'
  title: Small Improvements action-item-resource praise-resource API
  contact:
    url: https://www.small-improvements.com
    name: Small Improvements
  x-api-id: small-improvements-rest-api
servers:
- url: https://app.small-improvements.com/api
  description: Small Improvements API
security:
- BearerAuth: []
tags:
- name: praise-resource
  description: Praise Resource
paths:
  /v2/praise:
    get:
      tags:
      - praise-resource
      summary: getPraiseList
      operationId: getPraiseListUsingGET
      parameters:
      - name: authorId
        in: query
        required: false
        schema:
          type: string
      - name: endDate
        in: query
        required: false
        schema:
          type: string
          format: date-time
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: recipientId
        in: query
        required: false
        schema:
          type: string
      - name: startDate
        in: query
        required: false
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MessageDto'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    post:
      tags:
      - praise-resource
      summary: createPraise
      operationId: createPraiseUsingPOST
      parameters:
      - name: source
        in: query
        description: source
        required: false
        schema:
          type: string
          enum:
          - GMAIL
          - HIPCHAT
          - SLACK
          - WEBAPP
          default: WEBAPP
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/PraiseCreateCommand'
        description: command
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/MessageDto'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
  /v2/praise-export:
    post:
      tags:
      - praise-resource
      summary: triggerExport
      operationId: triggerExportUsingPOST_1
      parameters:
      - name: format
        in: query
        description: format
        required: true
        schema:
          type: string
          enum:
          - CSV
          - EXCEL
      - name: from
        in: query
        description: from
        required: true
        schema:
          type: string
      - name: until
        in: query
        description: until
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/DownloadableFileDto'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
  /v2/praise/preview/{id}:
    get:
      tags:
      - praise-resource
      summary: getPreview
      operationId: getPreviewUsingGET_4
      parameters:
      - name: id
        in: path
        description: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/MessagePreviewWithStatus'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
  /v2/praise/{praiseId}:
    get:
      tags:
      - praise-resource
      summary: getPraiseItem
      operationId: getPraiseItemUsingGET
      parameters:
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/MessageDto'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    put:
      tags:
      - praise-resource
      summary: editMessage
      operationId: editMessageUsingPUT_1
      parameters:
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PraiseEditCommand'
        description: command
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/MessageDto'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    delete:
      tags:
      - praise-resource
      summary: delete
      operationId: deleteUsingDELETE_11
      parameters:
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
  /v2/praise/{praiseId}/comments:
    get:
      tags:
      - praise-resource
      summary: getComments
      operationId: getCommentsUsingGET_1
      parameters:
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MessageDto'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    post:
      tags:
      - praise-resource
      summary: createComment
      operationId: createCommentUsingPOST
      parameters:
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/MessageDTO'
      responses:
        '201':
          description: Created
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/MessageDto'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
  /v2/praise/{praiseId}/comments/{commentId}:
    put:
      tags:
      - praise-resource
      summary: updateComment
      operationId: updateCommentUsingPUT
      parameters:
      - name: commentId
        in: path
        description: commentId
        required: true
        schema:
          type: string
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MessageDTO'
        description: comment
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/MessageDto'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
    delete:
      tags:
      - praise-resource
      summary: deleteComment
      operationId: deleteCommentUsingDELETE
      parameters:
      - name: commentId
        in: path
        description: commentId
        required: true
        schema:
          type: string
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '204':
          description: No Content
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
  /v2/praise/{praiseId}/downvote:
    put:
      tags:
      - praise-resource
      summary: downvote
      operationId: downvoteUsingPUT
      parameters:
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/MessageDto'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
  /v2/praise/{praiseId}/upvote:
    put:
      tags:
      - praise-resource
      summary: upvote
      operationId: upvoteUsingPUT
      parameters:
      - name: praiseId
        in: path
        description: praiseId
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/MessageDto'
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
components:
  schemas:
    PraiseCreateCommand:
      type: object
      title: PraiseCreateCommand
    MessagePreviewWithStatus:
      type: object
      title: MessagePreviewWithStatus
    MessageDTO:
      type: object
      title: MessageDTO
    PraiseEditCommand:
      type: object
      title: PraiseEditCommand
    MessageDto:
      type: object
      title: MessageDto
    DownloadableFileDto:
      type: object
      title: DownloadableFileDto
  requestBodies:
    MessageDTO:
      content:
        application/json;charset=UTF-8:
          schema:
            $ref: '#/components/schemas/MessageDTO'
      description: dto
      required: true
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Personal access token generated from user profile settings