Docupilot invitation API

The invitation API from Docupilot — 6 operation(s) for invitation.

OpenAPI Specification

docupilot-invitation-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Docupilot accounts APIs ai invitation API
  version: '1.0'
  description: Docupilot accounts APIs
  termsOfService: https://docupilot.app/terms-and-conditions/
  contact:
    name: Team Docupilot
    email: support@docupilot.app
tags:
- name: invitation
paths:
  /accounts/invitation/:
    get:
      operationId: list_invitation
      summary: Get list of Invitation
      parameters:
      - name: ordering
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      tags:
      - invitation
      security:
      - SessionAuthentication: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Invitation'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
          description: ''
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
          description: ''
    post:
      operationId: create_invitation
      summary: Create Invitation
      tags:
      - invitation
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateInvitation'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CreateInvitation'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CreateInvitation'
        required: true
      security:
      - SessionAuthentication: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Invitation'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
          description: ''
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
          description: ''
  /accounts/invitation/{id}/:
    delete:
      operationId: delete_invitation
      summary: Delete Invitation
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this invitation.
        required: true
      tags:
      - invitation
      security:
      - SessionAuthentication: []
      responses:
        '204':
          description: No response body
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
          description: ''
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: ''
  /accounts/invitation/{id}/accept_workspace_invitation/:
    post:
      operationId: accept_invitation
      summary: Accept workspace invitation
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this invitation.
        required: true
      tags:
      - invitation
      security:
      - SessionAuthentication: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AcceptInvite'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
          description: ''
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: ''
  /accounts/invitation/{id}/decline_workspace_invitation/:
    delete:
      operationId: decline_workspace_invitation
      summary: Decline workspace invitation
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this invitation.
        required: true
      tags:
      - invitation
      security:
      - SessionAuthentication: []
      responses:
        '204':
          description: No response body
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
          description: ''
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: ''
  /accounts/invitation/{id}/resend_invitation/:
    post:
      operationId: resend_invitation
      summary: Resend invitation
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this invitation.
        required: true
      tags:
      - invitation
      security:
      - SessionAuthentication: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Invitation'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
          description: ''
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: ''
  /accounts/invitation/list_workspace_invitations/:
    get:
      operationId: list_workspace_invitations
      summary: List pending workspace invitations for the current user
      parameters:
      - name: ordering
        required: false
        in: query
        description: Which field to use when ordering the results.
        schema:
          type: string
      tags:
      - invitation
      security:
      - SessionAuthentication: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Invitation'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
          description: ''
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
          description: ''
components:
  schemas:
    AcceptInvite:
      type: object
      properties:
        workspace_unique_key:
          type: string
      required:
      - workspace_unique_key
    UnauthenticatedError:
      type: object
      properties:
        detail:
          type: string
      required:
      - detail
    ValidationError:
      type: object
      properties:
        errors:
          type: object
          additionalProperties: {}
        non_field_errors:
          type: array
          items:
            type: string
      required:
      - errors
      - non_field_errors
    CreateInvitation:
      type: object
      properties:
        email:
          type: string
        role:
          enum:
          - admin
          - manager
          - member
          - billing_manager
          type: string
        workspace:
          type: integer
      required:
      - email
      - role
      - workspace
    ForbiddenError:
      type: object
      properties:
        detail:
          type: string
      required:
      - detail
    Invitation:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
        email:
          type: string
          format: email
          maxLength: 254
        role:
          enum:
          - admin
          - manager
          - member
          - billing_manager
          type: string
        workspace:
          type: object
          properties:
            id:
              type: integer
            name:
              type: string
        created_at:
          type: string
          format: date-time
          readOnly: true
        expires_at:
          type: string
          format: date-time
          readOnly: true
        is_accepted:
          type: boolean
          readOnly: true
          nullable: true
        invite_key:
          type: string
          readOnly: true
        sender:
          type: string
          readOnly: true
        expired:
          type: boolean
          readOnly: true
      required:
      - created_at
      - email
      - expired
      - expires_at
      - id
      - invite_key
      - is_accepted
      - role
      - sender
      - workspace
    NotFoundError:
      type: object
      properties:
        detail:
          type: string
      required:
      - detail
  securitySchemes:
    OAuthAuthentication:
      type: http
      scheme: bearer
      description: OAuth2 Bearer Token Authentication
    SessionAuthentication:
      type: apiKey
      in: cookie
      name: sessionid
      description: browser based login takes care of this
externalDocs:
  description: Help docs on how to use API
  url: https://help.docupilot.app/developers/api-overview