openapi: 3.1.0
info:
  version: 4.1.7
  title: Ignisign's Api
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  termsOfService: https://ignisign.io/terms/
  contact:
    email: contact@ignisign.io
    url: https://ignisign.io/contact
  x-logo:
    url: https://console.ignisign.io/img/logo-horizontal-black.png
  description: |
    Welcome to the IgniSign Electronic Signature Platform API documentation!

    IgniSign is a comprehensive electronic signature platform that enables users to sign, send, and manage documents securely online. With IgniSign, users can streamline their document signing processes, reduce turnaround times, and increase productivity.

    The IgniSign API allows developers to integrate electronic signature functionality directly into their applications, enabling their users to sign and manage documents without ever leaving their platform. With the IgniSign API, developers can easily automate document signing workflows, track signature progress in real-time, and securely store signed documents.

    This documentation provides comprehensive information on how to use the IgniSign API to integrate electronic signature functionality into your application. It includes detailed information on API endpoints, authentication, error handling, and sample code snippets in multiple programming languages.

    Whether you're developing a new application or looking to enhance an existing one, the IgniSign API provides a robust and flexible electronic signature solution that can help you achieve your business objectives.
servers:
  - url: https://api.ignisign.io
    description: Ignisign api main url.
tags:
  - name: Applications
    description: |
      Applications are entities that represent the different software that an organization has.
      Organizations can have multiple applications.
      Each application have 3 environments: Development, Staging and Production.
      Each environments segregate signers documents, signature profiles and signature request. 
      [Learn more about Applications](/docs/core-concepts/Orgs_Apps_Env)
  - name: User Invitations
    description: |
      Api endpoint below are available to manage user invitations.
      [Learn more about Users Management](/docs/core-concepts/Users_Roles_Rights)
  - name: Api Auth
    description: |
      To be able to use the API, you need to use a JWT that you have to put as a Bearer token in the Authorization header of your requests.
      The JWT is obtained by calling the Api Authentication endpoint.


      ```mermaid
        sequenceDiagram
          participant Client_App as Client App
          participant IgniSign_API as IgniSign API
          Client_App ->> IgniSign_API : Api Authentication
          IgniSign_API -->> Client_App : JWT Token
          Client_App ->> IgniSign_API : Api Call 1 with JWT Token
          Client_App ->> IgniSign_API : Api Call 2 with JWT Token
          Client_App ->> IgniSign_API : Api Call 3 with JWT Token  
      ```
  - name: Signer
    description: |
      Signers are the people who will sign the documents.
      [Learn more about Signers](/docs/core-concepts/Signers_and_Claims)
  - name: Webhook Events
    description: |
      You can find below the list of webhooks events available in IgniSign.
  - name: Signature Request - Document
    description: |
      Documents are the files that will be signed or used to create the final document to be signed.
      [Learn more about Documents](/docs/core-concepts/Documents)
  - name: Signature Proof
    description: |
      Signature proof is the evidence that a document was signed by signers.
      [Learn more about Signature Proof](/docs/core-concepts/Signature_Proofs)
  - name: Signature Request
    description: |
      Signature request is the request to sign documents by signers.
      [Learn more about Signature Request](/docs/core-concepts/Signature_Requests)
  - name: Signature Profile
    description: |
      Signature profile is the profile that defines the signature requirements for signature requests.
      [Learn more about Signature Profile](/docs/core-concepts/Signature_Profiles)
  - name: Signer Profiles
    description: |
      Signer profiles are predefined settings that can be applied to signers.
      [Learn more about Signer Profiles](/docs/core-concepts/Signer_Profiles)
  - name: Seal
    description: |
      A seal is a digital signature that is emitted by a Legal Person  (like companies ). It is used to
      prove the authenticity of the document and the identity of the signer.
      [Learn more about Seals](/docs/core-concepts/Seals)
  - name: Bare Signature
    description: |
      Bare signature is a mechanism to process a signature through a oAuth2 like mechanism.
      [Learn more about Bare Signature](/docs/core-concepts/Bare_Signatures)
  - name: Log Capsule
    description: |
      Log capsules are a way to create an evidence of emission of a data at a specific moment.
      [Learn more about Log Capsules](/docs/core-concepts/Log_Capsules)
paths:
  /v4/healthcheck:
    get:
      tags:
        - HealthCheck
      summary: Healthcheck
      description: |
        Get a basic health status of the server. 
        This can be used to check if the server is alive on monitoring systems. 
      operationId: healthcheck
      security:
        - public: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  isAlive:
                    type: boolean
                    description: Whether the server is alive.
  /v4/auth/app-api:
    post:
      operationId: api-auth-post
      security:
        - public: []
      tags:
        - Api Auth
      summary: Api Authentication
      description: |
        This endpoint authenticates an application over the Ignisign API.<br/>
        The identification is related to an environment (appEnv) and an application (appId).<br/>
        The secret is used to authenticate the application.<br/>
        If validated, a JWT token is returned that can be used to authenticate the application using a Bearer token.<br/>
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignApiAuth_RequestDto'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignJwtContainer'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/context:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
    get:
      summary: Get Application Context
      description: This endpoint retrieves the context of an application by its ID.
      operationId: getApplicationContext
      tags:
        - Applications
      responses:
        '200':
          description: The application context.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignApplication_Context'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/applications/{appId}/envs/{appEnv}/signer-profiles/{signerProfileId}:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
      - name: signerProfileId
        $ref: '#/components/parameters/signerProfileId_path'
    get:
      summary: Get Signer Profile
      description: This endpoint retrieves a signer profile by its ID.
      operationId: getSignerProfile
      tags:
        - Signer
        - Signer Profiles
      responses:
        '200':
          description: The signer profile details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignerProfile'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/applications/{appId}/envs/{appEnv}/signer-profiles:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    get:
      summary: Get Signer Profiles
      description: This endpoint retrieves a list of signer profiles for a given application and environment.
      operationId: getSignerProfiles
      tags:
        - Signer Profiles
      responses:
        '200':
          description: A list of signer profiles.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IgnisignSignerProfile'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/applications/{appId}/users-invitations:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
    get:
      summary: Get Invited Users
      description: This endpoint retrieves all users who have been invited to an application.
      operationId: getAppInvitedUsers
      security:
        - ignisign_api_auth: []
      tags:
        - User Invitations
      responses:
        '200':
          description: A list of invited users.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IgnisignApplication_InvitedUser'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
    post:
      summary: Invite a New Application User
      description: This endpoint allows inviting a new user to an application.
      operationId: inviteNewAppUser
      security:
        - ignisign_api_auth: []
      tags:
        - User Invitations
      requestBody:
        description: The user invitation details.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignApplication_InvitedUser_CreationRequestDto'
      responses:
        '200':
          description: The invited user.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignApplication_InvitedUser'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/users-invitations/{userInvitationId}:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: userInvitationId
        $ref: '#/components/parameters/userInvitationId_path'
    put:
      summary: Edit a User Invitation
      description: This endpoint allows to edit the details of an invitation for an application.
      operationId: editAppInvitedUser
      security:
        - ignisign_api_auth: []
      tags:
        - User Invitations
      requestBody:
        description: The details to be updated for the invited user.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignApplicationUser_EditRequestDto'
      responses:
        '200':
          description: The edited user invitation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignApplication_InvitedUser'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
    delete:
      summary: Cancel a User Invitation
      description: This endpoint allow to cancel an invitation to a user for an application.
      operationId: cancelAppUserInvitation
      security:
        - ignisign_api_auth: []
      tags:
        - User Invitations
      responses:
        '200':
          description: The cancelled user invitation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignApplication_InvitedUser'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/users-invitations/{userInvitationId}/resend:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: userInvitationId
        $ref: '#/components/parameters/userInvitationId_path'
    post:
      summary: Resend a User Invitation
      description: This endpoint allows resending an invitation to a user for an application.
      operationId: resendAppUserInvitation
      security:
        - ignisign_api_auth: []
      tags:
        - User Invitations
      responses:
        '200':
          description: The resent user invitation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignApplication_InvitedUser'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signers:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    post:
      summary: Create a Signer
      description: This endpoint creates a new signer or update an existing one.
      operationId: createSigner
      tags:
        - Signer
      requestBody:
        description: The details to create a signer (IgnisignSigner_CreationRequestDto).
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignSigner_CreationRequestDto'
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The created or upgraded signer.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSigner_CreationResponseDto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signers/{signerId}/regenerate-auth-secret:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
      - name: signerId
        $ref: '#/components/parameters/signerId_path'
    put:
      summary: Regenerate Signer Authentication Secret
      description: This endpoint regenerates the authentication secret for a signer.
      operationId: regenerateSignerAuthSecret
      tags:
        - Signer
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The created Signer Auth Secret.
          content:
            application/json:
              schema:
                type: object
                properties:
                  authSecret:
                    description: The Signer Auth Secret.
                    type: string
                    example: string
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signers/{signerId}/details:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
      - name: signerId
        $ref: '#/components/parameters/signerId_path'
    get:
      summary: Get a Signer with details
      description: This endpoint retrieves details for a specific signer.
      operationId: getSignerWithDetails
      tags:
        - Signer
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The signer details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSigner_Context'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signers/{signerId}:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
      - name: signerId
        $ref: '#/components/parameters/signerId_path'
    get:
      summary: Get Signer Summary
      description: This endpoint a summary of information for a specific signer.
      operationId: getSignerSummary
      tags:
        - Signer
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The signer summary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSigner_Summary'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
    put:
      summary: Update a Signer
      description: |
        This endpoint update a signer ( only field additions are possible except externalId and isRecurrent).
        isRecurrent can be updated, but, if the signer is recurrent, it can't be changed to one-off.
      operationId: updateSigner
      tags:
        - Signer
      requestBody:
        description: The details to update a signer (IgnisignSigner_UpdateRequestDto).
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignSigner_UpdateRequestDto'
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The created or upgraded signer.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSigner_CreationResponseDto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signers-search:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    post:
      summary: Search  Signers
      description: This endpoint searches for signers within an application based on a filter.
      operationId: searchApplicationSigners
      tags:
        - Signer
      parameters:
        - name: filter
          in: query
          schema:
            type: string
          required: false
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The search results for signers.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSigners_SearchResultDto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signers-paginate:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    get:
      summary: Search Signers - Pagination
      description: This endpoint retrieves signers within an application for a specific page.
      operationId: getPaginateApplicationSigners
      tags:
        - Signer
      parameters:
        - name: page
          in: query
          schema:
            type: integer
          required: false
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The paginated signers.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSigners_SearchResultDto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signers/{signerId}/revoke:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
      - name: signerId
        $ref: '#/components/parameters/signerId_path'
    delete:
      summary: Revoke a Signer
      description: This endpoint revokes a signer.
      operationId: revokeSigner
      tags:
        - Signer
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The revoked signer ID.
          content:
            application/json:
              schema:
                type: object
                properties:
                  signerId:
                    type: string
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signer-profiles/{signerProfileId}/inputs-needed:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
      - name: signerProfileId
        $ref: '#/components/parameters/signerProfileId_path'
    get:
      summary: Get Signer Input Constraints
      description: This endpoint retrieves the input constraints for a signer profile.
      operationId: getSignerInputsConstraintsFromSignerProfileId
      tags:
        - Signer Profiles
      responses:
        '200':
          description: The input constraints for the signer profile.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignInputNeedsDto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/applications/{appId}/envs/{appEnv}/init-documents:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    post:
      summary: Create a Document
      description: |
        This endpoint allow to initialize a document. <br/>
        A document is linked to a signature request. <br/>
        Before providing the content of the document, each document need to be initialized. <br/>
        This create a document object that will be used to link document. <br/>
        This method is a part of the **[Signature Request Creation Api Life Cycle](https://ignisign.io/docs/core-concepts/Signature_Requests)**.
      operationId: initDocument
      tags:
        - Signature Request - Document
      security:
        - ignisign_api_auth: []
      requestBody:
        description: The document initialization information.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignDocument_InitializationDto'
      responses:
        '200':
          description: A simple container including the id of the document initializad.
          content:
            application/json:
              schema:
                type: object
                properties:
                  documentId:
                    type: string
                    description: The id of the document initialized.
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/documents/{documentId}:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
    get:
      summary: Get Document Information
      description: This endpoint retrieves specific documents information.
      operationId: getDocumentById
      tags:
        - Signature Request - Document
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The retrieved document. This is not the content of the document, but metadata information related to the document.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignDocument'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
    put:
      summary: Update Document Information
      description: This endpoint allows to update information about a specific document.
      operationId: updateDocument
      tags:
        - Signature Request - Document
      requestBody:
        description: The document details for update.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignDocument_UpdateDto'
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The updated document.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignDocument'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
    delete:
      summary: Remove a Document
      description: This endpoint removes a specific document.
      operationId: removeDocument
      tags:
        - Signature Request - Document
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: A container that include the id of the removed document
          content:
            application/json:
              schema:
                type: object
                properties:
                  documentId:
                    description: the Id of the removed document.
                    type: string
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/documents/{documentId}/context:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
    get:
      summary: Get a Document Context
      description: This endpoint retrieves the context of a specific document.
      operationId: getDocumentContext
      tags:
        - Signature Request - Document
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The retrieved document context.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignDocument_Context'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/documents/{documentId/file:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
    post:
      summary: Provide Document Content - File or PDF
      description: This endpoint provides file content for a document.<br/> This method is a part of the **[Signature Request Creation Api Life Cycle](https://ignisign.io/docs/core-concepts/Signature_Requests)**.
      operationId: provideDocumentContent_File
      tags:
        - Signature Request - Document
      security:
        - ignisign_api_auth: []
      parameters:
        - name: Content-Type
          in: header
          description: The content type of the file.
          required: true
          schema:
            type: string
        - name: Content-Disposition
          in: header
          description: The content disposition of the file.
          required: true
          schema:
            type: string
      requestBody:
        description: The file content details for a document.
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
      responses:
        '200':
          description: The updated document with provided file content.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignDocument'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
    get:
      summary: Download The Original Document
      description: This endpoint downloads the original document before if was signed.
      operationId: downloadOriginalDoc
      tags:
        - Signature Request - Document
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The original document content.
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/documents/{documentId/data-json-content:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
    post:
      summary: Provide Document Content - Data Json
      description: |
        This endpoint provides data json content for a document.
        This method is a part of the **[Signature Request Creation Api Life Cycle](https://ignisign.io/docs/core-concepts/Signature_Requests)**.
      operationId: provideDocumentContent_DataJson
      tags:
        - Signature Request - Document
      security:
        - ignisign_api_auth: []
      requestBody:
        description: The document details.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignDocument_ContentCreation_DataJsonDto'
      responses:
        '200':
          description: The updated document with provided data json content.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignDocument'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/documents/{documentId/private-content:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
    post:
      summary: Provide Document Content - Private file
      description: |
        This endpoint provides private content for a document.<br/>
        This method is a part of the **[Signature Request Creation Api Life Cycle](https://ignisign.io/docs/core-concepts/Signature_Requests)**.
      operationId: provideDocumentContent_PrivateContent
      tags:
        - Signature Request - Document
      requestBody:
        description: The private content for the document.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignDocument_ContentCreation_PrivateContentDto'
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The updated document with provided private content.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignDocument'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/documents/{documentId/content:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
    delete:
      summary: Remove the Document Content
      description: This endpoint removes the content of a specific document.
      operationId: removeDocumentContent
      tags:
        - Signature Request - Document
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The document from which content was removed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignDocument'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/documents/{documentId/check-authenticity:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
    post:
      summary: Check Document Authenticity
      description: This endpoint provides a way to check that a file is the one that has been signed
      operationId: checkDocumentAuthenticity
      tags:
        - Signature Proof
      security:
        - ignisign_api_auth: []
      parameters:
        - name: Content-Type
          in: header
          description: The content type of the file.
          required: true
          schema:
            type: string
        - name: Content-Disposition
          in: header
          description: The content disposition of the file.
          required: true
          schema:
            type: string
      requestBody:
        description: The file content details for a document.
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
      responses:
        '200':
          description: The documentId and the result of the authenticity check.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignDocument_AuthenticityValidationContainer'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/documents/{documentId}/signatures/{signatureType}:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
      - name: signatureType
        $ref: '#/components/parameters/signatureType_High_Level_path'
    get:
      summary: Download Signature by Type
      description: This endpoint downloads a signature by its type for a document.
      operationId: downloadSignatureByType
      tags:
        - Signature Proof
      responses:
        '200':
          description: The signature file.
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/documents/{documentId}/signatures/{signatureType}/signers/{signerId}:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
      - name: signatureType
        $ref: '#/components/parameters/signatureType_Low_Level_path'
      - name: signerId
        $ref: '#/components/parameters/signerId_path'
    get:
      summary: Download Low-Level Signature Proof
      description: Low Level signature proof are provided by signature, for a specific document. This endpoint downloads a low-level signature proof for a document and signer.
      operationId: downloadLowLevelSignatureProof
      tags:
        - Signature Proof
      responses:
        '200':
          description: The low-level signature proof file.
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/documents/{documentId/img-signatures:
    parameters:
      - name: documentId
        $ref: '#/components/parameters/documentId_path'
    get:
      summary: Get Signature Images (Base64)
      description: This endpoint retrieves the image of a signature from a document.
      operationId: getSignatureImg
      tags:
        - Signature Proof
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: provide the images of the signature representation for each signer of the signature. images are provided as PNG files encoded in base64 format
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignatureImages_Dto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/signature-requests:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    get:
      summary: Get Signature Requests - Paginated
      description: This endpoint retrieves all signature requests for a given application and environment.
      operationId: getSignatureRequestsByAppIdAndAppEnv
      tags:
        - Signature Request
      parameters:
        - name: page
          in: query
          description: The page number to return.
          required: false
          schema:
            type: integer
      responses:
        '200':
          description: Paginated signature requests.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignatureRequests_Paginate'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
    post:
      summary: Initialize a Signature Request
      description: |
        This endpoint initializes a new signature request for a given application and environment.
        This method is a part of the **[Signature Request Creation Api Life Cycle](https://ignisign.io/docs/core-concepts/Signature_Requests)**.
      operationId: initSignatureRequest
      tags:
        - Signature Request
      requestBody:
        description: The signature profile ID.
        content:
          application/json:
            schema: {}
      responses:
        '200':
          description: A container for the signature request ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignatureRequest_IdContainer'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/applications/{appId}/envs/{appEnv}/signature-requests/status:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    get:
      summary: Get Signature Requests Status
      description: This endpoint retrieves the status of multiple signature requests.
      operationId: getSignatureRequestsStatus
      tags:
        - Signature Request
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                signatureRequestIds:
                  type: array
                  items:
                    type: string
      responses:
        '200':
          description: Signature requests status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignatureRequests_StatusContainer'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/signature-requests/{signatureRequestId}:
    parameters:
      - name: signatureRequestId
        $ref: '#/components/parameters/signatureRequestId_path'
    put:
      summary: Update a Signature Request
      description: |
        This endpoint updates a signature request identified by the signature request ID.<br/><br/>
        This methos is a partial update, that means that you can update only the fields you want to update. <br/><br/>
        The signature request must be in `DRAFT` state to be able to be updated.<br/><br/>
        `documentIds` and `signerIds` are optional but must be globally provided to be able to `PUBLISH` the signature request. <br/>That means that you need to provide them at least one time <br/>
        This method is a part of the **[Signature Request Creation Api Life Cycle](https://ignisign.io/docs/core-concepts/Signature_Requests)**.
      operationId: updateSignatureRequest
      tags:
        - Signature Request
      requestBody:
        description: The signature request details.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignSignatureRequest_UpdateDto'
      responses:
        '200':
          description: The context of the updated signature request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignatureRequest_Context'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/signature-requests/{signatureRequestId/publish:
    parameters:
      - name: signatureRequestId
        $ref: '#/components/parameters/signatureRequestId_path'
    post:
      summary: Publish a Signature Request
      description: |
        This endpoint allow to publish a signature request identified by the signature request ID.
        `documentIds` and `signerIds` must be provided at least one time with the signature request  method to be able to publish the signature request.<br/>
        This method is a part of the **[Signature Request Creation Api Life Cycle](https://ignisign.io/docs/core-concepts/Signature_Requests)**.
         
      operationId: publishSignatureRequest
      tags:
        - Signature Request
      responses:
        '200':
          description: A container for the signature request ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignatureRequest_Publish_ResponseDTO'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/signature-requests/{signatureRequestId/close:
    parameters:
      - name: signatureRequestId
        $ref: '#/components/parameters/signatureRequestId_path'
    post:
      summary: Close a Signature Request
      description: This endpoint closes a signature request identified by the signature request ID.
      operationId: closeSignatureRequest
      tags:
        - Signature Request
      responses:
        '200':
          description: A container for the signature request ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignatureRequest_IdContainer'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/signature-requests/{signatureRequestId/context:
    parameters:
      - name: signatureRequestId
        $ref: '#/components/parameters/signatureRequestId_path'
    get:
      summary: Get a Signature Request Context
      description: This endpoint retrieves the context of a signature request identified by the signature request ID.
      operationId: getSignatureRequestContext
      tags:
        - Signature Request
      responses:
        '200':
          description: The context of the signature request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSignatureRequest_Context'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/applications/{appId}/envs/{appEnv}/webhooks:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    get:
      summary: Get Webhook Endpoints
      description: This endpoint retrieves webhook endpoints configurated for an environment.
      operationId: getWebhookEndPoints
      tags:
        - Manage Webhooks
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: The list of webhook events.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IgnisignWebhook'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
    post:
      summary: Add a new Webhook Endpoint
      description: This endpoint adds a new webhook endpoint to an application environment.
      operationId: addWebhookEndpoint
      security:
        - ignisign_api_auth: []
      tags:
        - Manage Webhooks
      requestBody:
        description: The details of the webhook endpoint to be added.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignWebhook_EndpointDto'
      responses:
        '200':
          description: The updated list of webhook settings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignWebhook_SettingsDescription'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/webhooks/{webhookId}:
    parameters:
      - name: webhookId
        $ref: '#/components/parameters/webhookId_path'
    put:
      summary: Update a Webhook Endpoint
      description: This endpoint updates an existing webhook endpoint.
      operationId: updateWebhookEndpoint
      security:
        - ignisign_api_auth: []
      tags:
        - Manage Webhooks
      requestBody:
        description: The new details of the webhook endpoint to be updated.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignWebhook_EndpointDto'
      responses:
        '200':
          description: The updated list of webhook settings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignWebhook_SettingsDescription'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
    delete:
      summary: Remove a Webhook Endpoint
      description: This endpoint removes an existing webhook endpoint.
      operationId: removeWebhookEndpoint
      security:
        - ignisign_api_auth: []
      tags:
        - Manage Webhooks
      responses:
        '200':
          description: The updated list of webhook settings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignWebhook_SettingsDescription'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/webhooks/{webhookId}/events:
    parameters:
      - name: webhookId
        $ref: '#/components/parameters/webhookId_path'
    get:
      summary: Get Webhook Events
      description: This endpoint retrieves webhook events for a specific webhook.
      operationId: getWebhookEvents
      tags:
        - Manage Webhooks
      security:
        - ignisign_api_auth: []
      parameters:
        - name: filter
          in: query
          schema:
            $ref: '#/components/schemas/IGNISIGN_WEBHOOK_EVENT_FILTER'
          required: false
        - name: page
          in: query
          schema:
            type: integer
          required: false
      responses:
        '200':
          description: The list of webhook events.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignWebhookEvent_ListingDto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/webhooks/{webhookId}/events/{eventId}:
    parameters:
      - name: webhookId
        $ref: '#/components/parameters/webhookId_path'
      - name: eventId
        in: path
        description: The unique identifier of the event.
        required: true
        schema:
          type: string
    get:
      summary: Get a Webhook Event
      description: This endpoint retrieves a specific webhook event.
      operationId: getWebhookEvent
      security:
        - ignisign_api_auth: []
      tags:
        - Manage Webhooks
      responses:
        '200':
          description: The specific webhook event.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignWebhookEvent'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/webhooks/{webhookId}/events/{eventId}/resend:
    parameters:
      - name: webhookId
        $ref: '#/components/parameters/webhookId_path'
      - name: eventId
        in: path
        description: The unique identifier of the event.
        required: true
        schema:
          type: string
    post:
      summary: Resend a Webhook Event
      description: This endpoint resends a specific webhook event.
      operationId: resendWebhookEvent
      tags:
        - Manage Webhooks
      security:
        - ignisign_api_auth: []
      responses:
        '200':
          description: Webhook event has been resent successfully.
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/tokens/webhook-verification/checking-consumption:
    post:
      summary: Check a Webhook Event Token
      description: this endpoint is used to check the webhook event token
      operationId: checkWebhookEventToken
      security:
        - uniqueToken: []
      tags:
        - Manage Webhooks
      responses:
        '200':
          description: The specific webhook event.
          content:
            application/json:
              schema:
                type: object
                properties:
                  appId:
                    $ref: '#/components/schemas/appId'
                  appEnv:
                    $ref: '#/components/schemas/appEnv'
                  token:
                    type: string
                    description: the token to verify
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '408':
          $ref: '#/components/responses/408'
        '500':
          $ref: '#/components/responses/500'
  /v4/applications/{appId}/envs/{appEnv}/m2m/{m2mId}/sign:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
      - name: m2mId
        $ref: '#/components/parameters/m2mId_path'
    post:
      summary: Sign M2M
      description: This endpoint allows signing a document using the M2M (Machine-to-Machine) process.
      operationId: signM2M
      tags:
        - Seal
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignSealM2M_RequestDto'
      responses:
        '200':
          description: The M2M signature response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignSealM2M_ResponseDto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/envs/{appEnv}/oauth2/proofs-token:
    parameters:
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    post:
      summary: Get Bare Signature Proof Token
      description: This endpoint allows retrieving a proof access token for a bare signature request.
      operationId: getBareSignatureProofToken
      tags:
        - Bare Signature
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignBareSignature_ProofAccessTokenRequest'
      responses:
        '200':
          description: The proof access token for bare signature.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignBareSignature_ProofAccessToken'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/envs/{appEnv}/bare-signatures/proofs:
    parameters:
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    get:
      summary: Get Bare Signature Proofs
      description: This endpoint retrieves proofs for a bare signature.
      operationId: getBareSignatureProofs
      tags:
        - Bare Signature
      parameters:
        - name: Authorization
          in: header
          description: Bearer token for authorization
          required: true
          schema:
            type: string
      responses:
        '200':
          description: List of bare signature proofs.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignBareSignature_Proof'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/applications/{appId}/envs/{appEnv}/bare-signatures-configuration:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    get:
      summary: Get Bare Signature Configuration
      description: This endpoint retrieves the configuration settings for a bare signature application environment.
      operationId: getBareSignatureConfiguration
      tags:
        - Bare Signature
      responses:
        '200':
          description: The bare signature environment settings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignApplication_BareSignatureEnvSettings'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
  /v4/applications/{appId}/envs/{appEnv}/log-capsules:
    parameters:
      - name: appId
        $ref: '#/components/parameters/appId_path'
      - name: appEnv
        $ref: '#/components/parameters/appEnv_path'
    post:
      summary: Create Log Capsule
      description: This endpoint creates a log capsule with a SHA-256 hash for proofing.
      operationId: logCapsuleCreate
      tags:
        - Log Capsule
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IgnisignLogCapsule_RequestDto'
      responses:
        '201':
          description: The log capsule has been created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IgnisignLogCapsule_ResponseDto'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '500':
          $ref: '#/components/responses/500'
      security:
        - ignisign_api_auth: []
components:
  securitySchemes:
    ignisign_api_auth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    api_key:
      type: apiKey
      in: header
      name: api_key
      description: |
        Api key are defined by application and by environments.
    uniqueToken:
      type: apiKey
      in: query
      name: token
  schemas:
    appId:
      type: string
      description: The application identifier which is used to identify the application used.
      example: appId_XXXX-XXXX-XXXX-XXXX-XXXX
    appEnv:
      type: string
      description: The execution environment of the application where request are executed.
      enum:
        - DEVELOPMENT
        - STAGING
        - PRODUCTION
    IgnisignApiAuth_RequestDto:
      type: object
      properties:
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        secret:
          type: string
          example: sk_development_XXXX-XXXX-XXXX-XXXX-XXXX
          description: |
            The secret related to the application and the environment.<br/>
            This secret can be obtained from the Ignisign's Console (https://console.ignisign.io)
      required:
        - appId
        - appEnv
        - secret
      additionalProperties: false
    IgnisignJwtContainer:
      type: object
      properties:
        jwtToken:
          type: string
      required:
        - jwtToken
      additionalProperties: false
    Ignisign_Api_Error_Response:
      type: object
      properties:
        message:
          type: string
          description: |
            The main message related to the error. It should provide an explanation or additional information about the error.
        timestamp:
          type: string
          format: date-time
          description: |
            The timestamp when the error occurred, represented in UTC. It follows the format 'YYYY-MM-DD HH:mm:ss ZZ'.
        status:
          type: integer
          description: |
            The HTTP status code associated with the error. It indicates the status of the corresponding HTTP response.
        code:
          type: string
          description: |
            The error code. It should be one of the IGNISIGN_ERROR_CODES (not linked here due to the high number of possible codes).
        context:
          type: object
          description: |
            Additional contextual information related to the error. This object can contain any relevant properties.
      required:
        - message
        - timestamp
        - status
        - code
      additionalProperties: false
    IGNISIGN_APPLICATION_STATUS:
      type: string
      enum:
        - ACTIVE
        - BLOCKED
        - ARCHIVED
        - ORG_ARCHIVED
      description: |
        Represents the status of an application in the Ignisign application.  ACTIVE: The application is active and can be used to create and manage signatures. BLOCKED: The application is blocked and cannot be used to create and manage signatures. ARCHIVED: The application is archived and cannot be used to create and manage signatures. ORG_ARCHIVED: The organization to which the application belongs is archived and cannot be used to create and manage signatures.
    IGNISIGN_APPLICATION_TYPE:
      type: string
      enum:
        - SIGNATURE
        - SEAL
        - LOG_CAPSULE
        - BARE_SIGNATURE
        - WEB3
        - IGNISIGN_RIGHT_DELEGATION
      description: |
        Represents the type of an Ignisign application. - SIGNATURE: Represents a managed signature application. - SEAL: Represents a seal application. - LOG_CAPSULE: Represents a log capsule application (generation of logs certified by a Qualified Timestamp). - BARE_SIGNATURE: Represents a bare signature application (Signature though oAuth2 mechanism). - WEB3: Not yet implemented. - IGNISIGN_RIGHT_DELEGATION: Internal Application used to validate rights between users and signers (mainly used for eSeal right management).
    IGNISIGN_API_VERSION:
      type: string
      enum:
        - V3
        - V4
      description: Represents the version of the Ignisign API.
    IgnisignApplication_Configuration:
      type: object
      properties:
        appId:
          $ref: '#/components/schemas/appId'
        orgId:
          type: string
          description: The unique identifier of the organization that owns the application.
      required:
        - appId
        - orgId
      additionalProperties: false
      description: the configuration linked to the application - this configuration is not yet realy used.
    IgnisignWebhook_SettingsDescription:
      type: object
      properties:
        _id:
          type: string
        _createdAt:
          type: string
          format: date-time
        url:
          type: string
          description: The URL of the webhook endpoint.
        description:
          type: string
          description: The description of the webhook endpoint.
        isDisabled:
          type: boolean
          description: Whether the webhook is disabled or not.
      required:
        - url
      additionalProperties: false
    IGNISIGN_APPLICATION_ENV_API_KEYS_STATUS:
      type: string
      enum:
        - ACTIVE
        - REVOCATED
      description: Represents the status of an API key.
    IgnisignApplication_EnvApiKeys:
      type: object
      properties:
        _id:
          type: string
        appId:
          $ref: '#/components/schemas/appId'
        name:
          type: string
        description:
          type: string
        appEnv:
          $ref: '#/components/schemas/appEnv'
        isRestricted:
          type: boolean
        displayableSecret:
          type: string
        status:
          $ref: '#/components/schemas/IGNISIGN_APPLICATION_ENV_API_KEYS_STATUS'
      required:
        - appId
        - name
        - appEnv
        - isRestricted
        - displayableSecret
        - status
      additionalProperties: false
    IGNISIGN_SSO_CONFIG_TYPES:
      type: string
      enum:
        - OAUTH2
        - SAML
    IGNISIGN_SSO_CONFIG_STATUS:
      type: string
      enum:
        - ACTIVE
        - ARCHIVED
    Ignisign_OAuth2_Fields:
      type: object
      properties:
        sub:
          type: string
        given_name:
          type: string
        family_name:
          type: string
        email:
          type: string
        nationality:
          type: string
        birth_date:
          type: string
        birth_place:
          type: string
        birth_country:
          type: string
      required:
        - sub
        - given_name
        - family_name
        - email
        - nationality
        - birth_date
        - birth_place
        - birth_country
      additionalProperties: false
      description: '****************** ENV Settings ******************'
    Ignisign_OAuth2_Settings:
      type: object
      properties:
        clientId:
          type: string
        clientSecret:
          type: string
        serverUrl:
          type: string
        fields:
          $ref: '#/components/schemas/Ignisign_OAuth2_Fields'
      additionalProperties: false
    Ignisign_SAML_Settings:
      type: object
      properties:
        idpMetadataUrl:
          type: string
        spEntityId:
          type: string
      additionalProperties: false
    IgnisignApplicationEnv_SSO_Config:
      type: object
      properties:
        _id:
          type: string
        name:
          type: string
        description:
          type: string
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        type:
          $ref: '#/components/schemas/IGNISIGN_SSO_CONFIG_TYPES'
        status:
          $ref: '#/components/schemas/IGNISIGN_SSO_CONFIG_STATUS'
        settingsOAuth2:
          $ref: '#/components/schemas/Ignisign_OAuth2_Settings'
        settingsSAML:
          $ref: '#/components/schemas/Ignisign_SAML_Settings'
      required:
        - name
        - appId
        - appEnv
        - type
        - status
      additionalProperties: false
    IGNISIGN_SIGNATURE_METHOD_REF:
      type: string
      enum:
        - SIMPLE_STD
        - ADVANCED_SMS
        - ADVANCED_STD
        - QUALIFIED_STD
      description: Represents the method used for signatures in a signature requests in an Ignisign application.
    IgnisignApplication_EnvSettings:
      type: object
      properties:
        appId:
          $ref: '#/components/schemas/appId'
        orgId:
          type: string
          description: The unique identifier of the organization that owns the application.
        appEnv:
          $ref: '#/components/schemas/appEnv'
        isApiKeyGenerated:
          type: boolean
        defaultSignerProfileId:
          type: string
        currentVersion:
          type: number
        webhooks:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignWebhook_SettingsDescription'
          description: A list of webhook settings for the application.
        languageCanBeChanged:
          type: boolean
        extendedAuthSessionEnabled:
          type: boolean
        apiKeys:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignApplication_EnvApiKeys'
        ssoConfigs:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignApplicationEnv_SSO_Config'
        originalFileRetentionDurationInDays:
          type: number
        highLevelProofsRetentionDurationInDays:
          type: number
        defaultSignatureLevel:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_METHOD_REF'
          defaultApproverIds:
            type: array
          items:
            type: string
        defaultRecipients:
          type: array
          items:
            type: string
        onlineProofsEnabled:
          type: boolean
      required:
        - appId
        - orgId
        - appEnv
        - currentVersion
        - webhooks
        - extendedAuthSessionEnabled
        - apiKeys
        - ssoConfigs
      additionalProperties: false
      description: |
        This object represents the environment settings for an application.
    IGNISIGN_LANGUAGES:
      type: string
      enum:
        - AR
        - BG
        - BN
        - CS
        - DA
        - DE
        - EL
        - EN
        - ES
        - ET
        - FI
        - FR
        - GA
        - HI
        - HR
        - HU
        - IS
        - IT
        - JA
        - KO
        - LT
        - LV
        - MT
        - NL
        - 'NO'
        - PL
        - PT
        - RO
        - RU
        - SK
        - SL
        - SQ
        - SR
        - SV
        - TR
        - UK
        - ZH
    IgnisignApplication_VariationColor:
      type: object
      properties:
        '50':
          type: string
        '100':
          type: string
        '200':
          type: string
        '300':
          type: string
        '400':
          type: string
        '500':
          type: string
        '600':
          type: string
        '700':
          type: string
        '800':
          type: string
        '900':
          type: string
        A100:
          type: string
        A200:
          type: string
        A400:
          type: string
        A700:
          type: string
      required:
        - '50'
        - '100'
        - '200'
        - '300'
        - '400'
        - '500'
        - '600'
        - '700'
        - '800'
        - '900'
        - A100
        - A200
        - A400
        - A700
      additionalProperties: false
    IgnisignApplication_Settings:
      type: object
      properties:
        appId:
          $ref: '#/components/schemas/appId'
        orgId:
          type: string
          description: The unique identifier of the organization that owns the application.
        defaultLanguage:
          $ref: '#/components/schemas/IGNISIGN_LANGUAGES'
        customerSupportEmail:
          type: string
        logoB64:
          type: string
        logoDarkB64:
          type: string
        primaryColor:
          $ref: '#/components/schemas/IgnisignApplication_VariationColor'
        secondaryColor:
          $ref: '#/components/schemas/IgnisignApplication_VariationColor'
      required:
        - appId
        - orgId
      additionalProperties: false
      description: '****************** COMMON SETTINGS ******************'
    IGNISIGN_SIGNER_PROFILE_STATUS:
      type: string
      enum:
        - ACTIVE
        - ARCHIVED
      description: Represents the status of a signer profile.
    IGNISIGN_INTEGRATION_MODE:
      type: string
      enum:
        - BY_SIDE
        - EMBEDDED
      description: Represents the integration mode of a signer profile.
    IGNISIGN_ID_PROOFING_METHOD_REF:
      type: string
      enum:
        - VIDEO_ROBOT_AES
        - VIDEO_ROBOT_QES
        - BANK_ACCOUNT_CHECK
        - E_ID_AES
        - E_ID_QES
        - RA_NATURAL_QES
        - RA_NATURAL_AES
        - SOCIAL_SECURITY_NUMBER
        - BIND_ADDITIONAL_AUTH_METHOD
        - ORG_SSO_AES
        - ORG_SSO_QES
        - SIMPLE_DECLARATION_SES_STD
        - SIMPLE_DECLARATION_SES_SMS
    IGNISIGN_AUTH_FULL_MECHANISM_REF:
      type: string
      enum:
        - SIMPLE
        - PHONE_SMS
        - PHONE_CALL
        - TOTP
        - PASS_KEY_POSSESSION
        - AES_EID
        - QES_EID
        - ORG_SSO
        - EXTENDED_SESSION
      description: |
        The authentication mechanism be used by recurrent signers. SIMPLE: Simple password PHONE_SMS: Phone SMS PHONE_CALL: Phone call TOTP: Time-based One-Time Password PASS_KEY_POSSESSION: Password key possession AES_EID: eIDs for Advanced Electronic Signature (eIDAS) QES_EID: eIDs for Qualified Electronic Signature (eIDAS) ORG_SSO: Organization Single Sign-On EXTENDED_SESSION: Extended session
    IgnisignSignerProfile_SignatureAuthMethods:
      type: object
      properties:
        idProofings:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_ID_PROOFING_METHOD_REF'
        authMethods:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_AUTH_FULL_MECHANISM_REF'
      additionalProperties: false
    IgnisignSignerProfile:
      type: object
      properties:
        _id:
          type: string
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        name:
          type: string
        description:
          type: string
        status:
          $ref: '#/components/schemas/IGNISIGN_SIGNER_PROFILE_STATUS'
        version:
          type: number
        isEmailProofSentByIgnisign:
          type: boolean
        isRecurrent:
          type: boolean
        integrationMode:
          $ref: '#/components/schemas/IGNISIGN_INTEGRATION_MODE'
        ssoConfigId:
          type: string
        signatureAuthMethodsConfiguration:
          type: object
          properties:
            SIMPLE_STD:
              $ref: '#/components/schemas/IgnisignSignerProfile_SignatureAuthMethods'
            ADVANCED_STD:
              $ref: '#/components/schemas/IgnisignSignerProfile_SignatureAuthMethods'
            QUALIFIED_STD:
              $ref: '#/components/schemas/IgnisignSignerProfile_SignatureAuthMethods'
          additionalProperties: false
        emailDomains:
          type: array
          items:
            type: string
        signerIds:
          type: array
          items:
            type: string
        accept2FADelegation:
          type: boolean
      required:
        - appId
        - appEnv
        - name
        - status
        - version
        - isEmailProofSentByIgnisign
        - isRecurrent
        - integrationMode
        - signatureAuthMethodsConfiguration
      additionalProperties: false
    IGNISIGN_SIGNATURE_PROFILE_STATUS:
      type: string
      enum:
        - PUBLISHED
        - ARCHIVED
      description: Represents the current status of a signature profile in the Ignisign application.
    IGNISIGN_SIGNATURE_REQUEST_TYPE:
      type: string
      enum:
        - STANDARD
        - SIGNER_SETUP
        - SEAL
        - SEAL_M2M
        - BARE_SIGNATURE
      description: The type of signature request. This parameter is used to define the type of signature request to be created. This will determine the type of signature request that will be created and the steps that will be required to complete the signature request.
    IGNISIGN_DOCUMENT_TYPE:
      type: string
      enum:
        - PDF
        - PDF_ENCRYPTED
        - FILE
        - DATA_JSON
        - DATA_XML
        - PRIVATE_FILE
      description: Represents the type of document that can be signed to the Ignisign application.
    IgnisignSignatureProfile:
      type: object
      properties:
        _id:
          type: string
          description: A unique string identifier for the signature profile.
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        orgId:
          type: string
          description: The unique identifier of the organization associated with this signature profile.
        name:
          type: string
          description: The name of the signature profile.
        status:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_PROFILE_STATUS'
        integrationMode:
          $ref: '#/components/schemas/IGNISIGN_INTEGRATION_MODE'
        signatureMethodRef:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_METHOD_REF'
        signatureRequestType:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_TYPE'
        idProofings:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_ID_PROOFING_METHOD_REF'
          description: The identity proofing methods used in this signature profile.
        authMethods:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_AUTH_FULL_MECHANISM_REF'
          description: The authentication methods used in this signature profile.
        documentTypes:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_DOCUMENT_TYPE'
          description: The types of documents supported by this signature profile.
        defaultLanguage:
          $ref: '#/components/schemas/IGNISIGN_LANGUAGES'
          description: The default language for signatures in this profile.
        languageCanBeChanged:
          type: boolean
          description: Indicates whether the language can be changed during the signature request creation.
        statementsEnabled:
          type: boolean
          description: Indicates whether statements are enabled in this signature profile.
        templateDisplayerId:
          type: string
          description: The unique identifier of the template displayer associated with this signature profile in case of document type is DATA_JSON.
        createdByDefault:
          type: boolean
          description: Indicates whether the signature profile has been created has a by default signature profile.
        extendedAuthSessionEnabled:
          type: boolean
          description: Indicates whether extended authentication sessions are enabled in this signature profile. This allow signers to authenticate once and sign signature session during 30 minutes with the same device/browser.
        approverEnabled:
          type: boolean
          description: Indicates whether the approver is enabled for signature request created from this signature profile.
        recipientEnabled:
          type: boolean
          description: Indicates whether the recipient is enabled for signature request created from this signature profile.
        individualizeRequests:
          type: boolean
          description: Indicates whether the signature request created from this signature profile are individualized. I.E all the signers will receive a separate signature request. Approvers will be included in each signature request.
      required:
        - appId
        - appEnv
        - orgId
        - name
        - integrationMode
        - signatureMethodRef
        - idProofings
        - authMethods
        - defaultLanguage
        - signatureRequestType
        - languageCanBeChanged
        - extendedAuthSessionEnabled
        - status
        - statementsEnabled
        - documentTypes
      additionalProperties: false
    IgnisignApplication_Context:
      type: object
      properties:
        _createdAt:
          type: string
          format: date-time
        appId:
          $ref: '#/components/schemas/appId'
        orgId:
          type: string
          description: The unique identifier of the organization that owns the application.
        appName:
          type: string
        status:
          $ref: '#/components/schemas/IGNISIGN_APPLICATION_STATUS'
        appType:
          $ref: '#/components/schemas/IGNISIGN_APPLICATION_TYPE'
        ignisignApiVersion:
          $ref: '#/components/schemas/IGNISIGN_API_VERSION'
        isDefaultApplication:
          type: boolean
        config:
          $ref: '#/components/schemas/IgnisignApplication_Configuration'
        envSettings:
          type: object
          properties:
            DEVELOPMENT:
              $ref: '#/components/schemas/IgnisignApplication_EnvSettings'
            STAGING:
              $ref: '#/components/schemas/IgnisignApplication_EnvSettings'
            PRODUCTION:
              $ref: '#/components/schemas/IgnisignApplication_EnvSettings'
          additionalProperties: false
        settings:
          $ref: '#/components/schemas/IgnisignApplication_Settings'
        signerProfiles:
          type: object
          properties:
            DEVELOPMENT:
              type: array
              items:
                $ref: '#/components/schemas/IgnisignSignerProfile'
            STAGING:
              type: array
              items:
                $ref: '#/components/schemas/IgnisignSignerProfile'
            PRODUCTION:
              type: array
              items:
                $ref: '#/components/schemas/IgnisignSignerProfile'
          additionalProperties: false
        signatureProfiles:
          type: object
          properties:
            DEVELOPMENT:
              type: array
              items:
                $ref: '#/components/schemas/IgnisignSignatureProfile'
            STAGING:
              type: array
              items:
                $ref: '#/components/schemas/IgnisignSignatureProfile'
            PRODUCTION:
              type: array
              items:
                $ref: '#/components/schemas/IgnisignSignatureProfile'
          additionalProperties: false
          deprecated: true
      required:
        - appName
        - appType
        - config
        - envSettings
        - ignisignApiVersion
        - orgId
        - settings
        - signatureProfiles
        - signerProfiles
        - status
      additionalProperties: false
    IGNISIGN_APPLICATION_INVITED_USER_STATUS:
      type: string
      enum:
        - PENDING
        - ACCEPTED
        - DECLINED
        - CANCELED
      description: Represents the current status of an invited user in the Ignisign application.
    IGNISIGN_APPLICATION_ROLES:
      type: string
      enum:
        - ADMIN
        - USER
        - READER
      description: Represents the roles that can be assigned to a user in the Ignisign application.
    IgnisignApplication_InvitedUser:
      type: object
      properties:
        _id:
          type: string
          description: A unique string identifier for the invited user. This is typically generated by the system and is read-only.
        email:
          type: string
          description: The email address of the invited user.
        appId:
          $ref: '#/components/schemas/appId'
        status:
          $ref: '#/components/schemas/IGNISIGN_APPLICATION_INVITED_USER_STATUS'
          description: The current status of the invited user.
        roles:
          type: object
          properties:
            DEVELOPMENT:
              type: array
              items:
                $ref: '#/components/schemas/IGNISIGN_APPLICATION_ROLES'
            STAGING:
              type: array
              items:
                $ref: '#/components/schemas/IGNISIGN_APPLICATION_ROLES'
            PRODUCTION:
              type: array
              items:
                $ref: '#/components/schemas/IGNISIGN_APPLICATION_ROLES'
          required:
            - DEVELOPMENT
            - STAGING
            - PRODUCTION
          additionalProperties: false
      required:
        - email
        - appId
        - status
        - roles
      additionalProperties: false
    IgnisignApplication_Roles:
      type: object
      properties:
        DEVELOPMENT:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_APPLICATION_ROLES'
        STAGING:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_APPLICATION_ROLES'
        PRODUCTION:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_APPLICATION_ROLES'
      required:
        - DEVELOPMENT
        - STAGING
        - PRODUCTION
      additionalProperties: false
    IgnisignApplication_InvitedUser_CreationRequestDto:
      type: object
      properties:
        email:
          type: string
          description: The email address of the invited user.
        roles:
          $ref: '#/components/schemas/IgnisignApplication_Roles'
          description: The roles assigned to the invited user for each environments.
      required:
        - email
        - roles
      additionalProperties: false
    IgnisignApplicationUser_EditRequestDto:
      type: object
      properties:
        roles:
          $ref: '#/components/schemas/IgnisignApplication_Roles'
      required:
        - roles
      additionalProperties: false
    IgnisignSigner_CreationRequestDto:
      type: object
      properties:
        signerProfileId:
          type: string
          description: |
            The unique identifier of the signer profile that the signer which the signer will be associated.
            the fields needed to initiate the signers will depends of the configuration of the signer profile. more info: https://ignisign.io/docs/core-concepts/Signers_and_Claims
        externalId:
          type: string
          description: |
            An external identifier that can be used to identify the signer.
            It's a reference that can be used to identify the signer in the external system.
            Ignisign does not use internally this field to identify the signer.
        firstName:
          type: string
          description: The first name of the signer.
        lastName:
          type: string
          description: The last name of the signer.
        email:
          type: string
          description: The email address of the signer.
        phoneNumber:
          type: string
          description: the phone number of the signer.
          format: E.164
        nationality:
          type: string
          description: The nationality of the signer.
          format: iso 3166-1 alpha-2
        birthDate:
          type: string
          description: the date of birth of the signer.
          format: date
        birthPlace:
          type: string
          description: the place of birth of the signer.
        birthCountry:
          type: string
          description: the country of birth of the signer.
          format: iso 3166-1 alpha-2
      additionalProperties: false
    IGNISIGN_SIGNER_ENTITY_TYPE:
      type: string
      enum:
        - NATURAL
        - SEAL
      description: the type of the signer entity - For the moment, only NATURAL is supported.
    IgnisignSigner_CreationResponseDto:
      type: object
      properties:
        signerId:
          type: string
        entityType:
          $ref: '#/components/schemas/IGNISIGN_SIGNER_ENTITY_TYPE'
        authSecret:
          type: string
          description: the secret that have to be used to authenticate the signer in an embedded integration mode
        success:
          type: boolean
          description: Indicates whether the signer has been created successfully
        alreadyExists:
          type: boolean
          description: Indicates whether the signer already exists
      required:
        - signerId
        - entityType
        - success
        - alreadyExists
      additionalProperties: false
    IGNISIGN_SIGNER_STATUS:
      type: string
      enum:
        - CREATED
        - PENDING
        - BLOCKED
        - ACTIVE
        - CORRUPTED
      description: The status of the signer.
    IGNISIGN_SIGNER_CREATION_INPUT_REF:
      type: string
      enum:
        - firstName
        - lastName
        - email
        - phoneNumber
        - nationality
        - birthDate
        - birthPlace
        - birthCountry
      description: |
        Represents the attributes that can be used to create a signer in the Ignisign application. - **firstName**: The first name of the signer. - **lastName**: The last name of the signer. - **email**: The email address of the signer. - **phoneNumber**: The phone number of the signer. - **nationality**: The nationality of the signer. - **birthDate**: The birth date of the signer. - **birthPlace**: The birth place of the signer. - **birthCountry**: The birth country of the signer.
    IGNISIGN_SIGNER_CLAIM_REF:
      type: string
      enum:
        - EID_POSSESSION_AES
        - EID_POSSESSION_QES
        - PHONE_NUMBER_POSSESSION
        - PRIVATE_KEY_POSSESSION
        - DAPP_WALLET_POSSESSION
        - APP_SIGNER_SECRET_POSSESSION
        - TOTP_POSSESSION
        - EMAIL_POSSESSION
        - ID_DOC_POSSESSION_QES
        - ID_DOC_POSSESSION_AES
        - SOCIAL_SECURITY_NUMBER_POSSESSION
        - RA_PROCESS_VALIDATED_AES
        - RA_PROCESS_VALIDATED_QES
        - BANK_ACCOUNT_POSSESSION
        - NATURAL_PERSON_NAME
        - LEGAL_PERSON_NAME
        - PASS_KEY_POSSESSION
        - NATIONALITY
        - CORPORATE_SSO_ACCOUNT_POSSESSION
        - GOOGLE_ACCOUNT_POSSESSION
        - GITHUB_ACCOUNT_POSSESSION
        - BIRTH_COUNTRY
        - BIRTH_DATE
        - BIRTH_PLACE
        - CAN_APPROVE_SEAL_SES
        - CAN_APPROVE_SEAL_AES
        - CAN_APPROVE_SEAL_QES
        - EXTENDED_SESSION
      description: |
        A reference that determinates the claim type.<br/>
        - **EID_POSSESSION_AES** : The signer's claim is related to the possession of an eID (valid for Advanced Electronic Signature only).
        - **EID_POSSESSION_QES** : The signer's claim is related to the possession of an eID (valid for Qualified Electronic Signature and Advanced Electronic Signature).
        - **PHONE_NUMBER_POSSESSION** : The signer's claim is related to the possession of a phone number.
        - **PRIVATE_KEY_POSSESSION** : The signer 's claim is related to the possession of a private key.
        - **DAPP_WALLET_POSSESSION** : The signer 's claim is related to the possession of a dApp wallet.
        - **APP_SIGNER_SECRET_POSSESSION** : this claim means that the signer have been initialized to be able to sign in the embedded mode. Ignisign has provide the client application with a secret that need to be provided when thesigner want to initialize a signature in the embedded mode.<br>
          more info: https://ignisign.io/docs/core-concepts/Embeded_or_By-Side_Integration
        - **TOTP_POSSESSION** : claim related to the associatiation of it's account with a TOPT (Google Authenticator like application).
        - **EMAIL_POSSESSION** : The signer's claim is related to the possession of an email.
        - **ID_DOC_POSSESSION_QES** : The signer's claim is related to the possession of an ID document (valid for Qualified Electronic Signature and Advanced Electronic Signature).
        - **ID_DOC_POSSESSION_AES** : The signer's claim is related to the possession of an ID document (valid for Advanced Electronic Signature only).
        - **RA_PROCESS_VALIDATED_AES** : The signer's claim is related to the identification throw a delegation of the registration authority to the organization that owns the application linked to the signer (valid for Advanced Electronic Signature only).
        - **RA_PROCESS_VALIDATED_QES** : The signer's claim is related to the identification throw  delegation of the registration authority to the organization that owns the application linked to the signer (valid for Qualified Electronic Signature and Advanced Electronic Signature).
        - **BANK_ACCOUNT_POSSESSION** : The signer 's claim is related to a the bank account.
        - **NATURAL_PERSON_NAME** : The signer's claim is related to natural name of the signer.
        - **LEGAL_PERSON_NAME** : The signer's claim is related to legal name of the signer.
        - **PASS_KEY_POSSESSION** : The signer's claim is related to the possession of a passKey. More Info: https://fidoalliance.org/passkeys/
        - **NATIONALITY**: The signer's claim is related to the nationality of the signer.
        - **CORPORATE_SSO_ACCOUNT_POSSESSION** : The signer's claim is related to the possession of a corporate SSO account.
        - **GOOGLE_ACCOUNT_POSSESSION** : The signer's claim is related to the possession of a Google account.
        - **GITHUB_ACCOUNT_POSSESSION** : The signer's claim is related to the possession of a GitHub account.
        - **BIRTH_COUNTRY** : The signer's claim is related to the birth country of the signer.
        - **BIRTH_DATE** : The signer's claim is related to the birth date of the signer.
        - **BIRTH_PLACE** : The signer's claim is related to the birth place of the signer.
        - **CAN_APPROVE_SEAL_SES** : The signer's claim is related to the ability to approve a seal with a Simple Electronic Signature.
        - **CAN_APPROVE_SEAL_AES** : The signer's claim is related to the ability to approve a seal with an Advanced Electronic Signature.
        - **CAN_APPROVE_SEAL_QES** : The signer's claim is related to the ability to approve a seal with a Qualified Electronic Signature.
        - **EXTENDED_SESSION** : The signer's claim is related to the ability to extend the session of the signer.
    IGNISIGN_SIGNER_CLAIM_STATUS:
      type: string
      enum:
        - DECLARED
        - VERIFIED
        - REJECTED
        - DEPRECATED
      description: |
        The status of the claim.<br/>
        - **DECLARED** : The claim as been declared by an application operator<br/>
        - **VERIFIED** : The claim has been verified <br/>
        - **REJECTED** : The claim has been rejected during a verification process<br/>
        - **DEPRECATED** : The claim has been deprecated.<br/>
        https://ignisign.io/docs/core-concepts/Signers_and_Claims
    IGNISIGN_SIGNATURE_REQUEST_STATUS:
      type: string
      enum:
        - DRAFT
        - LAUNCHING
        - LAUNCH_ERROR
        - READY
        - IN_PROGRESS
        - COMPLETED
        - EXPIRED
        - FAILED
        - CANCELLED
        - PROCESSING
        - CHILDREN_GENERATED
      description: Represents the current status of a signature request in the Ignisign application.
    IGNISIGN_SIGNATURE_REQUEST_DIFFUSION_MODE:
      type: string
      enum:
        - WHEN_READY
        - SCHEDULED
      description: |
        Represents the diffusion mode of a signature request. 
        - **WHEN_READY** : The signature request will be sent to the signer as soon it is ready to be signed. This is the default value. <br/>
          I.E: If there are no document request, the signature request will be sent to the signer as soon as the signature request is PUBLISHED. <br/>
          If there are document request, the signature request will be sent to the signer as soon as all the document request are have been completed.
        - **SCHEDULED** : The signature request will be sent to the signer at a specific date. This date is specified in the diffusionDate field<br/>
    IgnisignSignatureRequest_SignerProfile:
      type: object
      properties:
        signerProfileId:
          type: string
        signatureMethodRef:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_METHOD_REF'
        version:
          type: number
        signerIds:
          type: array
          items:
            type: string
      required:
        - signerProfileId
        - signatureMethodRef
        - version
        - signerIds
      additionalProperties: false
    IgnisignSignatureRequest_WithDocName:
      type: object
      properties:
        _id:
          type: string
        _createdAt:
          type: string
          format: date-time
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        signatureRequestType:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_TYPE'
        title:
          type: string
          description: The title of the signature request.
        description:
          type: string
          description: The description of the signature request.
        language:
          $ref: '#/components/schemas/IGNISIGN_LANGUAGES'
          description: Force the use of a specific language into the signature session.
        status:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_STATUS'
        externalId:
          type: string
          description: a free field to store an identifier that can be used to link the signature request to an external system.
        creatorId:
          type: string
          description: The id of the user who created the signature request if this has been made into the IgniSign User interface.
        documentIds:
          type: array
          items:
            type: string
          description: The ids of the documents that are linked to the signature request.
        signerIds:
          type: array
          items:
            type: string
          description: The ids of the signers that have been invited to sign the signature request.
        signedBy:
          type: array
          items:
            type: string
          description: The ids of the signers that have already signed the signature request.
        expirationDate:
          type: string
          format: date-time
          description: The expiration date if the `expirationDateIsActivated` parameter is true The action linked to this date is performed every 5 minutes, at 5, 10, 15... 55.
        expirationDateIsActivated:
          type: boolean
          description: Indicates whether the expiration date is activated.
        diffusionMode:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_DIFFUSION_MODE'
        diffusionDate:
          type: string
          format: date-time
          description: the diffusion date if `diffusionMode`parameter is `SCHEDULED` The action linked to this date is performed every 5 minutes, at 5, 10, 15... 55.
        initialSignatureRequestId:
          type: string
          description: If the signature request has been created from a signature profile with the `individualizeRequests` option activated, this field will contain the identifier of the initial signature request which it has been generated.
        signerIdsAsApprover:
          type: array
          items:
            type: string
          description: the ids of signers that will be approvers
        recipients:
          type: array
          items:
            type: string
          description: the emails of signers that will receive a copy of the signed document
        appEnvSettingVersion:
          type: number
          description: The version of the application environment settings used to create this signature request.
        defaultSignatureMethod:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_METHOD_REF'
          description: The main signature method used for this signature request. This could be overriden by the signer profile.
        signerProfilesUsed:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignatureRequest_SignerProfile'
        individualizeRequests:
          type: boolean
          description: Indicates whether the signature request has been created with the `individualizeRequests` option activated. If activated, each signer will receive a separate signature request. Approvers will be included in each signature requests.
        m2mId:
          type: string
          description: Used only for M2M signature requests. The identifier of the M2M signature request. du not update directly this field.
        docFileName:
          type: string
          description: The name of the first document that is linked to the signature request.
        docLabel:
          type: string
          description: The label ( title ) of the first document that is linked to the signature request.
      additionalProperties: false
      required:
        - appEnv
        - appId
        - defaultSignatureMethod
        - signatureRequestType
        - status
    IgnisignSigner_Context:
      type: object
      properties:
        signerId:
          type: string
          description: Unique identifier for the signer
        externalId:
          type: string
          description: External identifier for the signer
        firstName:
          type: string
          description: First name of the signer
        lastName:
          type: string
          description: Last name of the signer
        email:
          type: string
          description: Email of the signer
        status:
          $ref: '#/components/schemas/IGNISIGN_SIGNER_STATUS'
        alreadyProvidedInputs:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_SIGNER_CREATION_INPUT_REF'
        isRecurrent:
          type: boolean
        signerProfileId:
          type: string
        sealClaims:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_SIGNER_CLAIM_REF'
        fromUserId:
          type: string
          description: The id of the user that have the same email as the signer and that is a user of the application or organization (into IgniSign)
        claims:
          type: array
          items:
            type: object
            properties:
              claimRef:
                $ref: '#/components/schemas/IGNISIGN_SIGNER_CLAIM_REF'
              status:
                $ref: '#/components/schemas/IGNISIGN_SIGNER_CLAIM_STATUS'
            required:
              - claimRef
              - status
            additionalProperties: false
        latestSignatureRequests:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignatureRequest_WithDocName'
      required:
        - claims
        - latestSignatureRequests
      additionalProperties: false
    IgnisignSigner_Summary:
      type: object
      properties:
        signerId:
          type: string
          description: The unique identifier of the signer.
        externalId:
          type: string
          description: The external identifier of the signer - A reference that you can set to match with your internal systems.
        firstName:
          type: string
          description: The first name of the signer.
        lastName:
          type: string
          description: The last name of the signer.
        email:
          type: string
          description: The email of the signer.
        status:
          $ref: '#/components/schemas/IGNISIGN_SIGNER_STATUS'
        alreadyProvidedInputs:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_SIGNER_CREATION_INPUT_REF'
        isRecurrent:
          type: boolean
          description: Indicates whether the signer is recurrent or not (one-off).
        signerProfileId:
          type: string
        sealClaims:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_SIGNER_CLAIM_REF'
        fromUserId:
          type: string
          description: The id of the user that have the same email as the signer and that is a user of the application or organization (into IgniSign)
      additionalProperties: false
    IgnisignSigner_UpdateRequestDto:
      type: object
      properties:
        signerId:
          type: string
          description: The unique identifier of the signer to be updated.
        signerProfileId:
          type: string
          description: |
            The unique identifier of the signer profile that the signer which the signer will be associated.
            the fields needed to initiate the signers will depends of the configuration of the signer profile. more info: https://ignisign.io/docs/core-concepts/Signers_and_Claims
        externalId:
          type: string
          description: |
            An external identifier that can be used to identify the signer.
            It's a reference that can be used to identify the signer in the external system.
            Ignisign does not use internally this field to identify the signer.
        firstName:
          type: string
          description: The first name of the signer.
        lastName:
          type: string
          description: The last name of the signer.
        email:
          type: string
          description: The email address of the signer.
        phoneNumber:
          type: string
          description: the phone number of the signer.
          format: E.164
        nationality:
          type: string
          description: The nationality of the signer.
          format: iso 3166-1 alpha-2
        birthDate:
          type: string
          description: the date of birth of the signer.
          format: date
        birthPlace:
          type: string
          description: the place of birth of the signer.
        birthCountry:
          type: string
          description: the country of birth of the signer.
          format: iso 3166-1 alpha-2
      additionalProperties: false
    IgnisignSigners_SearchResultDto:
      type: object
      properties:
        signers:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSigner_Summary'
        total:
          type: number
      required:
        - signers
        - total
      additionalProperties: false
    IgnisignInputNeedsDto:
      type: object
      properties:
        signerProfileId:
          type: string
        inputsNeeded:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_SIGNER_CREATION_INPUT_REF'
        optionalInputs:
          type: array
          items:
            $ref: '#/components/schemas/IGNISIGN_SIGNER_CREATION_INPUT_REF'
      required:
        - signerProfileId
        - inputsNeeded
        - optionalInputs
      additionalProperties: false
    IgnisignDocument_InitializationDto:
      type: object
      properties:
        signatureRequestId:
          type: string
          description: The unique identifier of the signature request associated with the document initialization.
        label:
          type: string
          description: A user-friendly label to identify the document.
        description:
          type: string
          description: A detailed, human-readable description of the document.
        externalId:
          type: string
          description: |
            An optional external identifier that can be used to reference the document from external systems. 
            It's a free text. Ignisign's system do not interprete it.
      required:
        - signatureRequestId
      additionalProperties: false
    IGNISIGN_DOCUMENT_STATUS:
      type: string
      enum:
        - CREATED
        - PROVIDED
        - ARCHIVED
      description: Represents the current status of a document in the Ignisign application.
    IgnisignDocument:
      type: object
      properties:
        _id:
          type: string
          description: A unique string identifier for the document.
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        externalId:
          type: string
          description: An optional external identifier that can be used to reference the document from external systems.
        documentNature:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_TYPE'
          description: The type of document
        fileName:
          type: string
          description: The name of the file associated with the document.
        fileSize:
          type: number
          description: The size of the file associated with the document, in bytes.
        label:
          type: string
          description: A user-friendly label to identify the document.
        description:
          type: string
          description: A detailed, human-readable description of the document.
        mimeType:
          type: string
          description: The MIME type of the file associated with the document, such as 'application/pdf' for PDF files.
        documentHash:
          type: string
          description: The hash of the document
        status:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_STATUS'
          description: The current status of the document.
        signatureRequestId:
          type: string
          description: The unique identifier of the signature request associated with the document.
        dataJsonContent:
          type: string
          description: The JSON content stringify of the document
        relatedDocumentId:
          type: string
          description: If the document have been generated from an other the unique identifier of the related document.
        relatedDocumentType:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_TYPE'
          description: If the document have been generated from an other the type of the related document.
        dataVisualizationAvailable:
          type: boolean
          description: If the document is a DATA_JSON, this field indicate if the data visualization is available.
        _createdAt:
          type: string
          format: date-time
          description: The date and time when the document was created, formatted as a string in ISO 8601 format.
      required:
        - appId
        - appEnv
        - documentNature
        - status
        - documentHash
        - signatureRequestId
      additionalProperties: false
    IgnisignDocument_UpdateDto:
      type: object
      properties:
        label:
          type: string
          description: A user-friendly label to identify the document.
        description:
          type: string
          description: A detailed, human-readable description of the document.
        externalId:
          type: string
          description: |
            An optional external identifier that can be used to reference the document from external systems. 
            It's a free text. Ignisign's system do not interprete it.
        templateDisplayerId:
          type: string
        templateDisplayerVersion:
          type: number
      additionalProperties: false
    IgnisignSignatureRequest_Statement:
      type: object
      properties:
        _id:
          type: string
          description: A unique string identifier for the signature request statement.
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
          description: The environment for the Ignisign application.
        signatureRequestId:
          type: string
          description: The unique identifier of the signature request associated with this statement.
        documentId:
          type: string
          description: If target value is 'DOCUMENT', this value is unique identifier of the document associated with this statement.
        labelMd:
          type: string
          description: The label of the statement represented in MD format.
      required:
        - appId
        - appEnv
        - signatureRequestId
        - target
        - labelHtml
      additionalProperties: false
    IgnisignDocument_Context:
      type: object
      properties:
        _id:
          type: string
          description: A unique string identifier for the document context.
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        externalId:
          type: string
          description: An optional external identifier that can be used to reference the document context from external systems.
        documentNature:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_TYPE'
        fileName:
          type: string
          description: The name of the file associated with the document.
        fileSize:
          type: number
          description: The size of the file associated with the document, typically in bytes.
        label:
          type: string
          description: A user-friendly label to identify the document.
        description:
          type: string
          description: A detailed, human-readable description of the document.
        mimeType:
          type: string
          description: The MIME type of the file associated with the document, such as 'application/pdf' for PDF files.
        documentHash:
          type: string
          description: The hash of the document.
        status:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_STATUS'
        documentRequestId:
          type: string
          description: The unique identifier of the document request associated with this document.
        signatureRequestId:
          type: string
          description: The unique identifier of the signature request associated with the document.
        _createdAt:
          type: string
          format: date-time
          description: The date and time when the document context was created, formatted as a string in ISO 8601 format.
        statements:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignatureRequest_Statement'
          description: The statements related to the document.
        signatureSummaries:
          type: array
          items:
            type: object
            properties:
              signatureId:
                type: string
                description: The unique identifier of the signature.
              signerId:
                type: string
                description: The unique identifier of the signer who provided the signature.
              date:
                type: string
                format: date-time
                description: The date and time when the signature was realized, formatted as a string in ISO 8601 format.
            required:
              - signatureId
              - signerId
              - date
            additionalProperties: false
          description: The signatures associated with the document context.
      required:
        - appEnv
        - appId
        - documentHash
        - documentNature
        - status
        - signatureRequestId
        - signatureSummaries
      additionalProperties: false
    IgnisignDocument_ContentCreation_DataJsonDto:
      type: object
      properties:
        jsonContent:
          type: object
          description: The JSON object that will be signed.
      required:
        - jsonContent
      additionalProperties: false
    IgnisignDocument_ContentCreation_PrivateContentDto:
      type: object
      properties:
        documentHash:
          description: The SHA-256 hash of the document that will be signed.
          type: string
      required:
        - documentHash
      additionalProperties: false
    IgnisignDocument_AuthenticityValidationContainer:
      type: object
      properties:
        documentId:
          type: string
          description: The id of the document to be checked
        authenticityValidated:
          type: boolean
          description: The result of the authenticity check
      required:
        - documentId
        - authenticityValidated
      additionalProperties: false
    IgnisignSignatureImages_Dto:
      type: object
      properties:
        documentId:
          type: string
          description: The id of the document for which the signature is being created.
        signatures:
          type: array
          items:
            type: object
            properties:
              signerId:
                type: string
                description: The id of the signer that has signed the document.
              imgB64:
                type: string
                description: The base64 encoded image of the signature.
            required:
              - signerId
              - imgB64
            additionalProperties: false
      required:
        - documentId
        - signatures
      additionalProperties: false
    IgnisignSignatureRequests_Paginate:
      type: object
      properties:
        signatureRequests:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignatureRequest_WithDocName'
          description: An array of signature requests, each represented by an IgnisignSignatureRequest_WithDocName object.
        paginationData:
          type: object
          properties:
            total:
              type: number
              description: The total number of signature requests.
            page:
              type: number
              description: The current page number in the pagination.
            nbEventsPerPage:
              type: number
              description: The number of signature request events per page.
          required:
            - total
            - page
            - nbEventsPerPage
          additionalProperties: false
          description: The pagination data for the list of signature requests.
      required:
        - signatureRequests
        - paginationData
      additionalProperties: false
    IgnisignSignatureRequest_IdContainer:
      type: object
      properties:
        signatureRequestId:
          type: string
      additionalProperties: false
    IgnisignSignatureRequests_StatusContainer:
      type: object
      properties:
        signatureRequests:
          type: array
          items:
            type: object
            properties:
              signatureRequestId:
                type: string
              status:
                $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_STATUS'
            required:
              - signatureRequestId
              - status
            additionalProperties: false
      required:
        - signatureRequests
      additionalProperties: false
    IgnisignSignerProfileSignatureMethod:
      type: object
      properties:
        signerProfileId:
          type: string
        signatureMethodRef:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_METHOD_REF'
      required:
        - signerProfileId
        - signatureMethodRef
      additionalProperties: false
    IgnisignSignatureRequest_UpdateDto:
      type: object
      properties:
        title:
          type: string
          description: The title of the signature request.
        description:
          type: string
          description: The description of the signature request.
        expirationDate:
          type: string
          format: date-time
          description: The expiration date if the `expirationDateIsActivated` parameter is true The action linked to this date is performed every 5 minutes, at 5, 10, 15... 55.
        expirationDateIsActivated:
          type: boolean
          description: Indicates whether the expiration date is activated.
        language:
          $ref: '#/components/schemas/IGNISIGN_LANGUAGES'
          description: Force the use of a specific language into the signature session.
        documentIds:
          type: array
          items:
            type: string
          description: The ids of the documents that are linked to the signature request.
        externalId:
          type: string
          description: a free field to store an identifier that can be used to link the signature request to an external system.
        diffusionMode:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_DIFFUSION_MODE'
        diffusionDate:
          type: string
          format: date-time
          description: the diffusion date if `diffusionMode`parameter is `SCHEDULED` The action linked to this date is performed every 5 minutes, at 5, 10, 15... 55.
        statements:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignatureRequest_Statement'
          description: The list of statements that have been added to the signature request.
        signerIds:
          type: array
          items:
            type: string
          description: The ids of the signers that have been invited to sign the signature request.
        extendedAuthSessionEnabled:
          type: boolean
          description: Indicates whether the extended authentication session is enabled. by default took the value of the app setting.
        signerIdsAsApprover:
          type: array
          items:
            type: string
          description: the ids of signers that will be approvers
        recipients:
          type: array
          items:
            type: string
          description: the emails of signers that will receive a copy of the signed document
        defaultSignatureMethod:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_METHOD_REF'
          description: The main signature method used for this signature request. This could be overriden by the signer profile.
        signerProfilesSignatureMethod:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignerProfileSignatureMethod'
          description: The signature method used for each signer profile. This is optional and could be used to override the default signature method for a specific signer profile.
        individualizeRequests:
          type: boolean
          description: Indicates whether the signature request has been created with the `individualizeRequests` option activated. If activated, each signer will receive a separate signature request. Approvers will be included in each signature requests.
      additionalProperties: false
    CustomPalette:
      type: object
      properties:
        primary:
          $ref: '#/components/schemas/IgnisignApplication_VariationColor'
        secondary:
          $ref: '#/components/schemas/IgnisignApplication_VariationColor'
      required:
        - primary
        - secondary
      additionalProperties: false
      description: |
        Custom color palette for the application applied in the end-user signature interface. The primary color is the main color of the application, and the secondary color is the secondary color of the application.
    IgnisignApplication_SignatureMetadata:
      type: object
      properties:
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        appName:
          type: string
        appType:
          $ref: '#/components/schemas/IGNISIGN_APPLICATION_TYPE'
        logoB64:
          type: string
        logoDarkB64:
          type: string
        colors:
          $ref: '#/components/schemas/CustomPalette'
        orgName:
          type: string
          description: The name of the organization associated with the signature session
      required:
        - appId
        - appEnv
        - appName
        - appType
      additionalProperties: false
    IGNISIGN_DOCUMENT_GENERATED_STATUS:
      type: string
      enum:
        - NOT_INITIALIZED
        - IN_PROGRESS
        - WAITING_IMAGES
        - ON_ERROR
        - CREATED
      description: |
        Represents the current status of a document generation process in the Ignisign application. The status can be one of the following: - NOT_INITIALIZED: The document generation process has not been initialized. - IN_PROGRESS: The document generation process is in progress. - WAITING_IMAGES: The document generation process is waiting for images to be uploaded. - ON_ERROR: The document generation process has encountered an error. - CREATED: The document generation process has been completed.
    IgnisignSignatureRequest_Context:
      type: object
      properties:
        _id:
          type: string
        _createdAt:
          type: string
          format: date-time
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        signatureRequestType:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_TYPE'
        title:
          type: string
          description: The title of the signature request.
        description:
          type: string
          description: The description of the signature request.
        language:
          $ref: '#/components/schemas/IGNISIGN_LANGUAGES'
          description: Force the use of a specific language into the signature session.
        status:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_STATUS'
        externalId:
          type: string
          description: a free field to store an identifier that can be used to link the signature request to an external system.
        creatorId:
          type: string
          description: The id of the user who created the signature request if this has been made into the IgniSign User interface.
        documentIds:
          type: array
          items:
            type: string
          description: The ids of the documents that are linked to the signature request.
        signerIds:
          type: array
          items:
            type: string
          description: The ids of the signers that have been invited to sign the signature request.
        signedBy:
          type: array
          items:
            type: string
          description: The ids of the signers that have already signed the signature request.
        expirationDate:
          type: string
          format: date-time
          description: The expiration date if the `expirationDateIsActivated` parameter is true The action linked to this date is performed every 5 minutes, at 5, 10, 15... 55.
        expirationDateIsActivated:
          type: boolean
          description: Indicates whether the expiration date is activated.
        diffusionMode:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_REQUEST_DIFFUSION_MODE'
        diffusionDate:
          type: string
          format: date-time
          description: the diffusion date if `diffusionMode`parameter is `SCHEDULED` The action linked to this date is performed every 5 minutes, at 5, 10, 15... 55.
        initialSignatureRequestId:
          type: string
          description: If the signature request has been created from a signature profile with the `individualizeRequests` option activated, this field will contain the identifier of the initial signature request which it has been generated.
        signerIdsAsApprover:
          type: array
          items:
            type: string
          description: the ids of signers that will be approvers
        recipients:
          type: array
          items:
            type: string
          description: the emails of signers that will receive a copy of the signed document
        appEnvSettingVersion:
          type: number
          description: The version of the application environment settings used to create this signature request.
        defaultSignatureMethod:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_METHOD_REF'
          description: The main signature method used for this signature request. This could be overriden by the signer profile.
        signerProfilesUsed:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignatureRequest_SignerProfile'
        individualizeRequests:
          type: boolean
          description: Indicates whether the signature request has been created with the `individualizeRequests` option activated. If activated, each signer will receive a separate signature request. Approvers will be included in each signature requests.
        m2mId:
          type: string
          description: Used only for M2M signature requests. The identifier of the M2M signature request. du not update directly this field.
        signers:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSigner_Summary'
          description: The list of signers' summaries that have been invited to sign the signature request.
        documents:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignDocument_Context'
          description: The list of documents that are linked to the signature request.
        statements:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignatureRequest_Statement'
          description: The list of statements that have been added to the signature request.
        applicationMetadata:
          $ref: '#/components/schemas/IgnisignApplication_SignatureMetadata'
        signatureProofsUrl:
          type: string
          description: The URL to retrieve the signature proofs associated with the signature request if activated.
        signatureProofStatus:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_GENERATED_STATUS'
          description: The current state of the signature proofs generation.
        signerProfiles:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignSignerProfile'
          description: a List of signer profiles linked to signers that have been invited to sign the signature request.
      required:
        - appEnv
        - appId
        - defaultSignatureMethod
        - documents
        - signatureRequestType
        - signers
        - status
      additionalProperties: false
    IgnisignSignatureRequest_Publish_ResponseDTO:
      type: object
      properties:
        signatureRequestId:
          type: string
        signersBySide:
          type: array
          items:
            type: object
            properties:
              signerId:
                type: string
              signerExternalId:
                type: string
            required:
              - signerId
              - signerExternalId
            additionalProperties: false
        signersEmbedded:
          type: array
          items:
            type: object
            properties:
              signerId:
                type: string
              signerExternalId:
                type: string
              token:
                type: string
            required:
              - signerId
              - signerExternalId
              - token
            additionalProperties: false
      additionalProperties: false
    IgnisignWebhook:
      type: object
      properties:
        _id:
          type: string
        url:
          type: string
        description:
          type: string
        isDisabled:
          type: boolean
        _createdAt:
          type: string
          format: date-time
      required:
        - url
      additionalProperties: false
    IgnisignWebhook_EndpointDto:
      type: object
      properties:
        url:
          type: string
          description: The URL of the webhook endpoint.
        description:
          type: string
          description: The description of the webhook endpoint.
      required:
        - url
      additionalProperties: false
    IGNISIGN_WEBHOOK_EVENT_FILTER:
      type: string
      enum:
        - ALL
        - SUCCESS
        - FAILED
    IGNISIGN_APPLICATION_ENV:
      type: string
      enum:
        - DEVELOPMENT
        - STAGING
        - PRODUCTION
      description: The execution environment of the application where request are executed.
    IGNISIGN_WEBHOOK_TOPICS:
      type: string
      enum:
        - ALL
        - APP
        - SIGNATURE
        - SIGNATURE_REQUEST
        - SIGNER
        - SIGNATURE_PROFILE
        - SIGNATURE_SESSION
        - SIGNATURE_PROOF
        - SIGNATURE_SIGNER_IMAGE
        - ID_PROOFING
        - SIGNER_AUTH
      description: Represents the topic related to a webhook event in the Ignisign application.
    IGNISIGN_WEBHOOK_ACTION_APPLICATION:
      type: string
      enum:
        - SETTINGS_UPDATED
        - MEMBERSHIP_UPDATED
        - ARCHIVED
    IGNISIGN_WEBHOOK_ACTION_SIGNATURE_IMAGE:
      type: string
      enum:
        - GENERATED
    IGNISIGN_WEBHOOK_ACTION_SIGNATURE_PROFILE:
      type: string
      enum:
        - CREATED
        - ARCHIVED
    IGNISIGN_WEBHOOK_ACTION_SIGNATURE_PROOF:
      type: string
      enum:
        - GENERATED
        - ADV_GENERATED
    IGNISIGN_WEBHOOK_ACTION_SIGNATURE_REQUEST:
      type: string
      enum:
        - INITIALIZED
        - UPDATED
        - READY
        - LAUNCHED
        - FAILED
        - CANCELLED
        - EXPIRED
        - COMPLETED
        - CHILDREN_GENERATED
        - APPROVER_STEP
    IGNISIGN_WEBHOOK_ACTION_SIGNATURE_SESSION:
      type: string
      enum:
        - INITIALIZED
    IGNISIGN_WEBHOOK_ACTION_SIGNATURE:
      type: string
      enum:
        - FINALIZED
        - FAILED
    IGNISIGN_WEBHOOK_ACTION_SIGNER:
      type: string
      enum:
        - CREATED
        - INPUTS_ADDED
    IgnisignWebhook_Action:
      anyOf:
        - $ref: '#/components/schemas/IGNISIGN_WEBHOOK_ACTION_APPLICATION'
        - $ref: '#/components/schemas/IGNISIGN_WEBHOOK_ACTION_SIGNATURE_IMAGE'
        - $ref: '#/components/schemas/IGNISIGN_WEBHOOK_ACTION_SIGNATURE_PROFILE'
        - $ref: '#/components/schemas/IGNISIGN_WEBHOOK_ACTION_SIGNATURE_PROOF'
        - $ref: '#/components/schemas/IGNISIGN_WEBHOOK_ACTION_SIGNATURE_REQUEST'
        - $ref: '#/components/schemas/IGNISIGN_WEBHOOK_ACTION_SIGNATURE_SESSION'
        - $ref: '#/components/schemas/IGNISIGN_WEBHOOK_ACTION_SIGNATURE'
        - $ref: '#/components/schemas/IGNISIGN_WEBHOOK_ACTION_SIGNER'
    IGNISIGN_WEBHOOK_MESSAGE_NATURE:
      type: string
      enum:
        - INFO
        - SUCCESS
        - WARNING
        - ERROR
    IGNISIGN_WEBHOOK_EVENT_STATUS:
      type: string
      enum:
        - SUCCESS
        - PENDING
        - FAILED
    IgnisignWebhookEvent:
      type: object
      properties:
        _id:
          type: string
          description: A unique string identifier for the webhook event. This is typically generated by the system and is read-only.
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/IGNISIGN_APPLICATION_ENV'
          description: A reference to the environment settings for the Ignisign application. This includes various configurations specific to the application's environment.
        webhookId:
          type: string
          description: The unique identifier of the webhook associated with this event.
        topic:
          $ref: '#/components/schemas/IGNISIGN_WEBHOOK_TOPICS'
          description: A reference to the topic related to this event.
        action:
          $ref: '#/components/schemas/IgnisignWebhook_Action'
          description: The action taken that initiated this event.
        msgNature:
          $ref: '#/components/schemas/IGNISIGN_WEBHOOK_MESSAGE_NATURE'
          description: A reference to the nature or type of the message associated with this event.
        content:
          type: object
          description: The content of the webhook event. The structure of this object can vary depending on the nature of the event.
        error:
          type: object
          description: An object containing information about the error that occurred, if any.
        response:
          type: object
          description: An object containing information about the HTTP response for this event.
          properties:
            status:
              type: number
              description: The HTTP status code of the response.
            statusText:
              type: string
              description: The text description of the HTTP status.
          additionalProperties: false
        status:
          $ref: '#/components/schemas/IGNISIGN_WEBHOOK_EVENT_STATUS'
          description: A reference to the current status of the event.
        _createdAt:
          type: string
          format: date-time
          description: The date and time when the webhook event was created, formatted as a string in ISO 8601 format.
      required:
        - appId
        - appEnv
        - webhookId
        - topic
        - action
        - msgNature
        - content
        - status
      additionalProperties: false
    IgnisignWebhookEvent_ListingDto:
      type: object
      properties:
        events:
          type: array
          items:
            $ref: '#/components/schemas/IgnisignWebhookEvent'
          description: An array of events data represented by the IgnisignWebhookEvent schema.
        searchData:
          type: object
          properties:
            total:
              type: number
              description: The total number of events available.
            page:
              type: number
              description: The current page number in the context of pagination.
            nbEventsPerPage:
              type: number
              description: The number of events displayed per page.
          required:
            - total
            - page
            - nbEventsPerPage
          additionalProperties: false
          description: An object containing pagination information for the events data.
      required:
        - events
        - searchData
      additionalProperties: false
    IgnisignSealM2M_DocumentHashRequestDto:
      type: object
      additionalProperties: false
      properties:
        documentType:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_TYPE'
        documentHash:
          type: string
        label:
          type: string
        mimeType:
          type: string
      required:
        - documentHash
        - documentType
    IgnisignSealM2M_DocumentContentRequestDto:
      type: object
      properties:
        documentType:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_TYPE'
        documentHash:
          type: string
        label:
          type: string
        mimeType:
          type: string
        contentB64:
          type: string
      required:
        - contentB64
        - documentHash
        - documentType
      additionalProperties: false
    IgnisignSealM2M_DocumentXMLRequestDto:
      type: object
      properties:
        documentType:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_TYPE'
        documentHash:
          type: string
        label:
          type: string
        mimeType:
          type: string
        xmlContent:
          type: string
      required:
        - documentHash
        - documentType
        - xmlContent
      additionalProperties: false
    IgnisignSealM2M_DocumentJSONRequestDto:
      type: object
      properties:
        documentType:
          $ref: '#/components/schemas/IGNISIGN_DOCUMENT_TYPE'
        documentHash:
          type: string
        label:
          type: string
        mimeType:
          type: string
        jsonContent: {}
      required:
        - documentHash
        - documentType
        - jsonContent
      additionalProperties: false
    IgnisignSealM2M_RequestDto:
      type: object
      properties:
        m2mId:
          type: string
        title:
          type: string
        document:
          anyOf:
            - $ref: '#/components/schemas/IgnisignSealM2M_DocumentHashRequestDto'
            - $ref: '#/components/schemas/IgnisignSealM2M_DocumentContentRequestDto'
            - $ref: '#/components/schemas/IgnisignSealM2M_DocumentXMLRequestDto'
            - $ref: '#/components/schemas/IgnisignSealM2M_DocumentJSONRequestDto'
        externalId:
          type: string
        documentHashSignedByM2MPrivateKey:
          type: string
      required:
        - m2mId
        - document
        - documentHashSignedByM2MPrivateKey
      additionalProperties: false
    IGNISIGN_SIGNATURE_PROOF_TYPE:
      type: string
      enum:
        - PDF_WITH_SIGNATURES
        - C2PA
        - ADVANCED_LEGAL_KIT
        - SIGNED_DATA
    IgnisignSealM2M_ResponseDto:
      type: object
      properties:
        signatureRequestId:
          type: string
        documentId:
          type: string
        documentHash:
          type: string
        proofBase64:
          type: string
        proofType:
          $ref: '#/components/schemas/IGNISIGN_SIGNATURE_PROOF_TYPE'
      required:
        - signatureRequestId
        - documentId
        - documentHash
      additionalProperties: false
    IgnisignBareSignature_ProofAccessTokenRequest:
      type: object
      properties:
        client_id:
          type: string
        client_secret:
          type: string
        code_verifier:
          type: string
        redirect_uri:
          type: string
        grant_type:
          type: string
        code:
          type: string
      required:
        - client_id
        - client_secret
        - code_verifier
        - redirect_uri
        - grant_type
        - code
      additionalProperties: false
    IgnisignBareSignature_ProofAccessToken:
      type: object
      properties:
        access_token:
          type: string
        token_type:
          type: string
        expires_in:
          type: number
        scope:
          type: string
      required:
        - access_token
        - token_type
        - expires_in
        - scope
      additionalProperties: false
    IgnisignBareSignature_Proof:
      type: object
      properties:
        appId:
          type: string
        appEnv:
          $ref: '#/components/schemas/IGNISIGN_APPLICATION_ENV'
        signatureRequestId:
          type: string
        externalId:
          type: string
        signerId:
          type: string
        proofs:
          type: array
          items:
            type: object
            properties:
              documentId:
                type: string
              type:
                $ref: '#/components/schemas/IGNISIGN_SIGNATURE_PROOF_TYPE'
              documentHash:
                type: string
              proofB64:
                type: string
              timestampSequence:
                type: string
              signingTime:
                type: string
                format: date-time
            required:
              - documentId
              - type
              - documentHash
              - proofB64
            additionalProperties: false
        signerInformation:
          type: object
          properties:
            fullName:
              type: string
            lastName:
              type: string
            firstName:
              type: string
          required:
            - fullName
          additionalProperties: false
      required:
        - appId
        - appEnv
        - signatureRequestId
        - signerId
        - proofs
        - signerInformation
      additionalProperties: false
    IGNISIGN_EIDAS_LEVEL:
      type: string
      enum:
        - SES
        - AES
        - QES
      description: |
        The eIDAS level of the signature. SES: Simple Electronic Signature AES: Advanced Electronic Signature QES: Qualified Electronic Signature
    IgnisignApplication_BareSignatureEnvSettings:
      type: object
      properties:
        appId:
          $ref: '#/components/schemas/appId'
        appEnv:
          $ref: '#/components/schemas/appEnv'
        redirectUris:
          type: array
          items:
            type: string
        authorizedOrigins:
          type: array
          items:
            type: string
        eidasLevel:
          $ref: '#/components/schemas/IGNISIGN_EIDAS_LEVEL'
      required:
        - appId
        - appEnv
        - redirectUris
        - authorizedOrigins
        - eidasLevel
      additionalProperties: false
    IgnisignLogCapsule_RequestDto:
      type: object
      properties:
        hashSha256_b64:
          type: string
      required:
        - hashSha256_b64
      additionalProperties: false
    IgnisignLogCapsule_ResponseDto:
      type: object
      properties:
        hashSha256_b64:
          type: string
        timestamp_b64:
          type: string
      required:
        - hashSha256_b64
        - timestamp_b64
      additionalProperties: false
  responses:
    '400':
      description: Bad request error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Ignisign_Api_Error_Response'
    '401':
      description: Unauthorized error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Ignisign_Api_Error_Response'
    '403':
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Ignisign_Api_Error_Response'
    '404':
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Ignisign_Api_Error_Response'
    '408':
      description: Timeout
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Ignisign_Api_Error_Response'
    '500':
      description: Internal Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Ignisign_Api_Error_Response'
  parameters:
    appId_path:
      name: appId
      description: The application identifier which is used to identify the application used.
      in: path
      required: true
      schema:
        type: string
      example: appId_XXXX-XXXX-XXXX-XXXX-XXXX
    appEnv_path:
      name: appEnv
      in: path
      description: The execution environment of the application where request are executed.
      required: true
      schema:
        type: string
        enum:
          - DEVELOPMENT
          - STAGING
          - PRODUCTION
    signerProfileId_path:
      name: signerProfileId
      in: path
      description: The unique identifier of the related signer profile.
      required: true
      schema:
        type: string
    userInvitationId_path:
      name: userInvitationId
      in: path
      description: The unique identifier of the user invitation
      required: true
      schema:
        type: string
    signerId_path:
      name: signerId
      in: path
      description: The unique identifier of the signer.
      required: true
      schema:
        type: string
    documentId_path:
      name: documentId
      in: path
      description: The unique identifier of the document.
      required: true
      schema:
        type: string
    signatureType_High_Level_path:
      name: signatureType
      in: path
      description: The type of the signature. must be a high level type.
      required: true
      schema:
        type: string
        enum:
          - PDF_WITH_SIGNATURES
          - ADVANCED_LEGAL_KIT
    signatureType_Low_Level_path:
      name: signatureType
      in: path
      description: The type of the signature. must be a low level type.
      required: true
      schema:
        type: string
        enum:
          - XADES
          - CADES
          - PKCS7
          - JWS
    signatureRequestId_path:
      name: signatureRequestId
      in: path
      description: The unique identifier of the signature request to be closed.
      required: true
      schema:
        type: string
    webhookId_path:
      name: webhookId
      in: path
      description: The unique identifier of the webhook.
      required: true
      schema:
        type: string
    m2mId_path:
      name: m2mId
      in: path
      description: The unique identifier of the M2M to use.
      required: true
      schema:
        type: string
