Conga Document Settings API

The Document Settings API from Conga — 7 operation(s) for document settings.

Operations 11

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /api/clm/v1/settings/documents/output-formats Create a document output format · Create a document output format #
Ask an LLM
“How do I set up a new document output format like PDF or DOCX?”
“Can I make a role-specific output format that includes a watermark?”
Tell an agent
Create a document output format {Name} producing {OutputFormat}.
Add an output format for role {Role} with watermark set to {IncludeWatermark}.
PUT /api/clm/v1/settings/documents/output-formats Update a document output format · Update document output format #
Ask an LLM
“How do I change an existing document output format's properties?”
“Can I update a document output format by its ID in the body?”
Tell an agent
Update this document output format and its properties.
Edit an existing output format setting identified in the request.
POST /api/clm/v1/settings/documents/output-formats/query Query document output formats · Show document output format records #
Ask an LLM
“Which document output format records match my criteria?”
“Can I sort and limit results when searching output formats?”
Tell an agent
Find document output formats where {CriteriaExpression}.
Show the first {Limit} document output format records.
DELETE /api/clm/v1/settings/documents/output-formats/{id} Delete a document output format · Delete a document output format #
Ask an LLM
“How do I delete a document output format I no longer use?”
“Can I remove an output format by its ID?”
Tell an agent destructive · confirm first
Delete document output format {id}.
Remove output format setting {id}.
GET /api/clm/v1/settings/documents/output-formats/{id} Get a document output format · Get a document output format #
Ask an LLM
“How do I look up one document output format by ID?”
“Can I see a single output format's watermark and role options?”
Tell an agent
Show document output format {id}.
Get details for output format {id}.
POST /api/clm/v1/settings/documents/protections Add a document protection setting · Add a document protection setting #
Ask an LLM
“How do I add document protection for a user role and contract type?”
“What protection levels and types can a new protection setting use?”
Tell an agent
Add a document protection setting for role {Role} at level {ProtectionLevel}.
Create protection setting {Name} of type {ProtectionType}.
PUT /api/clm/v1/settings/documents/protections Update a document protection setting · Update a document protection setting #
Ask an LLM
“How do I change fields on a document protection setting?”
“Can I update the protection level on an existing setting?”
Tell an agent
Update this document protection setting's fields.
Edit an existing protection setting identified in the request.
POST /api/clm/v1/settings/documents/protections/clone Copy protection settings between roles · Copy document protection settings #
Ask an LLM
“Can I copy one role's document protection settings to other roles?”
“Does cloning protection settings overwrite ones the destination role already has?”
Tell an agent
Copy document protection settings from role {SourceRoleId} to roles {DestinationRoles}.
Clone protection setting {DocumentProtection} from {SourceRoleId} into {DestinationRoles}.
POST /api/clm/v1/settings/documents/protections/query Query document protection settings · Query document protection settings #
Ask an LLM
“Which document protection settings match my filter?”
“Can I group or page through document protection settings?”
Tell an agent
Find document protection settings where {CriteriaExpression}.
List protection settings skipping {Skip} and returning {Limit}.
DELETE /api/clm/v1/settings/documents/protections/{documentProtectionId} Delete a document protection setting · Delete a document protection setting #
Ask an LLM
“How do I delete a document protection setting?”
“Can I remove a protection rule for a role by its ID?”
Tell an agent destructive · confirm first
Delete document protection setting {documentProtectionId}.
Remove protection setting {documentProtectionId}.
GET /api/clm/v1/settings/documents/protections/{documentProtectionId} Get a document protection setting · Get a document protection setting #
Ask an LLM
“How do I view one document protection setting?”
“Can I fetch a protection setting by its ID?”
Tell an agent
Show document protection setting {documentProtectionId}.
Get protection setting {documentProtectionId}'s details.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/conga:conga-document-settings-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

conga-document-settings-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Contracts Document Settings API
  version: v1
servers:
- url: https://rls.congacloud.com
- url: https://preview-rls09.congacloud.com
security:
- bearerAuth: []
tags:
- name: Document Settings
paths:
  /api/clm/v1/settings/documents/output-formats:
    post:
      tags:
      - Document Settings
      summary: Create a document output format
      description: Creates a new record for a document's output format (doc, docx, pdf, or rtf), along with other options like adding a watermark.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DocumentOutputFormat'
      responses:
        '201':
          description: Returns the newly created document output format
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringObjectDictionaryAPIResponse'
              example:
                Success: true
                Data:
                  Id: 37b480d8-1b2d-4cbc-aaf6-1a31a5ec334e
                  Name: Test Obligation 1
                  ObligationType: Operational
                  Priority: High
                  Description: Test data
                  RecordOwner:
                    Id: d717a075-9cbf-480c-b230-837e0e6dee75
                    Name: Bumble Bee
                    OwnerType: User
                Warnings: null
                Errors: null
        '400':
          description: No value is provided in the request body
      operationId: postApiClmV1SettingsDocumentsOutputFormats
      x-operation-id-source: derived
    put:
      tags:
      - Document Settings
      summary: Update document output format
      description: Updates a document output format and its properties based on the document output format ID.
      requestBody:
        description: ID of the document output format
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/DocumentOutputFormatRequest'
      responses:
        '200':
          description: Returns the list of document output formats associated with the given ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DocumentOutputFormatListAPIResponse'
        '400':
          description: The given ID is invalid or blank.
      operationId: putApiClmV1SettingsDocumentsOutputFormats
      x-operation-id-source: derived
  /api/clm/v1/settings/documents/output-formats/query:
    post:
      tags:
      - Document Settings
      summary: Show document output format records
      description: Queries document output format records for matching details.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomQuery'
            example:
              Distinct: false
              Fields: null
              GroupBy: null
              IncludeTotalCount: true
              SortInfo:
                FieldName: ContractType
                Direction: Ascending
              CriteriaExpression: null
              Limit: 10
              Skip: 0
      responses:
        '200':
          description: Returns the list of document output formats that match the given query
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringObjectDictionaryAPIResponse'
              example:
                Success: true
                Data:
                  Id: 7f5f9f94-7985-437c-aa2d-57f894674105
                  Name: Test Obligation 1
                  ObligationType: Operational
                  Priority: High
                  Description: Test data
                  RecordOwner:
                    Id: d717a075-9cbf-480c-b230-837e0e6dee75
                    Name: Bumble Bee
                    OwnerType: User
                Warnings: null
                Errors: null
        '400':
          description: The query is invalid.
      operationId: postApiClmV1SettingsDocumentsOutputFormatsQuery
      x-operation-id-source: derived
  /api/clm/v1/settings/documents/output-formats/{id}:
    delete:
      tags:
      - Document Settings
      summary: Delete a document output format
      description: Deletes a document output format based on the provided ID.
      parameters:
      - name: id
        in: path
        description: ID of an existing document output format
        required: true
        schema:
          type: string
      responses:
        '202':
          description: The document output format is deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BooleanAPIResponse'
              example:
                Success: true
                Data: true
                Warnings: null
                Errors: null
        '400':
          description: The given ID is invalid.
      operationId: deleteApiClmV1SettingsDocumentsOutputFormatsById
      x-operation-id-source: derived
    get:
      tags:
      - Document Settings
      summary: Get a document output format
      description: Gets document output format details based on the document output format ID.
      parameters:
      - name: id
        in: path
        description: ID of an existing document output format
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Lists document output formats associated with the provided ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DocumentOutputFormatListAPIResponse'
        '400':
          description: The provided ID is invalid.
      operationId: getApiClmV1SettingsDocumentsOutputFormatsById
      x-operation-id-source: derived
  /api/clm/v1/settings/documents/protections:
    post:
      tags:
      - Document Settings
      summary: Add a document protection setting
      description: Adds a document protection setting for a user role and a contract type.
      requestBody:
        description: Document Protection
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DocumentProtectionDTO'
      responses:
        '200':
          description: Returns the newly created document protection setting
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringAPIResponse'
              example:
                Success: true
                Data: Success
                Warnings: null
                Errors: null
        '400':
          description: If any required value is not provided in the request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIResponseError'
              example:
                Success: false
                Data: null
                Warnings: null
                Errors:
                - Id: null
                  Message: Internal server error occurred. Please contact admin.
      operationId: postApiClmV1SettingsDocumentsProtections
      x-operation-id-source: derived
    put:
      tags:
      - Document Settings
      summary: Update a document protection setting
      description: Updates a list of fields in a document protection setting.
      requestBody:
        description: List of field values to be updated
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
                additionalProperties: {}
            example:
            - Id: 0c4dadb2-a7ee-4672-bfa3-3c9ee2ac85d1
              IsRequired: false
            - Id: 7b3f1a92-dc45-4e8a-b12c-9a6e5d3f8c01
              IsRequired: true
      responses:
        '200':
          description: Returns whether the document protection is updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringListAPIResponse'
              example:
                Success: true
                Data:
                - Id
                - Name
                - CreatedBy
                - CreatedDate
                - ModifiedBy
                - ModifiedDate
                - ExternalId
                - Account
                - RecordType
                - ActivatedBy
                - ActivatedDate
                - ContractCategory
                - ContractNumber
                - AmendmentEffectiveDate
                - AutoRenewConsent
                - AutoRenewTermMonths
                - AutoRenewalTerms
                - AutoRenewal
                - ContractDurationDays
                - ContractEndDate
                - ContractNumber
                - ContractStartDate
                - ContractedDays
                - Description
                - InitiationType
                - InternalRenewalNotificationDays
                - InternalRenewalStartDate
                - ParentContract
                - Perpetual
                - PrimaryContact
                - Opportunity
                - RemainingContractedDays
                - RenewalNoticeDate
                - RenewalNoticeDays
                - RetentionDate
                - RetentionPolicyId
                - Source
                - SpecialTerms
                - StatusCategory
                - Status
                - SubmitRequestMode
                - TermMonths
                - TerminationComments
                - TerminationDate
                - TerminationNoticeDays
                - TerminationNoticeIssueDate
                - TotalContractValue
                - ExecutedDate
                - RecordOwner
                - Currency
                - AutoExpire
                - TestCustomFieldOne_c
                - CustRTF9_c
                Warnings: null
                Errors: null
        '400':
          description: If any required value is not provided in the request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIResponseError'
              example:
                Success: false
                Data: null
                Warnings: null
                Errors:
                - Id: null
                  Message: Internal server error occurred. Please contact admin.
      operationId: putApiClmV1SettingsDocumentsProtections
      x-operation-id-source: derived
  /api/clm/v1/settings/documents/protections/clone:
    post:
      tags:
      - Document Settings
      summary: Copy document protection settings
      description: Copies document protection settings that do not exist in destination roles from the source role.
      requestBody:
        description: Document Protection Request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DocumentProtectionRequest'
      responses:
        '200':
          description: Returns "true" if the document protection settings are copied.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringAPIResponse'
              example:
                Success: true
                Data: Success
                Warnings: null
                Errors: null
        '400':
          description: If any required value is not provided in the request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIResponseError'
              example:
                Success: false
                Data: null
                Warnings: null
                Errors:
                - Id: null
                  Message: Internal server error occurred. Please contact admin.
      operationId: postApiClmV1SettingsDocumentsProtectionsClone
      x-operation-id-source: derived
  /api/clm/v1/settings/documents/protections/query:
    post:
      tags:
      - Document Settings
      summary: Query document protection settings
      description: Retrieves multiple document protection settings based on query parameters such as Limit, Skip, Sort, GroupBy, etc.
      requestBody:
        description: Query Parameters
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomQuery'
            example:
              Distinct: false
              Fields: null
              GroupBy: null
              IncludeTotalCount: true
              SortInfo:
                FieldName: ContractType
                Direction: Ascending
              CriteriaExpression: null
              Limit: 10
              Skip: 0
      responses:
        '200':
          description: Returns document protection settings for the given query details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringObjectDictionaryAPIResponse'
              example:
                Success: true
                Data:
                  Id: 83326220-3c78-4681-98ed-477aede023ff
                  Name: Test Obligation 1
                  ObligationType: Operational
                  Priority: High
                  Description: Test data
                  RecordOwner:
                    Id: d717a075-9cbf-480c-b230-837e0e6dee75
                    Name: Bumble Bee
                    OwnerType: User
                Warnings: null
                Errors: null
        '400':
          description: If any required value is not given in the request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIResponseError'
              example:
                Success: false
                Data: null
                Warnings: null
                Errors:
                - Id: null
                  Message: Internal server error occurred. Please contact admin.
      operationId: postApiClmV1SettingsDocumentsProtectionsQuery
      x-operation-id-source: derived
  /api/clm/v1/settings/documents/protections/{documentProtectionId}:
    delete:
      tags:
      - Document Settings
      summary: Delete a document protection setting
      description: Deletes a document protection setting.
      parameters:
      - name: documentProtectionId
        in: path
        description: Document Protection ID
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Returns whether the document protection setting is deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BooleanAPIResponse'
              example:
                Success: true
                Data: true
                Warnings: null
                Errors: null
        '400':
          description: If any required value is not provided in the request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIResponseError'
              example:
                Success: false
                Data: null
                Warnings: null
                Errors:
                - Id: null
                  Message: Internal server error occurred. Please contact admin.
      operationId: deleteApiClmV1SettingsDocumentsProtectionsByDocumentProtectionId
      x-operation-id-source: derived
    get:
      tags:
      - Document Settings
      summary: Get a document protection setting
      description: Fetches a document protection setting.
      parameters:
      - name: documentProtectionId
        in: path
        description: Document Protection ID
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Returns details of a document protection setting based on the provided document protection ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DocumentProtectionDTOAPIResponse'
        '400':
          description: If any required value is not provided in the request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIResponseError'
              example:
                Success: false
                Data: null
                Warnings: null
                Errors:
                - Id: null
                  Message: Internal server error occurred. Please contact admin.
      operationId: getApiClmV1SettingsDocumentsProtectionsByDocumentProtectionId
      x-operation-id-source: derived
components:
  schemas:
    WarningDetail:
      type: object
      properties:
        Code:
          type:
          - string
          - 'null'
          description: Warning code
        Message:
          type:
          - string
          - 'null'
          description: Warning message
      additionalProperties: false
      description: Warning detail class for non-blocking issues
    StringListAPIResponse:
      type: object
      properties:
        Success:
          type: boolean
          description: The state of the API response
        Data:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Generic data to return
        Warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/WarningDetail'
          description: Warning detail list for non-blocking issues
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ErrorDetail'
          description: Error detail list in case of failure
      additionalProperties: false
      description: API Response Class
    SortDirection:
      enum:
      - Ascending
      - Descending
      type: string
    StringAPIResponse:
      type: object
      properties:
        Success:
          type: boolean
          description: The state of the API response
        Data:
          type:
          - string
          - 'null'
          description: Generic data to return
        Warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/WarningDetail'
          description: Warning detail list for non-blocking issues
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ErrorDetail'
          description: Error detail list in case of failure
      additionalProperties: false
      description: API Response Class
    DocumentProtectionDTOAPIResponse:
      type: object
      properties:
        Success:
          type: boolean
          description: The state of the API response
        Data:
          $ref: '#/components/schemas/DocumentProtectionDTO'
        Warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/WarningDetail'
          description: Warning detail list for non-blocking issues
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ErrorDetail'
          description: Error detail list in case of failure
      additionalProperties: false
      description: API Response Class
    BooleanAPIResponse:
      type: object
      properties:
        Success:
          type: boolean
          description: The state of the API response
        Data:
          type: boolean
          description: Generic data to return
        Warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/WarningDetail'
          description: Warning detail list for non-blocking issues
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ErrorDetail'
          description: Error detail list in case of failure
      additionalProperties: false
      description: API Response Class
    StringObjectDictionaryAPIResponse:
      type: object
      properties:
        Success:
          type: boolean
          description: The state of the API response
        Data:
          type:
          - object
          - 'null'
          additionalProperties: {}
          description: Generic data to return
        Warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/WarningDetail'
          description: Warning detail list for non-blocking issues
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ErrorDetail'
          description: Error detail list in case of failure
      additionalProperties: false
      description: API Response Class
    APIResponseError:
      type: object
      properties:
        Success:
          type: boolean
          description: The state of the API response
        Data:
          type:
          - string
          - 'null'
          description: Generic data to return
        Warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/WarningDetail'
          description: Warning detail list for non-blocking issues
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ErrorDetail'
          description: Error detail list in case of failure
      additionalProperties: false
      description: API Response Error Class
    DocumentOutputFormatListAPIResponse:
      type: object
      properties:
        Success:
          type: boolean
          description: The state of the API response
        Data:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/DocumentOutputFormat'
          description: Generic data to return
        Warnings:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/WarningDetail'
          description: Warning detail list for non-blocking issues
        Errors:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ErrorDetail'
          description: Error detail list in case of failure
      additionalProperties: false
      description: API Response Class
    DocumentOutputFormat:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
        Name:
          type:
          - string
          - 'null'
        CreatedBy:
          $ref: '#/components/schemas/LookupObject'
        CreatedDate:
          type: string
          format: date-time
        ModifiedBy:
          $ref: '#/components/schemas/LookupObject'
        ModifiedDate:
          type: string
          format: date-time
        ExternalId:
          type:
          - string
          - 'null'
        ETag:
          type:
          - string
          - 'null'
        RecordType:
          type:
          - string
          - 'null'
          description: Record Type
        AllowOverrideWatermark:
          type:
          - boolean
          - 'null'
          description: Indicates whether the user is allowed to override the default watermark setting during the agreement document generation process.
        AllowOverride:
          type:
          - boolean
          - 'null'
          description: Indicates whether the user is allowed to override the default output format during the agreement document generation process
        IncludeWatermark:
          type:
          - boolean
          - 'null'
          description: Indicates whether watermark will be added to the document
        OutputFormat:
          type:
          - string
          - 'null'
          description: The document output format (either PDF, RTF or DOC or DOCX)
        Role:
          $ref: '#/components/schemas/LookupObject'
        DocumentAction:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Indicates the document actions on which the output formats are supposed to be applied
        DefaultWatermarkSelection:
          type:
          - boolean
          - 'null'
          description: The default watermark selection when IncludeWatermark is UserSelection
      additionalProperties: {}
      description: DocumentOutputFormat model
    LookupObject:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
        Name:
          type:
          - string
          - 'null'
      additionalProperties: false
    SortInfo:
      type: object
      properties:
        FieldName:
          type:
          - string
          - 'null'
          description: Field name on which records will be sorted
        Direction:
          $ref: '#/components/schemas/SortDirection'
      additionalProperties: false
      description: Sorting Information for Fields
    DocumentOutputFormatRequest:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
        Name:
          type:
          - string
          - 'null'
        CreatedBy:
          $ref: '#/components/schemas/LookupObject'
        CreatedDate:
          type: string
          format: date-time
        ModifiedBy:
          $ref: '#/components/schemas/LookupObject'
        ModifiedDate:
          type: string
          format: date-time
        ExternalId:
          type:
          - string
          - 'null'
        ETag:
          type:
          - string
          - 'null'
        RecordType:
          type:
          - string
          - 'null'
          description: Record Type
        AllowOverrideWatermark:
          type:
          - boolean
          - 'null'
          description: Indicates whether the user is allowed to override the default watermark setting during the agreement document generation process.
        AllowOverride:
          type:
          - boolean
          - 'null'
          description: Indicates whether the user is allowed to override the default output format during the agreement document generation process
        IncludeWatermark:
          type:
          - boolean
          - 'null'
          description: Indicates whether watermark will be added to the document
        OutputFormat:
          type:
          - string
          - 'null'
          description: The document output format (either PDF, RTF or DOC or DOCX)
        Role:
          $ref: '#/components/schemas/LookupObject'
        DocumentAction:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Indicates the document actions on which the output formats are supposed to be applied
        DefaultWatermarkSelection:
          type:
          - boolean
          - 'null'
          description: The default watermark selection when IncludeWatermark is UserSelection
      additionalProperties: {}
      description: Request Model for Document Output Format
    CustomQuery:
      type: object
      properties:
        Limit:
          type:
          - integer
          - 'null'
          description: Number of the records to be fetched
          format: int32
        Skip:
          type:
          - integer
          - 'null'
          description: Number of the records to be skipped
          format: int32
        SortInfo:
          $ref: '#/components/schemas/SortInfo'
        CriteriaExpression:
          type:
          - string
          - 'null'
          description: Criteria Expression to filter the records
        Distinct:
          type: boolean
          description: Whether to fetch only distinct records
        Fields:
          type:
          - array
          - 'null'
          items:
            type: string
          description: The list of fields to be fetched
        GroupBy:
          type:
          - array
          - 'null'
          items:
            type: string
          description: Group Field name if the result to be grouped
        IncludeTotalCount:
          type: boolean
          description: Whether to include total count in the query response. Defaults to true.
      additionalProperties: false
      description: Custom Query
    DocumentProtectionDTO:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
        Name:
          type:
          - string
          - 'null'
        CreatedBy:
          $ref: '#/components/schemas/LookupObject'
        CreatedDate:
          type: string
          format: date-time
        ModifiedBy:
          $ref: '#/components/schemas/LookupObject'
        ModifiedDate:
          type: string
          format: date-time
        ExternalId:
          type:
          - string
          - 'null'
        ETag:
          type:
          - string
          - 'null'
        Action:
          type:
          - string
          - 'null'
          description: Action
        Description:
          type:
          - string
          - 'null'
          description: Description
        Role:
          $ref: '#/components/schemas/LookupObject'
        ProtectionLevel:
          type:
          - string
          - 'null'
          description: Protection Level
        ProtectionType:
          type:
          - string
          - 'null'
          description: Protection Type
      additionalProperties: {}
      description: DTO containing necessary properties for Contract Protection
    DocumentProtectionRequest:
      required:
      - DestinationRoles
      - SourceRoleId
      type: object
      properties:
        SourceRoleId:
          minLength: 1
          type: string
          description: Role Id for Source
        DestinationRoles:
          type: array
          items:
            $ref: '#/components/schemas/LookupObject'
          description: List of Destination Roles
        DocumentProtection:
          $ref: '#/components/schemas/DocumentProtectionDTO'
      additionalProperties: false
      description: Request Model for Document Request
    ErrorDetail:
      type: object
      properties:
        Id:
          type:
          - string
          - 'null'
          description: Error ID
        Message:
          type:
          - string
          - 'null'
          description: Error message
      additionalProperties: false
      description: Error detail class
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT