{
  "openapi": "3.0.0",
  "info": {
    "title": "LoopBack Application",
    "version": "1.0.0"
  },
  "paths": {
    "/certificate-requests/count": {
      "get": {
        "x-controller-name": "CertificateRequestController",
        "x-operation-name": "count",
        "tags": [
          "CertificateRequestController"
        ],
        "responses": {
          "200": {
            "description": "CertificateRequest model count",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "loopback.Count",
                  "properties": {
                    "count": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CertificateRequest.WhereFilter",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "CertificateRequestController.count"
      }
    },
    "/certificate-requests/{id}/agreement": {
      "get": {
        "x-controller-name": "CertificateRequestAgreementController",
        "x-operation-name": "getAgreement",
        "tags": [
          "CertificateRequestAgreementController"
        ],
        "responses": {
          "200": {
            "description": "Agreement belonging to CertificateRequest",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Agreement"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "operationId": "CertificateRequestAgreementController.getAgreement"
      }
    },
    "/certificate-requests/{id}": {
      "put": {
        "x-controller-name": "CertificateRequestController",
        "x-operation-name": "replaceById",
        "tags": [
          "CertificateRequestController"
        ],
        "responses": {
          "204": {
            "description": "CertificateRequest PUT success"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CertificateRequest"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CertificateRequestController.replaceById"
      },
      "patch": {
        "x-controller-name": "CertificateRequestController",
        "x-operation-name": "updateById",
        "tags": [
          "CertificateRequestController"
        ],
        "responses": {
          "204": {
            "description": "CertificateRequest PATCH success"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CertificateRequestPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "CertificateRequestController.updateById"
      },
      "get": {
        "x-controller-name": "CertificateRequestController",
        "x-operation-name": "findById",
        "tags": [
          "CertificateRequestController"
        ],
        "responses": {
          "200": {
            "description": "CertificateRequest model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CertificateRequestWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CertificateRequest.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "fields": {
                      "title": "CertificateRequest.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "certificateProfile": {
                          "type": "boolean"
                        },
                        "country": {
                          "type": "boolean"
                        },
                        "location": {
                          "type": "boolean"
                        },
                        "organization": {
                          "type": "boolean"
                        },
                        "organizationUnit": {
                          "type": "boolean"
                        },
                        "personalName": {
                          "type": "boolean"
                        },
                        "stateOrProvince": {
                          "type": "boolean"
                        },
                        "title": {
                          "type": "boolean"
                        },
                        "createdAt": {
                          "type": "boolean"
                        },
                        "updatedAt": {
                          "type": "boolean"
                        },
                        "certEmail": {
                          "type": "boolean"
                        },
                        "certTelephoneNumber": {
                          "type": "boolean"
                        },
                        "ownerEmail": {
                          "type": "boolean"
                        },
                        "ownerMobileNumber": {
                          "type": "boolean"
                        },
                        "authenticationEmail": {
                          "type": "boolean"
                        },
                        "authenticationMobileNumber": {
                          "type": "boolean"
                        },
                        "applicationForm": {
                          "type": "boolean"
                        },
                        "authorizeLetter": {
                          "type": "boolean"
                        },
                        "businessLicense": {
                          "type": "boolean"
                        },
                        "photoActivityDeclaration": {
                          "type": "boolean"
                        },
                        "photoAuthorizeDelegate": {
                          "type": "boolean"
                        },
                        "photoIdCard": {
                          "type": "boolean"
                        },
                        "requestForm": {
                          "type": "boolean"
                        },
                        "personalIdType": {
                          "type": "boolean"
                        },
                        "personalIdValue": {
                          "type": "boolean"
                        },
                        "organizationIdType": {
                          "type": "boolean"
                        },
                        "organizationIdValue": {
                          "type": "boolean"
                        },
                        "userId": {
                          "type": "boolean"
                        },
                        "status": {
                          "type": "boolean"
                        },
                        "agreementId": {
                          "type": "boolean"
                        },
                        "reason": {
                          "type": "boolean"
                        },
                        "passCodeNotificationMethod": {
                          "type": "boolean"
                        },
                        "isTest": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "include": {
                      "title": "CertificateRequest.IncludeFilter",
                      "type": "array",
                      "items": {
                        "title": "CertificateRequest.IncludeFilter.Items",
                        "type": "object",
                        "properties": {
                          "relation": {
                            "type": "string"
                          },
                          "scope": {
                            "properties": {
                              "offset": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "limit": {
                                "type": "integer",
                                "minimum": 1,
                                "example": 100
                              },
                              "skip": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "order": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "where": {
                                "type": "object",
                                "additionalProperties": true
                              },
                              "fields": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": true
                              }
                            },
                            "additionalProperties": false,
                            "title": "CertificateRequest.ScopeFilter"
                          }
                        }
                      }
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "CertificateRequestController.findById"
      },
      "delete": {
        "x-controller-name": "CertificateRequestController",
        "x-operation-name": "deleteById",
        "tags": [
          "CertificateRequestController"
        ],
        "responses": {
          "204": {
            "description": "CertificateRequest DELETE success"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "operationId": "CertificateRequestController.deleteById"
      }
    },
    "/certificate-requests": {
      "post": {
        "x-controller-name": "CertificateRequestController",
        "x-operation-name": "create",
        "tags": [
          "CertificateRequestController"
        ],
        "responses": {
          "200": {
            "description": "CertificateRequest model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CertificateRequest"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewCertificateRequest"
              }
            }
          }
        },
        "operationId": "CertificateRequestController.create"
      },
      "patch": {
        "x-controller-name": "CertificateRequestController",
        "x-operation-name": "updateAll",
        "tags": [
          "CertificateRequestController"
        ],
        "responses": {
          "200": {
            "description": "CertificateRequest PATCH success count",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "loopback.Count",
                  "properties": {
                    "count": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "where",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CertificateRequest.WhereFilter",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CertificateRequestPartial"
              }
            }
          }
        },
        "operationId": "CertificateRequestController.updateAll"
      },
      "get": {
        "x-controller-name": "CertificateRequestController",
        "x-operation-name": "find",
        "tags": [
          "CertificateRequestController"
        ],
        "responses": {
          "200": {
            "description": "Array of CertificateRequest model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CertificateRequestWithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "CertificateRequest.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "where": {
                      "title": "CertificateRequest.WhereFilter",
                      "type": "object",
                      "additionalProperties": true
                    },
                    "fields": {
                      "title": "CertificateRequest.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "certificateProfile": {
                          "type": "boolean"
                        },
                        "country": {
                          "type": "boolean"
                        },
                        "location": {
                          "type": "boolean"
                        },
                        "organization": {
                          "type": "boolean"
                        },
                        "organizationUnit": {
                          "type": "boolean"
                        },
                        "personalName": {
                          "type": "boolean"
                        },
                        "stateOrProvince": {
                          "type": "boolean"
                        },
                        "title": {
                          "type": "boolean"
                        },
                        "createdAt": {
                          "type": "boolean"
                        },
                        "updatedAt": {
                          "type": "boolean"
                        },
                        "certEmail": {
                          "type": "boolean"
                        },
                        "certTelephoneNumber": {
                          "type": "boolean"
                        },
                        "ownerEmail": {
                          "type": "boolean"
                        },
                        "ownerMobileNumber": {
                          "type": "boolean"
                        },
                        "authenticationEmail": {
                          "type": "boolean"
                        },
                        "authenticationMobileNumber": {
                          "type": "boolean"
                        },
                        "applicationForm": {
                          "type": "boolean"
                        },
                        "authorizeLetter": {
                          "type": "boolean"
                        },
                        "businessLicense": {
                          "type": "boolean"
                        },
                        "photoActivityDeclaration": {
                          "type": "boolean"
                        },
                        "photoAuthorizeDelegate": {
                          "type": "boolean"
                        },
                        "photoIdCard": {
                          "type": "boolean"
                        },
                        "requestForm": {
                          "type": "boolean"
                        },
                        "personalIdType": {
                          "type": "boolean"
                        },
                        "personalIdValue": {
                          "type": "boolean"
                        },
                        "organizationIdType": {
                          "type": "boolean"
                        },
                        "organizationIdValue": {
                          "type": "boolean"
                        },
                        "userId": {
                          "type": "boolean"
                        },
                        "status": {
                          "type": "boolean"
                        },
                        "agreementId": {
                          "type": "boolean"
                        },
                        "reason": {
                          "type": "boolean"
                        },
                        "passCodeNotificationMethod": {
                          "type": "boolean"
                        },
                        "isTest": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "include": {
                      "title": "CertificateRequest.IncludeFilter",
                      "type": "array",
                      "items": {
                        "title": "CertificateRequest.IncludeFilter.Items",
                        "type": "object",
                        "properties": {
                          "relation": {
                            "type": "string"
                          },
                          "scope": {
                            "properties": {
                              "offset": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "limit": {
                                "type": "integer",
                                "minimum": 1,
                                "example": 100
                              },
                              "skip": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "order": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "where": {
                                "type": "object",
                                "additionalProperties": true
                              },
                              "fields": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": true
                              }
                            },
                            "additionalProperties": false,
                            "title": "CertificateRequest.ScopeFilter"
                          }
                        }
                      }
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "CertificateRequestController.find"
      }
    },
    "/certificates/approve": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "approve",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method will approve the cerficate prepare for enroll (create/renew) a certificate on Remote Signing service.    Normally RelyingParty will allow to approve this request once checked all the detail information that customer owned",
        "responses": {
          "200": {
            "description": "Approve",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.approve"
      }
    },
    "/certificates/change": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "change",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method helps to change the certificate information for a specific agreementUUID.     You can re-provide the information in AgreementDetails object.     The new certificate will be generated for that agreementUUID with the expiration date is the same as the old certificate.     To be noticed that, you CANNOT change: personalID, passportID, taxID and budgetID, because these information used to be representative of an agreementUUID.",
        "responses": {
          "200": {
            "description": "Cập nhật thông tin chứng thư số",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangeCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.change"
      }
    },
    "/certificates/change-pin": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "changePin",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method will change the current Passcode for authorize as Passcode method on the Remote Signing service",
        "responses": {
          "200": {
            "description": "Cập nhật thông tin chứng thư số",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePinCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.changePin"
      }
    },
    "/certificates/disable": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "disable",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This function temporarily disable all sign/verify actions related to a agreementUUID.",
        "responses": {
          "200": {
            "description": "Disable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DisableCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.disable"
      }
    },
    "/certificates/enable": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "enable",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This function enable the sign/verify actions related to a agreementUUID after being disabled.",
        "responses": {
          "200": {
            "description": "Enable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnableCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.enable"
      }
    },
    "/certificates/forget-pin": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "forgetPin",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method will reset the current Passcode for authorize as Passcode method on the Remote Signing service ,     and the new Passcode will be created in the Remote Signing service and this parameter will be sent to customer based on the registration email",
        "responses": {
          "200": {
            "description": "Forget Pin",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ForgetPasscodeCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.forgetPin"
      }
    },
    "/certificates/get-detail": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "getDetail",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method will get certificate detail for corresponding agreement in Remote Signing service",
        "responses": {
          "200": {
            "description": "Get Detail",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GetDetailCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.getDetail"
      }
    },
    "/certificates/register": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "register",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method will create a new account on Remote Signing service and request to CA for preparing digital certificate",
        "responses": {
          "200": {
            "description": "Đăng ký chứng thư số",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.register"
      }
    },
    "/certificates/renew": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "renew",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method will extend the certificate expiration for an agreementUUID.\n    You CANNOT change the certificate information with this method, the old information will be used for new certificate.\n    But you can change the certificate profile.",
        "responses": {
          "200": {
            "description": "Renew",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RenewCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.renew"
      }
    },
    "/certificates/revoke": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "revoke",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method will destroy an existing account on Remote Signing service and request to CA for preparing digital certificate revocation.",
        "responses": {
          "200": {
            "description": "Revoke",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RevokeCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.revoke"
      }
    },
    "/certificates/updateAuthorizationInfo": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "updateAuthorizationInfo",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This function update authorization info for a agreementUUID.",
        "responses": {
          "200": {
            "description": "UpdateAuthorizationInfo",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of update authorization info",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAuthorizationInfoRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.updateAuthorizationInfo"
      }
    },
    "/certificates/{id}/transactions": {
      "get": {
        "x-controller-name": "CertificateTransactionController",
        "x-operation-name": "find",
        "tags": [
          "CertificateTransactionController"
        ],
        "responses": {
          "200": {
            "description": "Array of Certificate has many Transaction",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Transaction"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        ],
        "operationId": "CertificateTransactionController.find"
      }
    },
    "/certificates/{id}": {
      "get": {
        "x-controller-name": "CertificateController",
        "x-operation-name": "findById",
        "tags": [
          "CertificateController"
        ],
        "responses": {
          "200": {
            "description": "Certificates model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CertificateWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Certificate.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "fields": {
                      "title": "Certificate.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "replyingPartyId": {
                          "type": "boolean"
                        },
                        "agrementUuid": {
                          "type": "boolean"
                        },
                        "thumbprint": {
                          "type": "boolean"
                        },
                        "rsspBillCode": {
                          "type": "boolean"
                        },
                        "rpBillCode": {
                          "type": "boolean"
                        },
                        "transactionId": {
                          "type": "boolean"
                        },
                        "certificateProfile": {
                          "type": "boolean"
                        },
                        "country": {
                          "type": "boolean"
                        },
                        "location": {
                          "type": "boolean"
                        },
                        "organization": {
                          "type": "boolean"
                        },
                        "organizationUnit": {
                          "type": "boolean"
                        },
                        "personalName": {
                          "type": "boolean"
                        },
                        "csr": {
                          "type": "boolean"
                        },
                        "certificateDn": {
                          "type": "boolean"
                        },
                        "serialNumber": {
                          "type": "boolean"
                        },
                        "validFrom": {
                          "type": "boolean"
                        },
                        "validTo": {
                          "type": "boolean"
                        },
                        "issuerDn": {
                          "type": "boolean"
                        },
                        "certificate": {
                          "type": "boolean"
                        },
                        "sharedMode": {
                          "type": "boolean"
                        },
                        "authModeSupported": {
                          "type": "boolean"
                        },
                        "ownerId": {
                          "type": "boolean"
                        },
                        "stateId": {
                          "type": "boolean"
                        },
                        "cloudCertificateId": {
                          "type": "boolean"
                        },
                        "agreementId": {
                          "type": "boolean"
                        },
                        "stateOrProvince": {
                          "type": "boolean"
                        },
                        "telephoneNumber": {
                          "type": "boolean"
                        },
                        "title": {
                          "type": "boolean"
                        },
                        "createAt": {
                          "type": "boolean"
                        },
                        "changedDate": {
                          "type": "boolean"
                        },
                        "revokedDate": {
                          "type": "boolean"
                        },
                        "renewedDate": {
                          "type": "boolean"
                        },
                        "userRequestId": {
                          "type": "boolean"
                        },
                        "acceptedApps": {
                          "type": "boolean"
                        },
                        "passCodeNotificationMethod": {
                          "type": "boolean"
                        },
                        "isCertImported": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "include": {
                      "title": "Certificate.IncludeFilter",
                      "type": "array",
                      "items": {
                        "title": "Certificate.IncludeFilter.Items",
                        "type": "object",
                        "properties": {
                          "relation": {
                            "type": "string"
                          },
                          "scope": {
                            "properties": {
                              "offset": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "limit": {
                                "type": "integer",
                                "minimum": 1,
                                "example": 100
                              },
                              "skip": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "order": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "where": {
                                "type": "object",
                                "additionalProperties": true
                              },
                              "fields": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": true
                              }
                            },
                            "additionalProperties": false,
                            "title": "Certificate.ScopeFilter"
                          }
                        }
                      }
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "CertificateController.findById"
      }
    },
    "/certificates": {
      "get": {
        "x-controller-name": "CertificateController",
        "x-operation-name": "getList",
        "tags": [
          "CertificateController"
        ],
        "responses": {
          "200": {
            "description": "Array of Certificates model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CertificateExcluding_id_WithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Certificate.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "where": {
                      "title": "Certificate.WhereFilter",
                      "type": "object",
                      "additionalProperties": true
                    },
                    "fields": {
                      "title": "Certificate.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "replyingPartyId": {
                          "type": "boolean"
                        },
                        "agrementUuid": {
                          "type": "boolean"
                        },
                        "thumbprint": {
                          "type": "boolean"
                        },
                        "rsspBillCode": {
                          "type": "boolean"
                        },
                        "rpBillCode": {
                          "type": "boolean"
                        },
                        "transactionId": {
                          "type": "boolean"
                        },
                        "certificateProfile": {
                          "type": "boolean"
                        },
                        "country": {
                          "type": "boolean"
                        },
                        "location": {
                          "type": "boolean"
                        },
                        "organization": {
                          "type": "boolean"
                        },
                        "organizationUnit": {
                          "type": "boolean"
                        },
                        "personalName": {
                          "type": "boolean"
                        },
                        "csr": {
                          "type": "boolean"
                        },
                        "certificateDn": {
                          "type": "boolean"
                        },
                        "serialNumber": {
                          "type": "boolean"
                        },
                        "validFrom": {
                          "type": "boolean"
                        },
                        "validTo": {
                          "type": "boolean"
                        },
                        "issuerDn": {
                          "type": "boolean"
                        },
                        "certificate": {
                          "type": "boolean"
                        },
                        "sharedMode": {
                          "type": "boolean"
                        },
                        "authModeSupported": {
                          "type": "boolean"
                        },
                        "ownerId": {
                          "type": "boolean"
                        },
                        "stateId": {
                          "type": "boolean"
                        },
                        "cloudCertificateId": {
                          "type": "boolean"
                        },
                        "agreementId": {
                          "type": "boolean"
                        },
                        "stateOrProvince": {
                          "type": "boolean"
                        },
                        "telephoneNumber": {
                          "type": "boolean"
                        },
                        "title": {
                          "type": "boolean"
                        },
                        "createAt": {
                          "type": "boolean"
                        },
                        "changedDate": {
                          "type": "boolean"
                        },
                        "revokedDate": {
                          "type": "boolean"
                        },
                        "renewedDate": {
                          "type": "boolean"
                        },
                        "userRequestId": {
                          "type": "boolean"
                        },
                        "acceptedApps": {
                          "type": "boolean"
                        },
                        "passCodeNotificationMethod": {
                          "type": "boolean"
                        },
                        "isCertImported": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "include": {
                      "title": "Certificate.IncludeFilter",
                      "type": "array",
                      "items": {
                        "title": "Certificate.IncludeFilter.Items",
                        "type": "object",
                        "properties": {
                          "relation": {
                            "type": "string"
                          },
                          "scope": {
                            "properties": {
                              "offset": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "limit": {
                                "type": "integer",
                                "minimum": 1,
                                "example": 100
                              },
                              "skip": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "order": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "where": {
                                "type": "object",
                                "additionalProperties": true
                              },
                              "fields": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": true
                              }
                            },
                            "additionalProperties": false,
                            "title": "Certificate.ScopeFilter"
                          }
                        }
                      }
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "CertificateController.getList"
      }
    },
    "/clients/login": {
      "post": {
        "x-controller-name": "Client endpoint",
        "x-operation-name": "login",
        "tags": [
          "Client endpoint"
        ],
        "description": "Login with api username and api password to get token",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "token": {
                      "type": "string",
                      "description": "Token with lifetime is 28800 seconds"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of login function",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Credentials"
              }
            }
          }
        },
        "operationId": "Client endpoint.login"
      }
    },
    "/rps/{id}": {
      "patch": {
        "x-controller-name": "User endpoint",
        "x-operation-name": "updateById",
        "tags": [
          "User endpoint"
        ],
        "description": "Update Replying Party",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "token": {
                      "type": "string",
                      "description": "Token with lifetime is 28800 seconds"
                    }
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "requestBody": {
          "description": "The input of login function",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReplyingPartyPartial"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "User endpoint.updateById"
      },
      "get": {
        "x-controller-name": "ReplyingPartyController",
        "x-operation-name": "findById",
        "tags": [
          "ReplyingPartyController"
        ],
        "responses": {
          "200": {
            "description": "ReplyingPartys model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ReplyingPartyWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ReplyingParty.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "fields": {
                      "title": "ReplyingParty.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "username": {
                          "type": "boolean"
                        },
                        "password": {
                          "type": "boolean"
                        },
                        "code": {
                          "type": "boolean"
                        },
                        "rpUsername": {
                          "type": "boolean"
                        },
                        "rpPassword": {
                          "type": "boolean"
                        },
                        "rpPrivateKey": {
                          "type": "boolean"
                        },
                        "rpPasscode": {
                          "type": "boolean"
                        },
                        "rpSignature": {
                          "type": "boolean"
                        },
                        "accessToken": {
                          "type": "boolean"
                        },
                        "refreshToken": {
                          "type": "boolean"
                        },
                        "userId": {
                          "type": "boolean"
                        },
                        "createdAt": {
                          "type": "boolean"
                        },
                        "updatedAt": {
                          "type": "boolean"
                        },
                        "rpP12File": {
                          "type": "boolean"
                        },
                        "active": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "include": {
                      "title": "ReplyingParty.IncludeFilter",
                      "type": "array",
                      "items": {
                        "title": "ReplyingParty.IncludeFilter.Items",
                        "type": "object",
                        "properties": {
                          "relation": {
                            "type": "string"
                          },
                          "scope": {
                            "properties": {
                              "offset": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "limit": {
                                "type": "integer",
                                "minimum": 1,
                                "example": 100
                              },
                              "skip": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "order": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "where": {
                                "type": "object",
                                "additionalProperties": true
                              },
                              "fields": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": true
                              }
                            },
                            "additionalProperties": false,
                            "title": "ReplyingParty.ScopeFilter"
                          }
                        }
                      }
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "ReplyingPartyController.findById"
      }
    },
    "/rps": {
      "post": {
        "x-controller-name": "RP endpoint",
        "x-operation-name": "create",
        "tags": [
          "RP endpoint"
        ],
        "description": "Create RP",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "token": {
                      "type": "string",
                      "description": "Token with lifetime is 28800 seconds"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of create function",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RPRequestExcluding_accessToken-refreshToken-id-createdAt_"
              }
            }
          }
        },
        "operationId": "RP endpoint.create"
      },
      "get": {
        "x-controller-name": "ReplyingPartyController",
        "x-operation-name": "getList",
        "tags": [
          "ReplyingPartyController"
        ],
        "responses": {
          "200": {
            "description": "Array of ReplyingPartys model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ReplyingPartyExcluding_id_WithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "ReplyingParty.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "where": {
                      "title": "ReplyingParty.WhereFilter",
                      "type": "object",
                      "additionalProperties": true
                    },
                    "fields": {
                      "title": "ReplyingParty.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "username": {
                          "type": "boolean"
                        },
                        "password": {
                          "type": "boolean"
                        },
                        "code": {
                          "type": "boolean"
                        },
                        "rpUsername": {
                          "type": "boolean"
                        },
                        "rpPassword": {
                          "type": "boolean"
                        },
                        "rpPrivateKey": {
                          "type": "boolean"
                        },
                        "rpPasscode": {
                          "type": "boolean"
                        },
                        "rpSignature": {
                          "type": "boolean"
                        },
                        "accessToken": {
                          "type": "boolean"
                        },
                        "refreshToken": {
                          "type": "boolean"
                        },
                        "userId": {
                          "type": "boolean"
                        },
                        "createdAt": {
                          "type": "boolean"
                        },
                        "updatedAt": {
                          "type": "boolean"
                        },
                        "rpP12File": {
                          "type": "boolean"
                        },
                        "active": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "include": {
                      "title": "ReplyingParty.IncludeFilter",
                      "type": "array",
                      "items": {
                        "title": "ReplyingParty.IncludeFilter.Items",
                        "type": "object",
                        "properties": {
                          "relation": {
                            "type": "string"
                          },
                          "scope": {
                            "properties": {
                              "offset": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "limit": {
                                "type": "integer",
                                "minimum": 1,
                                "example": 100
                              },
                              "skip": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "order": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "where": {
                                "type": "object",
                                "additionalProperties": true
                              },
                              "fields": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": true
                              }
                            },
                            "additionalProperties": false,
                            "title": "ReplyingParty.ScopeFilter"
                          }
                        }
                      }
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "ReplyingPartyController.getList"
      }
    },
    "/signing/download/document/{docId}": {
      "get": {
        "x-controller-name": "Signing endpoint",
        "x-operation-name": "downloadDocument",
        "tags": [
          "signing"
        ],
        "description": "Download signed files",
        "responses": {
          "200": {
            "description": "Download signed files",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "docId",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "operationId": "Signing endpoint.downloadDocument"
      }
    },
    "/signing/download/file/{billCode}": {
      "get": {
        "x-controller-name": "Signing endpoint",
        "x-operation-name": "downloadFile",
        "tags": [
          "signing"
        ],
        "description": "Download signed files",
        "responses": {
          "200": {
            "description": "Download signed files",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "billCode",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "operationId": "Signing endpoint.downloadFile"
      }
    },
    "/signing/file/authorize": {
      "post": {
        "x-controller-name": "Signing endpoint",
        "x-operation-name": "authorizeFile",
        "tags": [
          "signing"
        ],
        "description": "This method is known as “Sign Response”, that means client responds the Authorize Code to Remote Signing.     Remote Signing will verify the received Authorize Code and response signed document (contract) whether it’s correct.",
        "responses": {
          "200": {
            "description": "Xác thực ký số",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AuthorizeSigningRequest"
              }
            }
          }
        },
        "operationId": "Signing endpoint.authorizeFile"
      }
    },
    "/signing/file/multiple": {
      "post": {
        "x-controller-name": "Signing endpoint",
        "x-operation-name": "signFileMultiple",
        "tags": [
          "signing"
        ],
        "description": "This method is known as “Sign Request”, it means that client request to Remote Signing. Remote Signing\n    will send back an Authorize Code via SMS or Email to authorize the client. This method also requires the\n    binary of document which needs to be signed.",
        "responses": {
          "200": {
            "description": "Ký file",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FileMultipleSigningRequest"
              }
            }
          }
        },
        "operationId": "Signing endpoint.signFileMultiple"
      }
    },
    "/signing/file": {
      "post": {
        "x-controller-name": "Signing endpoint",
        "x-operation-name": "signFile",
        "tags": [
          "signing"
        ],
        "description": "This method is known as “Sign Request”, it means that client request to Remote Signing. Remote Signing\n    will send back an Authorize Code via SMS or Email to authorize the client. This method also requires the\n    binary of document which needs to be signed.",
        "responses": {
          "200": {
            "description": "Ký file",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FileSigningRequest"
              }
            }
          }
        },
        "operationId": "Signing endpoint.signFile"
      }
    },
    "/signing/get_sign_number": {
      "post": {
        "x-controller-name": "Signing endpoint",
        "x-operation-name": "getSignedNumber",
        "tags": [
          "signing"
        ],
        "description": "Get signed number",
        "responses": {
          "200": {
            "description": "Get signed number",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of login function",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Request"
              }
            }
          }
        },
        "operationId": "Signing endpoint.getSignedNumber"
      }
    },
    "/signing/hash/authorize": {
      "post": {
        "x-controller-name": "Signing endpoint",
        "x-operation-name": "hashAuthorize",
        "tags": [
          "signing"
        ],
        "description": "This method is known as “Sign Response”, that means client responds the Authorize Code to Remote Signing.     Remote Signing will verify the received Authorize Code and responses PKCS#1 signature whether it’s correct.     In case of the agreement don’t own the certificate, the Remote Signing will enroll the corresponding ceritificate for business optimization and later will sign the hash.",
        "responses": {
          "200": {
            "description": "Authorize hash signing",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AuthorizeHashSigningRequest"
              }
            }
          }
        },
        "operationId": "Signing endpoint.hashAuthorize"
      }
    },
    "/signing/hash": {
      "post": {
        "x-controller-name": "Signing endpoint",
        "x-operation-name": "hash",
        "tags": [
          "signing"
        ],
        "description": "This method is known as “Sign Request”, it means that client request to Remote Signing.     Remote Signing will send back an Authorize Code via SMS or Email to authorize the client.     This method also requires the hash value which needs to be signed.",
        "responses": {
          "200": {
            "description": "Sign hash",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HashSigningRequest"
              }
            }
          }
        },
        "operationId": "Signing endpoint.hash"
      }
    },
    "/sync-certificates/{id}/certificate": {
      "get": {
        "x-controller-name": "SyncCertificateCertificateController",
        "x-operation-name": "getCertificate",
        "tags": [
          "SyncCertificateCertificateController"
        ],
        "responses": {
          "200": {
            "description": "Certificate belonging to SyncCertificate",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Certificate"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "operationId": "SyncCertificateCertificateController.getCertificate"
      }
    },
    "/system/sync-agreement-file": {
      "get": {
        "x-controller-name": "SystemController",
        "x-operation-name": "syncAgreementFile",
        "tags": [
          "SystemController"
        ],
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "operationId": "SystemController.syncAgreementFile"
      }
    },
    "/system/sync-certificate": {
      "get": {
        "x-controller-name": "SystemController",
        "x-operation-name": "syncCertificate",
        "tags": [
          "SystemController"
        ],
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "operationId": "SystemController.syncCertificate"
      }
    },
    "/system/sync-signed-file": {
      "get": {
        "x-controller-name": "SystemController",
        "x-operation-name": "syncSignedFile",
        "tags": [
          "SystemController"
        ],
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        },
        "operationId": "SystemController.syncSignedFile"
      }
    },
    "/transactions/{id}": {
      "get": {
        "x-controller-name": "TransactionController",
        "x-operation-name": "findById",
        "tags": [
          "TransactionController"
        ],
        "responses": {
          "200": {
            "description": "Transaction model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Transaction.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "fields": {
                      "title": "Transaction.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "rpBillCode": {
                          "type": "boolean"
                        },
                        "rsspBillCode": {
                          "type": "boolean"
                        },
                        "type": {
                          "type": "boolean"
                        },
                        "name": {
                          "type": "boolean"
                        },
                        "status": {
                          "type": "boolean"
                        },
                        "statusCode": {
                          "type": "boolean"
                        },
                        "statusMessage": {
                          "type": "boolean"
                        },
                        "createdAt": {
                          "type": "boolean"
                        },
                        "whereIsFrom": {
                          "type": "boolean"
                        },
                        "certificateId": {
                          "type": "boolean"
                        },
                        "ownerId": {
                          "type": "boolean"
                        },
                        "replyingPartyId": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    },
                    "include": {
                      "title": "Transaction.IncludeFilter",
                      "type": "array",
                      "items": {
                        "title": "Transaction.IncludeFilter.Items",
                        "type": "object",
                        "properties": {
                          "relation": {
                            "type": "string"
                          },
                          "scope": {
                            "properties": {
                              "offset": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "limit": {
                                "type": "integer",
                                "minimum": 1,
                                "example": 100
                              },
                              "skip": {
                                "type": "integer",
                                "minimum": 0
                              },
                              "order": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                }
                              },
                              "where": {
                                "type": "object",
                                "additionalProperties": true
                              },
                              "fields": {
                                "type": "object",
                                "properties": {},
                                "additionalProperties": true
                              }
                            },
                            "additionalProperties": false,
                            "title": "Transaction.ScopeFilter"
                          }
                        }
                      }
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "TransactionController.findById"
      }
    },
    "/users/change-password": {
      "post": {
        "x-controller-name": "User endpoint",
        "x-operation-name": "changePassword",
        "tags": [
          "User endpoint"
        ],
        "description": "Get update meta data",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserResponse"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePaswordRequest"
              }
            }
          }
        },
        "operationId": "User endpoint.changePassword"
      }
    },
    "/users/import-cert": {
      "post": {
        "x-controller-name": "User endpoint",
        "x-operation-name": "importCertificate",
        "tags": [
          "User endpoint"
        ],
        "description": "Import certifiate",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ImportCertificateRequest"
              }
            }
          }
        },
        "operationId": "User endpoint.importCertificate"
      }
    },
    "/users/info": {
      "get": {
        "x-controller-name": "User endpoint",
        "x-operation-name": "getInfo",
        "tags": [
          "User endpoint"
        ],
        "description": "Get user info",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserResponse"
                }
              }
            }
          }
        },
        "operationId": "User endpoint.getInfo"
      }
    },
    "/users/login": {
      "post": {
        "x-controller-name": "User endpoint",
        "x-operation-name": "login",
        "tags": [
          "User endpoint"
        ],
        "description": "Login with api username and api password to get token",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "token": {
                      "type": "string",
                      "description": "Token with lifetime is 28800 seconds"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of login function",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserCredentials"
              }
            }
          }
        },
        "operationId": "User endpoint.login"
      }
    },
    "/users/meta-data": {
      "post": {
        "x-controller-name": "User endpoint",
        "x-operation-name": "updateMetaData",
        "tags": [
          "User endpoint"
        ],
        "description": "Get update meta data",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserResponse"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of login function",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserOptional_phoneNo-username-password-email-isAdmin-fullName-role_Excluding_accessToken-refreshToken-id-createdAt-updatedAt_"
              }
            }
          }
        },
        "operationId": "User endpoint.updateMetaData"
      }
    },
    "/users/{id}": {
      "patch": {
        "x-controller-name": "User endpoint",
        "x-operation-name": "updateById",
        "tags": [
          "User endpoint"
        ],
        "description": "Update User",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "token": {
                      "type": "string",
                      "description": "Token with lifetime is 28800 seconds"
                    }
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "requestBody": {
          "description": "The input of login function",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserOptional_phoneNo-username-password-email-isAdmin-fullName_Excluding_accessToken-refreshToken-id-createdAt-updatedAt_"
              }
            }
          },
          "x-parameter-index": 1
        },
        "operationId": "User endpoint.updateById"
      },
      "get": {
        "x-controller-name": "UserController",
        "x-operation-name": "findById",
        "tags": [
          "UserController"
        ],
        "responses": {
          "200": {
            "description": "Users model instance",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserWithRelations"
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "User.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "fields": {
                      "title": "User.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "createrId": {
                          "type": "boolean"
                        },
                        "username": {
                          "type": "boolean"
                        },
                        "password": {
                          "type": "boolean"
                        },
                        "accessToken": {
                          "type": "boolean"
                        },
                        "refreshToken": {
                          "type": "boolean"
                        },
                        "fullName": {
                          "type": "boolean"
                        },
                        "email": {
                          "type": "boolean"
                        },
                        "phoneNo": {
                          "type": "boolean"
                        },
                        "createdAt": {
                          "type": "boolean"
                        },
                        "updatedAt": {
                          "type": "boolean"
                        },
                        "isAdmin": {
                          "type": "boolean"
                        },
                        "role": {
                          "type": "boolean"
                        },
                        "metaData": {
                          "type": "boolean"
                        },
                        "isNeedChangePassword": {
                          "type": "boolean"
                        },
                        "isDeleted": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "UserController.findById"
      },
      "delete": {
        "x-controller-name": "UserController",
        "x-operation-name": "deleteById",
        "tags": [
          "UserController"
        ],
        "responses": {
          "204": {
            "description": "users DELETE success"
          }
        },
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true
          }
        ],
        "operationId": "UserController.deleteById"
      }
    },
    "/users": {
      "post": {
        "x-controller-name": "User endpoint",
        "x-operation-name": "create",
        "tags": [
          "User endpoint"
        ],
        "description": "Create User",
        "responses": {
          "200": {
            "description": "Token to authentication with other apis",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "token": {
                      "type": "string",
                      "description": "Token with lifetime is 28800 seconds"
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of login function",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/User"
              }
            }
          }
        },
        "operationId": "User endpoint.create"
      },
      "get": {
        "x-controller-name": "UserController",
        "x-operation-name": "getList",
        "tags": [
          "UserController"
        ],
        "responses": {
          "200": {
            "description": "Array of Users model instances",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserExcluding_id_WithRelations"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "User.Filter",
                  "properties": {
                    "offset": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "limit": {
                      "type": "integer",
                      "minimum": 1,
                      "example": 100
                    },
                    "skip": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "order": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "where": {
                      "title": "User.WhereFilter",
                      "type": "object",
                      "additionalProperties": true
                    },
                    "fields": {
                      "title": "User.Fields",
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "boolean"
                        },
                        "createrId": {
                          "type": "boolean"
                        },
                        "username": {
                          "type": "boolean"
                        },
                        "password": {
                          "type": "boolean"
                        },
                        "accessToken": {
                          "type": "boolean"
                        },
                        "refreshToken": {
                          "type": "boolean"
                        },
                        "fullName": {
                          "type": "boolean"
                        },
                        "email": {
                          "type": "boolean"
                        },
                        "phoneNo": {
                          "type": "boolean"
                        },
                        "createdAt": {
                          "type": "boolean"
                        },
                        "updatedAt": {
                          "type": "boolean"
                        },
                        "isAdmin": {
                          "type": "boolean"
                        },
                        "role": {
                          "type": "boolean"
                        },
                        "metaData": {
                          "type": "boolean"
                        },
                        "isNeedChangePassword": {
                          "type": "boolean"
                        },
                        "isDeleted": {
                          "type": "boolean"
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "additionalProperties": false
                }
              }
            }
          }
        ],
        "operationId": "UserController.getList"
      }
    },
    "/v2/certificates/get-detail": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "getDetailV2",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "This method will get certificate detail for corresponding agreement in Remote Signing service",
        "responses": {
          "200": {
            "description": "Get Detail V2",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of register certificate",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GetDetailCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.getDetailV2"
      }
    },
    "/v2/certificates/verify-passcode": {
      "post": {
        "x-controller-name": "Certificates endpoint",
        "x-operation-name": "verifyPassCode",
        "tags": [
          "Certificates endpoint"
        ],
        "description": "Verify passcode for a agreementUUID on Remote Signing service",
        "responses": {
          "200": {
            "description": "Verify passcode",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "The input of verify pass code",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VerifyPassCodeCertificateRequest"
              }
            }
          }
        },
        "operationId": "Certificates endpoint.verifyPassCode"
      }
    }
  },
  "servers": [
    {
      "url": "http://api.remotesigning.vn"
    }
  ],
  "components": {
    "schemas": {
      "MultipleSignedFileData": {
        "title": "MultipleSignedFileData",
        "properties": {
          "hash": {
            "type": "string",
            "description": "hash"
          },
          "mimeType": {
            "type": "string",
            "description": "mimeTy"
          },
          "signCloudMetaData": {
            "type": "object",
            "title": "SignCloudMetaData",
            "properties": {
              "counterSigning": {
                "type": "object",
                "description": "meta data for counter signing",
                "title": "CounterSigning",
                "properties": {
                  "entry": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "description": "entry list of counter signing",
                      "title": "Entry",
                      "properties": {
                        "key": {
                          "type": "string",
                          "description": "key"
                        },
                        "value": {
                          "type": "string",
                          "description": "value"
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              },
              "singletonSigning": {
                "type": "object",
                "description": "meta data for singleton signing",
                "title": "SingletonSigning",
                "properties": {
                  "entry": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "description": "entry list of singleton signing",
                      "title": "Entry",
                      "properties": {
                        "key": {
                          "type": "string",
                          "description": "key"
                        },
                        "value": {
                          "type": "string",
                          "description": "value"
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "additionalProperties": false
          },
          "signingFileData": {
            "type": "string",
            "description": "signin"
          },
          "signingFileName": {
            "type": "string",
            "description": "signin"
          },
          "xmlDocument": {
            "type": "string",
            "description": "xmlDoc"
          },
          "xslTemplate": {
            "type": "string",
            "description": "xslTemplate"
          }
        },
        "additionalProperties": false
      },
      "SignedFileObj": {
        "title": "SignedFileObj",
        "properties": {
          "fileName": {
            "type": "string",
            "description": "file name"
          },
          "base64": {
            "type": "string",
            "description": "base64 encoded file data"
          },
          "mimeType": {
            "type": "string",
            "description": "mimeType"
          }
        },
        "required": [
          "fileName"
        ],
        "additionalProperties": false
      },
      "SignedNumberObj": {
        "title": "SignedNumberObj",
        "properties": {
          "serial_number": {
            "type": "string",
            "description": "serial_number"
          },
          "certificate_id": {
            "type": "string",
            "description": "certificate_id"
          },
          "number_signed": {
            "type": "number",
            "description": "number_signed"
          }
        },
        "required": [
          "serial_number"
        ],
        "additionalProperties": false
      },
      "ApiResponse": {
        "title": "ApiResponse",
        "properties": {
          "authModeSupported": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "singletonSigning",
              "items": {
                "enum": [
                  "EXPLICIT/PIN",
                  "EXPLICIT/OTP-SMS",
                  "EXPLICIT/OTP-EMAIL"
                ]
              }
            }
          },
          "authorizationMethodsEnabled": {
            "type": "number",
            "description": "authorizationMethodsEnabled"
          },
          "authorizeCredential": {
            "type": "string",
            "description": "In case of Authorize Code isn’t sent by Remote Signing,\n    Email/Mobile number of client/customer also is responded back to Finance/Insurance company and they use that information to send Authorize Code to their end-user."
          },
          "authorizeMethod": {
            "type": "number",
            "description": "authorizeMethod"
          },
          "billCode": {
            "type": "string",
            "description": "Receipt for each transaction",
            "maxLength": 64
          },
          "certificate": {
            "type": "string",
            "description": "certificate"
          },
          "certificateDN": {
            "type": "string",
            "description": "Certificate Distinguished Name (DN)\n    E.g: CN=Nguyen Van A, O=B Company,C=VN"
          },
          "certificateSerialNumber": {
            "type": "string",
            "description": "Certificate serial number\n    E.g: 5405ABCDEF"
          },
          "certificateStateID": {
            "type": "number",
            "description": "certificateStateID"
          },
          "certificateThumbprint": {
            "type": "string",
            "description": "certificateThumbprint"
          },
          "credentialExpireIn": {
            "type": "number",
            "description": "credentialExpireIn"
          },
          "csr": {
            "type": "string",
            "description": "CSR will be responed if the csrRequired set TRUE in the request."
          },
          "dmsMetaData": {
            "type": "string",
            "description": "dmsMetaData"
          },
          "downloadedFileData": {
            "type": "string",
            "description": "downloadedFileData"
          },
          "downloadedFileUUID": {
            "type": "string",
            "description": "downloadedFileUUID"
          },
          "issuerDN": {
            "type": "string",
            "description": "Issuer Certifcate Distinguished Name (DN)\n    E.g: CN=Mobile-ID Trusted Network, O=MOBILE-ID,C=VN"
          },
          "logInstance": {
            "type": "number",
            "description": "logInstance"
          },
          "mimeType": {
            "type": "string",
            "description": "In case of PDF file that be downloaded, mimeType is ‘application/pdf’"
          },
          "multipleSignedFileData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MultipleSignedFileData",
              "description": "MultipleSignedFileData",
              "title": "MultipleSignedFileData",
              "properties": {
                "hash": {
                  "type": "string",
                  "description": "hash"
                },
                "mimeType": {
                  "type": "string",
                  "description": "mimeTy"
                },
                "signCloudMetaData": {
                  "type": "object",
                  "title": "SignCloudMetaData",
                  "properties": {
                    "counterSigning": {
                      "type": "object",
                      "description": "meta data for counter signing",
                      "title": "CounterSigning",
                      "properties": {
                        "entry": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": "entry list of counter signing",
                            "title": "Entry",
                            "properties": {
                              "key": {
                                "type": "string",
                                "description": "key"
                              },
                              "value": {
                                "type": "string",
                                "description": "value"
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "singletonSigning": {
                      "type": "object",
                      "description": "meta data for singleton signing",
                      "title": "SingletonSigning",
                      "properties": {
                        "entry": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": "entry list of singleton signing",
                            "title": "Entry",
                            "properties": {
                              "key": {
                                "type": "string",
                                "description": "key"
                              },
                              "value": {
                                "type": "string",
                                "description": "value"
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "additionalProperties": false
                },
                "signingFileData": {
                  "type": "string",
                  "description": "signin"
                },
                "signingFileName": {
                  "type": "string",
                  "description": "signin"
                },
                "xmlDocument": {
                  "type": "string",
                  "description": "xmlDoc"
                },
                "xslTemplate": {
                  "type": "string",
                  "description": "xslTemplate"
                }
              },
              "additionalProperties": false
            }
          },
          "notificationMessage": {
            "type": "string",
            "description": "notificationMessage"
          },
          "notificationSubject": {
            "type": "string",
            "description": "notificationSubject"
          },
          "receipt": {
            "type": "object",
            "description": "receipt",
            "title": "Receipt",
            "properties": {
              "billCode": {
                "type": "string",
                "description": "billCode"
              },
              "multipleSignedFileData": {
                "type": "object",
                "description": "multipleSignedFileData",
                "title": "MultipleSignedFileData",
                "properties": {
                  "hash": {
                    "type": "string",
                    "description": "hash"
                  },
                  "mimeType": {
                    "type": "string",
                    "description": "mimeTy"
                  },
                  "signCloudMetaData": {
                    "type": "object",
                    "title": "SignCloudMetaData",
                    "properties": {
                      "counterSigning": {
                        "type": "object",
                        "description": "meta data for counter signing",
                        "title": "CounterSigning",
                        "properties": {
                          "entry": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": "entry list of counter signing",
                              "title": "Entry",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "description": "key"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "value"
                                }
                              },
                              "additionalProperties": false
                            }
                          }
                        },
                        "additionalProperties": false
                      },
                      "singletonSigning": {
                        "type": "object",
                        "description": "meta data for singleton signing",
                        "title": "SingletonSigning",
                        "properties": {
                          "entry": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": "entry list of singleton signing",
                              "title": "Entry",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "description": "key"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "value"
                                }
                              },
                              "additionalProperties": false
                            }
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  },
                  "signingFileData": {
                    "type": "string",
                    "description": "signin"
                  },
                  "signingFileName": {
                    "type": "string",
                    "description": "signin"
                  },
                  "xmlDocument": {
                    "type": "string",
                    "description": "xmlDoc"
                  },
                  "xslTemplate": {
                    "type": "string",
                    "description": "xslTemplate"
                  }
                },
                "additionalProperties": false
              },
              "multipleSigningFileData": {
                "type": "object",
                "description": "multipleSigningFileData",
                "title": "MultipleSigningFileData",
                "properties": {
                  "hash": {
                    "type": "string",
                    "description": "hash"
                  },
                  "mimeType": {
                    "type": "string",
                    "description": "mimeTy"
                  },
                  "signCloudMetaData": {
                    "type": "object",
                    "title": "SignCloudMetaData",
                    "properties": {
                      "counterSigning": {
                        "type": "object",
                        "description": "meta data for counter signing",
                        "title": "CounterSigning",
                        "properties": {
                          "entry": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": "entry list of counter signing",
                              "title": "Entry",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "description": "key"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "value"
                                }
                              },
                              "additionalProperties": false
                            }
                          }
                        },
                        "additionalProperties": false
                      },
                      "singletonSigning": {
                        "type": "object",
                        "description": "meta data for singleton signing",
                        "title": "SingletonSigning",
                        "properties": {
                          "entry": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": "entry list of singleton signing",
                              "title": "Entry",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "description": "key"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "value"
                                }
                              },
                              "additionalProperties": false
                            }
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  },
                  "signingFileData": {
                    "type": "string",
                    "description": "signin"
                  },
                  "signingFileName": {
                    "type": "string",
                    "description": "signin"
                  },
                  "xmlDocument": {
                    "type": "string",
                    "description": "xmlDoc"
                  },
                  "xslTemplate": {
                    "type": "string",
                    "description": "xslTemplate"
                  }
                },
                "additionalProperties": false
              },
              "timestamp": {
                "type": "string",
                "format": "date-time",
                "description": "timestamp"
              }
            },
            "additionalProperties": false
          },
          "remainingCounter": {
            "type": "number",
            "description": "remainingCounter"
          },
          "responseCode": {
            "type": "number",
            "description": "Code describes the result.\n    Normally. Remote Signing will response REQUEST ACCEPTED",
            "maxLength": 11
          },
          "responseMessage": {
            "type": "string",
            "description": "Message describes the result in detail",
            "maxLength": 256
          },
          "signatureValue": {
            "type": "string",
            "description": "signatureValue"
          },
          "signatureValues": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "signatureValues",
              "items": {
                "type": "string"
              }
            }
          },
          "signedFileData": {
            "type": "string",
            "description": "base64 encode data of File that be signed"
          },
          "signedFileName": {
            "type": "string",
            "description": "signedFileName"
          },
          "signedFileUUID": {
            "type": "string",
            "description": "Signed file UUID that identified by our Remote Signing service"
          },
          "signerInfo": {
            "type": "object",
            "description": "signerInfo",
            "title": "SignerInfo",
            "additionalProperties": false
          },
          "timestamp": {
            "type": "string",
            "format": "date-time",
            "description": "timestamp"
          },
          "uploadedFileUUID": {
            "type": "string",
            "description": "uploadedFileUUID"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time",
            "description": "The date of certificate begin to be valid"
          },
          "validTo": {
            "type": "string",
            "format": "date-time",
            "description": "The date of certificate begin to be expired"
          },
          "agreementUUID": {
            "type": "string",
            "description": "agreementUUID"
          },
          "token": {
            "type": "string",
            "description": "token"
          },
          "sharedMode": {
            "type": "number",
            "description": "sharedMode",
            "enum": [
              1,
              2,
              3
            ]
          },
          "status": {
            "type": "boolean",
            "description": "status"
          },
          "signedFiles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SignedFileObj",
              "description": "list signed files",
              "title": "SignedFileObj",
              "properties": {
                "fileName": {
                  "type": "string",
                  "description": "file name"
                },
                "base64": {
                  "type": "string",
                  "description": "base64 encoded file data"
                },
                "mimeType": {
                  "type": "string",
                  "description": "mimeType"
                }
              },
              "required": [
                "fileName"
              ],
              "additionalProperties": false
            }
          },
          "signedNumbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SignedNumberObj",
              "description": "list signed numbers",
              "title": "SignedNumberObj",
              "properties": {
                "serial_number": {
                  "type": "string",
                  "description": "serial_number"
                },
                "certificate_id": {
                  "type": "string",
                  "description": "certificate_id"
                },
                "number_signed": {
                  "type": "number",
                  "description": "number_signed"
                }
              },
              "required": [
                "serial_number"
              ],
              "additionalProperties": false
            }
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "email": {
            "type": "string",
            "description": "email"
          },
          "telephoneNumber": {
            "type": "string",
            "description": "telephoneNumber"
          },
          "authorizeEmail": {
            "type": "string",
            "description": "authorizeEmail"
          },
          "authorizePhoneNo": {
            "type": "string",
            "description": "authorizePhoneNo"
          },
          "certificateProfile": {
            "type": "string",
            "description": "certificateProfile"
          },
          "contractExpiration": {
            "type": "string",
            "format": "date-time",
            "description": "contract expiration"
          }
        },
        "required": [
          "authorizeMethod",
          "certificateStateID",
          "credentialExpireIn",
          "logInstance",
          "remainingCounter",
          "responseCode",
          "docId"
        ],
        "additionalProperties": false
      },
      "ImportCertificateRequest": {
        "title": "ImportCertificateRequest",
        "properties": {
          "organization_name": {
            "type": "string",
            "maxLength": 512
          },
          "agrement_uuid": {
            "type": "string",
            "maxLength": 50,
            "minLength": 10,
            "pattern": "^[a-zA-Z0-9-]{10,50}$"
          },
          "email": {
            "type": "string",
            "maxLength": 128,
            "minLength": 1
          },
          "phone": {
            "type": "string",
            "maxLength": 16,
            "minLength": 1
          },
          "serial_number": {
            "type": "string",
            "maxLength": 50,
            "minLength": 10,
            "pattern": "^[a-zA-Z0-9]{10,50}$"
          },
          "thumbprint": {
            "type": "string",
            "maxLength": 50,
            "minLength": 10,
            "pattern": "^[a-zA-Z0-9]{10,50}$"
          },
          "country": {
            "type": "string",
            "maxLength": 2,
            "minLength": 2
          },
          "location": {
            "type": "string",
            "maxLength": 512
          },
          "valid_from": {
            "type": "string",
            "format": "date-time"
          },
          "valid_to": {
            "type": "string",
            "format": "date-time"
          },
          "owner_uuid": {
            "type": "string",
            "maxLength": 64,
            "minLength": 1
          },
          "tax_id": {
            "type": "string",
            "maxLength": 20
          },
          "personal_id": {
            "type": "string",
            "maxLength": 20
          },
          "budget_id": {
            "type": "string",
            "maxLength": 20
          },
          "passport_id": {
            "type": "string",
            "maxLength": 20
          },
          "personal_name": {
            "type": "string",
            "maxLength": 250
          },
          "organization_unit": {
            "type": "string",
            "maxLength": 500
          },
          "state_or_province": {
            "type": "string",
            "maxLength": 20
          },
          "certificate_profile": {
            "type": "string",
            "maxLength": 100
          }
        },
        "required": [
          "agrement_uuid",
          "email",
          "phone",
          "serial_number",
          "thumbprint",
          "country",
          "valid_from",
          "valid_to",
          "owner_uuid"
        ],
        "additionalProperties": false
      },
      "Agreement": {
        "title": "Agreement",
        "properties": {
          "id": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "agrementUuid": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "applicationForm": {
            "type": "string"
          },
          "authorizeLetter": {
            "type": "string"
          },
          "businessLicense": {
            "type": "string"
          },
          "photoActivityDeclaration": {
            "type": "string"
          },
          "photoAuthorizeDelegate": {
            "type": "string"
          },
          "photoIdCard": {
            "type": "string"
          },
          "requestForm": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "telephoneNumber": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "type": "number"
          },
          "ownerId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "CertificateRequest": {
        "title": "CertificateRequest",
        "properties": {
          "id": {
            "type": "string"
          },
          "certificateProfile": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "certEmail": {
            "type": "string"
          },
          "certTelephoneNumber": {
            "type": "string"
          },
          "ownerEmail": {
            "type": "string"
          },
          "ownerMobileNumber": {
            "type": "string"
          },
          "authenticationEmail": {
            "type": "string"
          },
          "authenticationMobileNumber": {
            "type": "string"
          },
          "applicationForm": {
            "type": "string"
          },
          "authorizeLetter": {
            "type": "string"
          },
          "businessLicense": {
            "type": "string"
          },
          "photoActivityDeclaration": {
            "type": "string"
          },
          "photoAuthorizeDelegate": {
            "type": "string"
          },
          "photoIdCard": {
            "type": "string"
          },
          "requestForm": {
            "type": "string"
          },
          "personalIdType": {
            "type": "string"
          },
          "personalIdValue": {
            "type": "string"
          },
          "organizationIdType": {
            "type": "string"
          },
          "organizationIdValue": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "status": {
            "type": "number"
          },
          "agreementId": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          },
          "passCodeNotificationMethod": {
            "type": "string"
          },
          "isTest": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "NewCertificateRequest": {
        "title": "NewCertificateRequest",
        "description": "(Schema options: { title: 'NewCertificateRequest', exclude: [ 'id' ] })",
        "properties": {
          "certificateProfile": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "certEmail": {
            "type": "string"
          },
          "certTelephoneNumber": {
            "type": "string"
          },
          "ownerEmail": {
            "type": "string"
          },
          "ownerMobileNumber": {
            "type": "string"
          },
          "authenticationEmail": {
            "type": "string"
          },
          "authenticationMobileNumber": {
            "type": "string"
          },
          "applicationForm": {
            "type": "string"
          },
          "authorizeLetter": {
            "type": "string"
          },
          "businessLicense": {
            "type": "string"
          },
          "photoActivityDeclaration": {
            "type": "string"
          },
          "photoAuthorizeDelegate": {
            "type": "string"
          },
          "photoIdCard": {
            "type": "string"
          },
          "requestForm": {
            "type": "string"
          },
          "personalIdType": {
            "type": "string"
          },
          "personalIdValue": {
            "type": "string"
          },
          "organizationIdType": {
            "type": "string"
          },
          "organizationIdValue": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "status": {
            "type": "number"
          },
          "agreementId": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          },
          "passCodeNotificationMethod": {
            "type": "string"
          },
          "isTest": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UserWithRelations": {
        "title": "UserWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "createrId": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "accessToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNo": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "isAdmin": {
            "type": "boolean"
          },
          "role": {
            "type": "string"
          },
          "metaData": {
            "type": "string"
          },
          "isNeedChangePassword": {
            "type": "boolean"
          },
          "isDeleted": {
            "type": "boolean"
          }
        },
        "required": [
          "username",
          "password",
          "fullName",
          "email",
          "phoneNo",
          "createdAt",
          "isAdmin",
          "role"
        ],
        "additionalProperties": false
      },
      "TransactionDataWithRelations": {
        "title": "TransactionDataWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "dataName": {
            "type": "string"
          },
          "dataValue": {
            "type": "string"
          },
          "dataKey": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ReplyingPartyWithRelations": {
        "title": "ReplyingPartyWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "rpUsername": {
            "type": "string"
          },
          "rpPassword": {
            "type": "string"
          },
          "rpPrivateKey": {
            "type": "string"
          },
          "rpPasscode": {
            "type": "string"
          },
          "rpSignature": {
            "type": "string"
          },
          "accessToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "rpP12File": {
            "type": "string"
          },
          "active": {
            "type": "boolean"
          },
          "owners": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OwnerWithRelations"
            }
          }
        },
        "required": [
          "password",
          "code",
          "rpUsername",
          "rpPassword",
          "rpPrivateKey",
          "rpPasscode",
          "rpSignature",
          "rpP12File",
          "active"
        ],
        "additionalProperties": false
      },
      "SignedFileWithRelations": {
        "title": "SignedFileWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "fileName": {
            "type": "string"
          },
          "minetype": {
            "type": "string"
          },
          "idFileServer": {
            "type": "string"
          },
          "ownerId": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "signedDate": {
            "type": "string",
            "format": "date-time"
          },
          "transactionId": {
            "type": "string"
          },
          "certificateId": {
            "type": "string"
          },
          "docId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "TransactionWithRelations": {
        "title": "TransactionWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "status": {
            "type": "boolean"
          },
          "statusCode": {
            "type": "string"
          },
          "statusMessage": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "whereIsFrom": {
            "type": "string"
          },
          "certificateId": {
            "type": "string"
          },
          "ownerId": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "transactionData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionDataWithRelations"
            }
          },
          "certificate": {
            "$ref": "#/components/schemas/CertificateWithRelations"
          },
          "owner": {
            "$ref": "#/components/schemas/OwnerWithRelations"
          },
          "replyingParty": {
            "$ref": "#/components/schemas/ReplyingPartyWithRelations"
          },
          "signedFiles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SignedFileWithRelations"
            }
          }
        },
        "additionalProperties": false
      },
      "CertificateWithRelations": {
        "title": "CertificateWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "agrementUuid": {
            "type": "string"
          },
          "thumbprint": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "certificateProfile": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "csr": {
            "type": "string"
          },
          "certificateDn": {
            "type": "string"
          },
          "serialNumber": {
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "issuerDn": {
            "type": "string"
          },
          "certificate": {
            "type": "string"
          },
          "sharedMode": {
            "type": "string"
          },
          "authModeSupported": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "ownerId": {
            "type": "string"
          },
          "stateId": {
            "type": "number"
          },
          "cloudCertificateId": {
            "type": "number"
          },
          "agreementId": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "telephoneNumber": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "createAt": {
            "type": "string",
            "format": "date-time"
          },
          "changedDate": {
            "type": "string",
            "format": "date-time"
          },
          "revokedDate": {
            "type": "string",
            "format": "date-time"
          },
          "renewedDate": {
            "type": "string",
            "format": "date-time"
          },
          "userRequestId": {
            "type": "string"
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "passCodeNotificationMethod": {
            "type": "string"
          },
          "isCertImported": {
            "type": "boolean"
          },
          "owner": {
            "$ref": "#/components/schemas/OwnerWithRelations"
          },
          "agreement": {
            "$ref": "#/components/schemas/AgreementWithRelations"
          },
          "transactions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionWithRelations"
            }
          }
        },
        "additionalProperties": false
      },
      "OwnerWithRelations": {
        "title": "OwnerWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "taxId": {
            "type": "string"
          },
          "budgetId": {
            "type": "string"
          },
          "citizenId": {
            "type": "string"
          },
          "passportId": {
            "type": "string"
          },
          "personalId": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "authorizeEmail": {
            "type": "string"
          },
          "authorizePhoneNo": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "telephoneNumber": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "ownerUUID": {
            "type": "string"
          },
          "type": {
            "type": "number"
          },
          "organizationUnit": {
            "type": "string"
          },
          "certificates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CertificateWithRelations"
            }
          },
          "replyingParty": {
            "$ref": "#/components/schemas/ReplyingPartyWithRelations"
          }
        },
        "additionalProperties": false
      },
      "AgreementWithRelations": {
        "title": "AgreementWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "agrementUuid": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "applicationForm": {
            "type": "string"
          },
          "authorizeLetter": {
            "type": "string"
          },
          "businessLicense": {
            "type": "string"
          },
          "photoActivityDeclaration": {
            "type": "string"
          },
          "photoAuthorizeDelegate": {
            "type": "string"
          },
          "photoIdCard": {
            "type": "string"
          },
          "requestForm": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "telephoneNumber": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "type": "number"
          },
          "ownerId": {
            "type": "string"
          },
          "owner": {
            "$ref": "#/components/schemas/OwnerWithRelations"
          },
          "certificates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CertificateWithRelations"
            }
          }
        },
        "additionalProperties": false
      },
      "CertificateRequestWithRelations": {
        "title": "CertificateRequestWithRelations",
        "description": "(Schema options: { includeRelations: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "certificateProfile": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "certEmail": {
            "type": "string"
          },
          "certTelephoneNumber": {
            "type": "string"
          },
          "ownerEmail": {
            "type": "string"
          },
          "ownerMobileNumber": {
            "type": "string"
          },
          "authenticationEmail": {
            "type": "string"
          },
          "authenticationMobileNumber": {
            "type": "string"
          },
          "applicationForm": {
            "type": "string"
          },
          "authorizeLetter": {
            "type": "string"
          },
          "businessLicense": {
            "type": "string"
          },
          "photoActivityDeclaration": {
            "type": "string"
          },
          "photoAuthorizeDelegate": {
            "type": "string"
          },
          "photoIdCard": {
            "type": "string"
          },
          "requestForm": {
            "type": "string"
          },
          "personalIdType": {
            "type": "string"
          },
          "personalIdValue": {
            "type": "string"
          },
          "organizationIdType": {
            "type": "string"
          },
          "organizationIdValue": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "status": {
            "type": "number"
          },
          "agreementId": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          },
          "passCodeNotificationMethod": {
            "type": "string"
          },
          "isTest": {
            "type": "boolean"
          },
          "user": {
            "$ref": "#/components/schemas/UserWithRelations"
          },
          "agreement": {
            "$ref": "#/components/schemas/AgreementWithRelations"
          }
        },
        "additionalProperties": false
      },
      "CertificateRequestPartial": {
        "title": "CertificateRequestPartial",
        "description": "(Schema options: { partial: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "certificateProfile": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "certEmail": {
            "type": "string"
          },
          "certTelephoneNumber": {
            "type": "string"
          },
          "ownerEmail": {
            "type": "string"
          },
          "ownerMobileNumber": {
            "type": "string"
          },
          "authenticationEmail": {
            "type": "string"
          },
          "authenticationMobileNumber": {
            "type": "string"
          },
          "applicationForm": {
            "type": "string"
          },
          "authorizeLetter": {
            "type": "string"
          },
          "businessLicense": {
            "type": "string"
          },
          "photoActivityDeclaration": {
            "type": "string"
          },
          "photoAuthorizeDelegate": {
            "type": "string"
          },
          "photoIdCard": {
            "type": "string"
          },
          "requestForm": {
            "type": "string"
          },
          "personalIdType": {
            "type": "string"
          },
          "personalIdValue": {
            "type": "string"
          },
          "organizationIdType": {
            "type": "string"
          },
          "organizationIdValue": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "status": {
            "type": "number"
          },
          "agreementId": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          },
          "passCodeNotificationMethod": {
            "type": "string"
          },
          "isTest": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Transaction": {
        "title": "Transaction",
        "properties": {
          "id": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "status": {
            "type": "boolean"
          },
          "statusCode": {
            "type": "string"
          },
          "statusMessage": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "whereIsFrom": {
            "type": "string"
          },
          "certificateId": {
            "type": "string"
          },
          "ownerId": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Response": {
        "title": "Response",
        "description": "(Schema options: { title: 'Response' })",
        "properties": {
          "authModeSupported": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "singletonSigning",
              "items": {
                "enum": [
                  "EXPLICIT/PIN",
                  "EXPLICIT/OTP-SMS",
                  "EXPLICIT/OTP-EMAIL"
                ]
              }
            }
          },
          "authorizationMethodsEnabled": {
            "type": "number",
            "description": "authorizationMethodsEnabled"
          },
          "authorizeCredential": {
            "type": "string",
            "description": "In case of Authorize Code isn’t sent by Remote Signing,\n    Email/Mobile number of client/customer also is responded back to Finance/Insurance company and they use that information to send Authorize Code to their end-user."
          },
          "authorizeMethod": {
            "type": "number",
            "description": "authorizeMethod"
          },
          "billCode": {
            "type": "string",
            "description": "Receipt for each transaction",
            "maxLength": 64
          },
          "certificate": {
            "type": "string",
            "description": "certificate"
          },
          "certificateDN": {
            "type": "string",
            "description": "Certificate Distinguished Name (DN)\n    E.g: CN=Nguyen Van A, O=B Company,C=VN"
          },
          "certificateSerialNumber": {
            "type": "string",
            "description": "Certificate serial number\n    E.g: 5405ABCDEF"
          },
          "certificateStateID": {
            "type": "number",
            "description": "certificateStateID"
          },
          "certificateThumbprint": {
            "type": "string",
            "description": "certificateThumbprint"
          },
          "credentialExpireIn": {
            "type": "number",
            "description": "credentialExpireIn"
          },
          "csr": {
            "type": "string",
            "description": "CSR will be responed if the csrRequired set TRUE in the request."
          },
          "dmsMetaData": {
            "type": "string",
            "description": "dmsMetaData"
          },
          "downloadedFileData": {
            "type": "string",
            "description": "downloadedFileData"
          },
          "downloadedFileUUID": {
            "type": "string",
            "description": "downloadedFileUUID"
          },
          "issuerDN": {
            "type": "string",
            "description": "Issuer Certifcate Distinguished Name (DN)\n    E.g: CN=Mobile-ID Trusted Network, O=MOBILE-ID,C=VN"
          },
          "logInstance": {
            "type": "number",
            "description": "logInstance"
          },
          "mimeType": {
            "type": "string",
            "description": "In case of PDF file that be downloaded, mimeType is ‘application/pdf’"
          },
          "multipleSignedFileData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MultipleSignedFileData",
              "description": "MultipleSignedFileData",
              "title": "MultipleSignedFileData",
              "properties": {
                "hash": {
                  "type": "string",
                  "description": "hash"
                },
                "mimeType": {
                  "type": "string",
                  "description": "mimeTy"
                },
                "signCloudMetaData": {
                  "type": "object",
                  "title": "SignCloudMetaData",
                  "properties": {
                    "counterSigning": {
                      "type": "object",
                      "description": "meta data for counter signing",
                      "title": "CounterSigning",
                      "properties": {
                        "entry": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": "entry list of counter signing",
                            "title": "Entry",
                            "properties": {
                              "key": {
                                "type": "string",
                                "description": "key"
                              },
                              "value": {
                                "type": "string",
                                "description": "value"
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "singletonSigning": {
                      "type": "object",
                      "description": "meta data for singleton signing",
                      "title": "SingletonSigning",
                      "properties": {
                        "entry": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "description": "entry list of singleton signing",
                            "title": "Entry",
                            "properties": {
                              "key": {
                                "type": "string",
                                "description": "key"
                              },
                              "value": {
                                "type": "string",
                                "description": "value"
                              }
                            },
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "additionalProperties": false
                },
                "signingFileData": {
                  "type": "string",
                  "description": "signin"
                },
                "signingFileName": {
                  "type": "string",
                  "description": "signin"
                },
                "xmlDocument": {
                  "type": "string",
                  "description": "xmlDoc"
                },
                "xslTemplate": {
                  "type": "string",
                  "description": "xslTemplate"
                }
              },
              "additionalProperties": false
            }
          },
          "notificationMessage": {
            "type": "string",
            "description": "notificationMessage"
          },
          "notificationSubject": {
            "type": "string",
            "description": "notificationSubject"
          },
          "receipt": {
            "type": "object",
            "description": "receipt",
            "title": "Receipt",
            "properties": {
              "billCode": {
                "type": "string",
                "description": "billCode"
              },
              "multipleSignedFileData": {
                "type": "object",
                "description": "multipleSignedFileData",
                "title": "MultipleSignedFileData",
                "properties": {
                  "hash": {
                    "type": "string",
                    "description": "hash"
                  },
                  "mimeType": {
                    "type": "string",
                    "description": "mimeTy"
                  },
                  "signCloudMetaData": {
                    "type": "object",
                    "title": "SignCloudMetaData",
                    "properties": {
                      "counterSigning": {
                        "type": "object",
                        "description": "meta data for counter signing",
                        "title": "CounterSigning",
                        "properties": {
                          "entry": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": "entry list of counter signing",
                              "title": "Entry",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "description": "key"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "value"
                                }
                              },
                              "additionalProperties": false
                            }
                          }
                        },
                        "additionalProperties": false
                      },
                      "singletonSigning": {
                        "type": "object",
                        "description": "meta data for singleton signing",
                        "title": "SingletonSigning",
                        "properties": {
                          "entry": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": "entry list of singleton signing",
                              "title": "Entry",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "description": "key"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "value"
                                }
                              },
                              "additionalProperties": false
                            }
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  },
                  "signingFileData": {
                    "type": "string",
                    "description": "signin"
                  },
                  "signingFileName": {
                    "type": "string",
                    "description": "signin"
                  },
                  "xmlDocument": {
                    "type": "string",
                    "description": "xmlDoc"
                  },
                  "xslTemplate": {
                    "type": "string",
                    "description": "xslTemplate"
                  }
                },
                "additionalProperties": false
              },
              "multipleSigningFileData": {
                "type": "object",
                "description": "multipleSigningFileData",
                "title": "MultipleSigningFileData",
                "properties": {
                  "hash": {
                    "type": "string",
                    "description": "hash"
                  },
                  "mimeType": {
                    "type": "string",
                    "description": "mimeTy"
                  },
                  "signCloudMetaData": {
                    "type": "object",
                    "title": "SignCloudMetaData",
                    "properties": {
                      "counterSigning": {
                        "type": "object",
                        "description": "meta data for counter signing",
                        "title": "CounterSigning",
                        "properties": {
                          "entry": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": "entry list of counter signing",
                              "title": "Entry",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "description": "key"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "value"
                                }
                              },
                              "additionalProperties": false
                            }
                          }
                        },
                        "additionalProperties": false
                      },
                      "singletonSigning": {
                        "type": "object",
                        "description": "meta data for singleton signing",
                        "title": "SingletonSigning",
                        "properties": {
                          "entry": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "description": "entry list of singleton signing",
                              "title": "Entry",
                              "properties": {
                                "key": {
                                  "type": "string",
                                  "description": "key"
                                },
                                "value": {
                                  "type": "string",
                                  "description": "value"
                                }
                              },
                              "additionalProperties": false
                            }
                          }
                        },
                        "additionalProperties": false
                      }
                    },
                    "additionalProperties": false
                  },
                  "signingFileData": {
                    "type": "string",
                    "description": "signin"
                  },
                  "signingFileName": {
                    "type": "string",
                    "description": "signin"
                  },
                  "xmlDocument": {
                    "type": "string",
                    "description": "xmlDoc"
                  },
                  "xslTemplate": {
                    "type": "string",
                    "description": "xslTemplate"
                  }
                },
                "additionalProperties": false
              },
              "timestamp": {
                "type": "string",
                "format": "date-time",
                "description": "timestamp"
              }
            },
            "additionalProperties": false
          },
          "remainingCounter": {
            "type": "number",
            "description": "remainingCounter"
          },
          "responseCode": {
            "type": "number",
            "description": "Code describes the result.\n    Normally. Remote Signing will response REQUEST ACCEPTED",
            "maxLength": 11
          },
          "responseMessage": {
            "type": "string",
            "description": "Message describes the result in detail",
            "maxLength": 256
          },
          "signatureValue": {
            "type": "string",
            "description": "signatureValue"
          },
          "signatureValues": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "signatureValues",
              "items": {
                "type": "string"
              }
            }
          },
          "signedFileData": {
            "type": "string",
            "description": "base64 encode data of File that be signed"
          },
          "signedFileName": {
            "type": "string",
            "description": "signedFileName"
          },
          "signedFileUUID": {
            "type": "string",
            "description": "Signed file UUID that identified by our Remote Signing service"
          },
          "signerInfo": {
            "type": "object",
            "description": "signerInfo",
            "title": "SignerInfo",
            "additionalProperties": false
          },
          "timestamp": {
            "type": "string",
            "format": "date-time",
            "description": "timestamp"
          },
          "uploadedFileUUID": {
            "type": "string",
            "description": "uploadedFileUUID"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time",
            "description": "The date of certificate begin to be valid"
          },
          "validTo": {
            "type": "string",
            "format": "date-time",
            "description": "The date of certificate begin to be expired"
          },
          "agreementUUID": {
            "type": "string",
            "description": "agreementUUID"
          },
          "token": {
            "type": "string",
            "description": "token"
          },
          "sharedMode": {
            "type": "number",
            "description": "sharedMode",
            "enum": [
              1,
              2,
              3
            ]
          },
          "status": {
            "type": "boolean",
            "description": "status"
          },
          "signedFiles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SignedFileObj",
              "description": "list signed files",
              "title": "SignedFileObj",
              "properties": {
                "fileName": {
                  "type": "string",
                  "description": "file name"
                },
                "base64": {
                  "type": "string",
                  "description": "base64 encoded file data"
                },
                "mimeType": {
                  "type": "string",
                  "description": "mimeType"
                }
              },
              "required": [
                "fileName"
              ],
              "additionalProperties": false
            }
          },
          "signedNumbers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SignedNumberObj",
              "description": "list signed numbers",
              "title": "SignedNumberObj",
              "properties": {
                "serial_number": {
                  "type": "string",
                  "description": "serial_number"
                },
                "certificate_id": {
                  "type": "string",
                  "description": "certificate_id"
                },
                "number_signed": {
                  "type": "number",
                  "description": "number_signed"
                }
              },
              "required": [
                "serial_number"
              ],
              "additionalProperties": false
            }
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "email": {
            "type": "string",
            "description": "email"
          },
          "telephoneNumber": {
            "type": "string",
            "description": "telephoneNumber"
          },
          "authorizeEmail": {
            "type": "string",
            "description": "authorizeEmail"
          },
          "authorizePhoneNo": {
            "type": "string",
            "description": "authorizePhoneNo"
          },
          "certificateProfile": {
            "type": "string",
            "description": "certificateProfile"
          },
          "contractExpiration": {
            "type": "string",
            "format": "date-time",
            "description": "contract expiration"
          }
        },
        "required": [
          "authorizeMethod",
          "certificateStateID",
          "credentialExpireIn",
          "logInstance",
          "remainingCounter",
          "responseCode",
          "docId"
        ],
        "additionalProperties": false
      },
      "RegisterCertificateRequest": {
        "title": "RegisterCertificateRequest",
        "description": "(Schema options: { title: 'RegisterCertificateRequest', optional: [ 'acceptedApps' ], exclude: [\n    'agreementUUID',               'authMode',\n    'billCode',                    'certificate',\n    'credentialData',              'currentPasscode',\n    'downloadingFileUUID',         'encryption',\n    'hardwareInfo',                'hash',\n    'hashAlgorithm',               'language',\n    'mimeType',                    'multipleSigningFileData',\n    'newPasscode',                 'notificationSubject',\n    'relyingParty',                'relyingPartyBillCode',\n    'sharedAgreementUUID',         'sharedRelyingParty',\n    'signCloudMetaData',           'signingFileData',\n    'signingFileName',             'signingFileUUID',\n    'uploadingFileData',           'xmlDocument',\n    'xslTemplate',                 'xslTemplateUUID',\n    'authorizeMethod',             'certificateRequired',\n    'csrRequired',                 'keepCertificateSerialNumberEnabled',\n    'keepOldKeysEnabled',          'ltvEnabled',\n    'messagingMode',               'noPadding',\n    'p2pEnabled',                  'postbackEnabled',\n    'revokeOldCertificateEnabled', 'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementDetails": {
            "type": "object",
            "description": "Customer information. This one will be used as certificate information",
            "title": "AgreementDetails",
            "properties": {
              "applicationForm": {
                "type": "string",
                "description": "Remote Signing Service application form"
              },
              "authorizeLetter": {
                "type": "string",
                "description": "Authorize Letter by Government/Corporate"
              },
              "budgetID": {
                "type": "string",
                "description": "Budget ID",
                "maxLength": 32
              },
              "businessLicense": {
                "type": "string",
                "description": "businessLicense"
              },
              "citizenID": {
                "type": "string"
              },
              "country": {
                "type": "string",
                "description": "Country (Just two letter). E.g: VN",
                "maxLength": 2
              },
              "email": {
                "type": "string",
                "description": "Personal email"
              },
              "location": {
                "type": "string",
                "description": "location"
              },
              "organization": {
                "type": "string",
                "description": "Company name"
              },
              "organizationUnit": {
                "type": "string",
                "description": "Department name"
              },
              "passportID": {
                "type": "string",
                "description": "Personal Passport ID",
                "maxLength": 32
              },
              "personalID": {
                "type": "string",
                "description": "Personal ID"
              },
              "personalName": {
                "type": "string",
                "description": "Name of customer",
                "maxLength": 250
              },
              "photoActivityDeclaration": {
                "type": "string",
                "description": "Scanned photo of ‘Initial Activity/Alteration Declation’ that applied for corporate certificate"
              },
              "photoAuthorizeDelegate": {
                "type": "string",
                "description": "photoAuthorizeD"
              },
              "photoIDCard": {
                "type": "string",
                "description": "Scanned photo of ID Card that applied for personal certificate"
              },
              "requestForm": {
                "type": "string",
                "description": "Remote Signing Service request form for recovery, revocation …"
              },
              "stateOrProvince": {
                "type": "string",
                "description": "City or Province"
              },
              "taxID": {
                "type": "string",
                "description": "Tax ID",
                "maxLength": 32
              },
              "telephoneNumber": {
                "type": "string",
                "description": "Personal phone number"
              },
              "title": {
                "type": "string",
                "description": "Title of employee"
              },
              "unitCode": {
                "type": "string",
                "description": "Unit code",
                "maxLength": 32
              },
              "decisionNumber": {
                "type": "string",
                "description": "Decision number",
                "maxLength": 32
              },
              "socialInsuranceNumber": {
                "type": "string",
                "description": "Social insurance number",
                "maxLength": 32
              }
            },
            "additionalProperties": false
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "certificateProfile": {
            "type": "string",
            "description": "The profile of certificate will be used to enroll.\n    Once this parameter is absence, the default certificate profile is used based on RelyingParty properties",
            "enum": [
              "T2OSB21Y",
              "T2OSB22Y",
              "T2OSB23Y",
              "T2PSB21Y",
              "T2PSB22Y",
              "T2PSB23Y",
              "T2SFB21Y",
              "T2SFB22Y",
              "T2SFB23Y",
              "T2PSB21D",
              "RSSPOPTION",
              "T2PSB26M",
              "T2PSB23M"
            ],
            "maxLength": 64
          },
          "email": {
            "type": "string",
            "description": "Email of client/customer and used for Email Authorize Code authentication\n    In case of the Relying Party keep the customer information confidentially, it should be absence",
            "maxLength": 128
          },
          "mobileNo": {
            "type": "string",
            "description": "Mobile Number of client/customer. Known as contact address and used for SMS Authorize Code authentication.\n    In case of the Relying Party keep the customer information confidentially, it should be absence",
            "maxLength": 16
          },
          "sharedMode": {
            "type": "number",
            "description": "Which sharing mode will be used in the Remote Signing service.\n    Default value is private mode. It’s meant once Relying Party don’t use this parameter, the private mode is used instead",
            "enum": [
              1,
              2,
              3
            ]
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "notificationTemplate": {
            "type": "string",
            "description": "Message contains Authorize Code will be sent to customer’s Phone/Email.\n    Authorize Code is generated on Remote Signing and embedded into template.\n    E.g: Your authorize code: {AuthorizeCode}. Authorize Code is valid within 5 minutes."
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          },
          "requestId": {
            "type": "string",
            "description": "requestId",
            "maxLength": 64
          }
        },
        "required": [
          "agreementDetails",
          "certificateProfile",
          "email",
          "mobileNo",
          "sharedMode"
        ],
        "additionalProperties": false
      },
      "ChangeCertificateRequest": {
        "title": "ChangeCertificateRequest",
        "description": "(Schema options: { title: 'ChangeCertificateRequest', optional: [ 'isNewAgreementUUID' ], exclude: [\n    'authMode',                           'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mimeType',\n    'mobileNo',                           'multipleSigningFileData',\n    'newPasscode',                        'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementDetails": {
            "type": "object",
            "description": "Customer information. This one will be used as certificate information",
            "title": "AgreementDetails",
            "properties": {
              "applicationForm": {
                "type": "string",
                "description": "Remote Signing Service application form"
              },
              "authorizeLetter": {
                "type": "string",
                "description": "Authorize Letter by Government/Corporate"
              },
              "budgetID": {
                "type": "string",
                "description": "Budget ID",
                "maxLength": 32
              },
              "businessLicense": {
                "type": "string",
                "description": "businessLicense"
              },
              "citizenID": {
                "type": "string"
              },
              "country": {
                "type": "string",
                "description": "Country (Just two letter). E.g: VN",
                "maxLength": 2
              },
              "email": {
                "type": "string",
                "description": "Personal email"
              },
              "location": {
                "type": "string",
                "description": "location"
              },
              "organization": {
                "type": "string",
                "description": "Company name"
              },
              "organizationUnit": {
                "type": "string",
                "description": "Department name"
              },
              "passportID": {
                "type": "string",
                "description": "Personal Passport ID",
                "maxLength": 32
              },
              "personalID": {
                "type": "string",
                "description": "Personal ID"
              },
              "personalName": {
                "type": "string",
                "description": "Name of customer",
                "maxLength": 250
              },
              "photoActivityDeclaration": {
                "type": "string",
                "description": "Scanned photo of ‘Initial Activity/Alteration Declation’ that applied for corporate certificate"
              },
              "photoAuthorizeDelegate": {
                "type": "string",
                "description": "photoAuthorizeD"
              },
              "photoIDCard": {
                "type": "string",
                "description": "Scanned photo of ID Card that applied for personal certificate"
              },
              "requestForm": {
                "type": "string",
                "description": "Remote Signing Service request form for recovery, revocation …"
              },
              "stateOrProvince": {
                "type": "string",
                "description": "City or Province"
              },
              "taxID": {
                "type": "string",
                "description": "Tax ID",
                "maxLength": 32
              },
              "telephoneNumber": {
                "type": "string",
                "description": "Personal phone number"
              },
              "title": {
                "type": "string",
                "description": "Title of employee"
              },
              "unitCode": {
                "type": "string",
                "description": "Unit code",
                "maxLength": 32
              },
              "decisionNumber": {
                "type": "string",
                "description": "Decision number",
                "maxLength": 32
              },
              "socialInsuranceNumber": {
                "type": "string",
                "description": "Social insurance number",
                "maxLength": 32
              }
            },
            "additionalProperties": false
          },
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementDetails",
          "agreementUUID"
        ],
        "additionalProperties": false
      },
      "ChangePinCertificateRequest": {
        "title": "ChangePinCertificateRequest",
        "description": "(Schema options: { title: 'ChangePinCertificateRequest', exclude: [\n    'agreementDetails',                   'authMode',\n    'authorizeCode',                      'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'downloadingFileUUID',\n    'email',                              'encryption',\n    'hardwareInfo',                       'hash',\n    'hashAlgorithm',                      'language',\n    'mimeType',                           'mobileNo',\n    'multipleSigningFileData',            'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "currentPasscode": {
            "type": "string",
            "description": "currentPasscode",
            "maxLength": 64
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "newPasscode": {
            "type": "string",
            "description": "newPasscode",
            "maxLength": 64
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID",
          "currentPasscode",
          "newPasscode"
        ],
        "additionalProperties": false
      },
      "RevokeCertificateRequest": {
        "title": "RevokeCertificateRequest",
        "description": "(Schema options: { title: 'RevokeCertificateRequest', exclude: [\n    'agreementDetails',                   'authMode',\n    'authorizeCode',                      'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mimeType',\n    'mobileNo',                           'multipleSigningFileData',\n    'newPasscode',                        'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID"
        ],
        "additionalProperties": false
      },
      "RenewCertificateRequest": {
        "title": "RenewCertificateRequest",
        "description": "(Schema options: { title: 'RenewCertificateRequest', optional: [ 'certificateProfile', 'keepOldKeysEnabled', 'agreementDetails', 'isNewAgreementUUID' ], exclude: [\n    'authMode',                'billCode',\n    'certificate',             'credentialData',\n    'currentPasscode',         'downloadingFileUUID',\n    'email',                   'encryption',\n    'hardwareInfo',            'hash',\n    'hashAlgorithm',           'language',\n    'mimeType',                'mobileNo',\n    'multipleSigningFileData', 'newPasscode',\n    'notificationSubject',     'notificationTemplate',\n    'relyingParty',            'relyingPartyBillCode',\n    'sharedAgreementUUID',     'sharedRelyingParty',\n    'signCloudMetaData',       'signingFileData',\n    'signingFileName',         'signingFileUUID',\n    'uploadingFileData',       'xmlDocument',\n    'xslTemplate',             'xslTemplateUUID',\n    'authorizeMethod',         'certificateRequired',\n    'csrRequired',             'keepCertificateSerialNumberEnabled',\n    'ltvEnabled',              'messagingMode',\n    'noPadding',               'p2pEnabled',\n    'postbackEnabled',         'revokeOldCertificateEnabled',\n    'sharedMode',              'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementDetails": {
            "type": "object",
            "description": "Customer information. This one will be used as certificate information",
            "title": "AgreementDetails",
            "properties": {
              "applicationForm": {
                "type": "string",
                "description": "Remote Signing Service application form"
              },
              "authorizeLetter": {
                "type": "string",
                "description": "Authorize Letter by Government/Corporate"
              },
              "budgetID": {
                "type": "string",
                "description": "Budget ID",
                "maxLength": 32
              },
              "businessLicense": {
                "type": "string",
                "description": "businessLicense"
              },
              "citizenID": {
                "type": "string"
              },
              "country": {
                "type": "string",
                "description": "Country (Just two letter). E.g: VN",
                "maxLength": 2
              },
              "email": {
                "type": "string",
                "description": "Personal email"
              },
              "location": {
                "type": "string",
                "description": "location"
              },
              "organization": {
                "type": "string",
                "description": "Company name"
              },
              "organizationUnit": {
                "type": "string",
                "description": "Department name"
              },
              "passportID": {
                "type": "string",
                "description": "Personal Passport ID",
                "maxLength": 32
              },
              "personalID": {
                "type": "string",
                "description": "Personal ID"
              },
              "personalName": {
                "type": "string",
                "description": "Name of customer",
                "maxLength": 250
              },
              "photoActivityDeclaration": {
                "type": "string",
                "description": "Scanned photo of ‘Initial Activity/Alteration Declation’ that applied for corporate certificate"
              },
              "photoAuthorizeDelegate": {
                "type": "string",
                "description": "photoAuthorizeD"
              },
              "photoIDCard": {
                "type": "string",
                "description": "Scanned photo of ID Card that applied for personal certificate"
              },
              "requestForm": {
                "type": "string",
                "description": "Remote Signing Service request form for recovery, revocation …"
              },
              "stateOrProvince": {
                "type": "string",
                "description": "City or Province"
              },
              "taxID": {
                "type": "string",
                "description": "Tax ID",
                "maxLength": 32
              },
              "telephoneNumber": {
                "type": "string",
                "description": "Personal phone number"
              },
              "title": {
                "type": "string",
                "description": "Title of employee"
              },
              "unitCode": {
                "type": "string",
                "description": "Unit code",
                "maxLength": 32
              },
              "decisionNumber": {
                "type": "string",
                "description": "Decision number",
                "maxLength": 32
              },
              "socialInsuranceNumber": {
                "type": "string",
                "description": "Social insurance number",
                "maxLength": 32
              }
            },
            "additionalProperties": false
          },
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "certificateProfile": {
            "type": "string",
            "description": "The profile of certificate will be used to enroll.\n    Once this parameter is absence, the default certificate profile is used based on RelyingParty properties",
            "enum": [
              "T2OSB21Y",
              "T2OSB22Y",
              "T2OSB23Y",
              "T2PSB21Y",
              "T2PSB22Y",
              "T2PSB23Y",
              "T2SFB21Y",
              "T2SFB22Y",
              "T2SFB23Y",
              "T2PSB21D",
              "RSSPOPTION",
              "T2PSB26M",
              "T2PSB23M"
            ],
            "maxLength": 64
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "keepOldKeysEnabled": {
            "type": "boolean",
            "description": "keepOldKeysEnabled"
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID"
        ],
        "additionalProperties": false
      },
      "ForgetPasscodeCertificateRequest": {
        "title": "ForgetPasscodeCertificateRequest",
        "description": "(Schema options: { title: 'ForgetPasscodeCertificateRequest', optional: [ 'notificationSubject', 'notificationTemplate' ], exclude: [\n    'agreementDetails',                   'authMode',\n    'authorizeCode',                      'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mimeType',\n    'mobileNo',                           'multipleSigningFileData',\n    'newPasscode',                        'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "notificationSubject": {
            "type": "string",
            "description": "This parameter is used as Email subject for signing authorization. If OTP Email is used, this parameter is mandatory\n    It should be used in case of the Remote Signing will use owned SMTP to send OTP Email to customer."
          },
          "notificationTemplate": {
            "type": "string",
            "description": "Message contains Authorize Code will be sent to customer’s Phone/Email.\n    Authorize Code is generated on Remote Signing and embedded into template.\n    E.g: Your authorize code: {AuthorizeCode}. Authorize Code is valid within 5 minutes."
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID"
        ],
        "additionalProperties": false
      },
      "GetDetailCertificateRequest": {
        "title": "GetDetailCertificateRequest",
        "description": "(Schema options: { title: 'GetDetailCertificateRequest', exclude: [\n    'agreementDetails',                   'authMode',\n    'authorizeCode',                      'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mimeType',\n    'mobileNo',                           'multipleSigningFileData',\n    'newPasscode',                        'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID"
        ],
        "additionalProperties": false
      },
      "ApproveCertificateRequest": {
        "title": "ApproveCertificateRequest",
        "description": "(Schema options: { title: 'ApproveCertificateRequest', exclude: [\n    'agreementDetails',            'authMode',\n    'authorizeCode',               'billCode',\n    'certificateProfile',          'credentialData',\n    'currentPasscode',             'downloadingFileUUID',\n    'email',                       'encryption',\n    'hardwareInfo',                'hash',\n    'hashAlgorithm',               'language',\n    'mimeType',                    'mobileNo',\n    'multipleSigningFileData',     'newPasscode',\n    'notificationSubject',         'notificationTemplate',\n    'relyingParty',                'relyingPartyBillCode',\n    'sharedAgreementUUID',         'sharedRelyingParty',\n    'signCloudMetaData',           'signingFileData',\n    'signingFileName',             'signingFileUUID',\n    'uploadingFileData',           'xmlDocument',\n    'xslTemplate',                 'xslTemplateUUID',\n    'authorizeMethod',             'certificateRequired',\n    'csrRequired',                 'keepCertificateSerialNumberEnabled',\n    'keepOldKeysEnabled',          'ltvEnabled',\n    'messagingMode',               'noPadding',\n    'p2pEnabled',                  'postbackEnabled',\n    'revokeOldCertificateEnabled', 'sharedMode',\n    'signerInfoConstraintEnabled', 'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "certificate": {
            "type": "string",
            "description": "certificate",
            "enum": [
              "T2OSB21Y",
              "T2OSB22Y",
              "T2OSB23Y",
              "T2PSB21Y",
              "T2PSB22Y",
              "T2PSB23Y",
              "T2SFB21Y",
              "T2SFB22Y",
              "T2SFB23Y",
              "T2PSB21D",
              "RSSPOPTION",
              "T2PSB26M",
              "T2PSB23M"
            ]
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID",
          "certificate"
        ],
        "additionalProperties": false
      },
      "DisableCertificateRequest": {
        "title": "DisableCertificateRequest",
        "description": "(Schema options: { title: 'DisableCertificateRequest', exclude: [\n    'agreementDetails',                   'authMode',\n    'authorizeCode',                      'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mimeType',\n    'mobileNo',                           'multipleSigningFileData',\n    'newPasscode',                        'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID"
        ],
        "additionalProperties": false
      },
      "EnableCertificateRequest": {
        "title": "EnableCertificateRequest",
        "description": "(Schema options: { title: 'EnableCertificateRequest', exclude: [\n    'agreementDetails',                   'authMode',\n    'authorizeCode',                      'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mimeType',\n    'mobileNo',                           'multipleSigningFileData',\n    'newPasscode',                        'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID"
        ],
        "additionalProperties": false
      },
      "TransactionDataExcluding_id_WithRelations": {
        "title": "TransactionDataExcluding_id_WithRelations",
        "description": "(Schema options: { includeRelations: true, exclude: [ 'id' ] })",
        "properties": {
          "transactionId": {
            "type": "string"
          },
          "dataName": {
            "type": "string"
          },
          "dataValue": {
            "type": "string"
          },
          "dataKey": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "OwnerExcluding_id_WithRelations": {
        "title": "OwnerExcluding_id_WithRelations",
        "description": "(Schema options: { includeRelations: true, exclude: [ 'id' ] })",
        "properties": {
          "taxId": {
            "type": "string"
          },
          "budgetId": {
            "type": "string"
          },
          "citizenId": {
            "type": "string"
          },
          "passportId": {
            "type": "string"
          },
          "personalId": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "authorizeEmail": {
            "type": "string"
          },
          "authorizePhoneNo": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "telephoneNumber": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "ownerUUID": {
            "type": "string"
          },
          "type": {
            "type": "number"
          },
          "organizationUnit": {
            "type": "string"
          },
          "certificates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CertificateExcluding_id_WithRelations"
            }
          },
          "replyingParty": {
            "$ref": "#/components/schemas/ReplyingPartyExcluding_id_WithRelations"
          }
        },
        "additionalProperties": false
      },
      "ReplyingPartyExcluding_id_WithRelations": {
        "title": "ReplyingPartyExcluding_id_WithRelations",
        "description": "(Schema options: { includeRelations: true, exclude: [ 'id' ] })",
        "properties": {
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "rpUsername": {
            "type": "string"
          },
          "rpPassword": {
            "type": "string"
          },
          "rpPrivateKey": {
            "type": "string"
          },
          "rpPasscode": {
            "type": "string"
          },
          "rpSignature": {
            "type": "string"
          },
          "accessToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "rpP12File": {
            "type": "string"
          },
          "active": {
            "type": "boolean"
          },
          "owners": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OwnerExcluding_id_WithRelations"
            }
          }
        },
        "required": [
          "password",
          "code",
          "rpUsername",
          "rpPassword",
          "rpPrivateKey",
          "rpPasscode",
          "rpSignature",
          "rpP12File",
          "active"
        ],
        "additionalProperties": false
      },
      "AgreementExcluding_id_WithRelations": {
        "title": "AgreementExcluding_id_WithRelations",
        "description": "(Schema options: { includeRelations: true, exclude: [ 'id' ] })",
        "properties": {
          "replyingPartyId": {
            "type": "string"
          },
          "agrementUuid": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "applicationForm": {
            "type": "string"
          },
          "authorizeLetter": {
            "type": "string"
          },
          "businessLicense": {
            "type": "string"
          },
          "photoActivityDeclaration": {
            "type": "string"
          },
          "photoAuthorizeDelegate": {
            "type": "string"
          },
          "photoIdCard": {
            "type": "string"
          },
          "requestForm": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "telephoneNumber": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "type": "number"
          },
          "ownerId": {
            "type": "string"
          },
          "owner": {
            "$ref": "#/components/schemas/OwnerExcluding_id_WithRelations"
          },
          "certificates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CertificateExcluding_id_WithRelations"
            }
          }
        },
        "additionalProperties": false
      },
      "SignedFileExcluding_id_WithRelations": {
        "title": "SignedFileExcluding_id_WithRelations",
        "description": "(Schema options: { includeRelations: true, exclude: [ 'id' ] })",
        "properties": {
          "fileName": {
            "type": "string"
          },
          "minetype": {
            "type": "string"
          },
          "idFileServer": {
            "type": "string"
          },
          "ownerId": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "signedDate": {
            "type": "string",
            "format": "date-time"
          },
          "transactionId": {
            "type": "string"
          },
          "certificateId": {
            "type": "string"
          },
          "docId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "TransactionExcluding_id_WithRelations": {
        "title": "TransactionExcluding_id_WithRelations",
        "description": "(Schema options: { includeRelations: true, exclude: [ 'id' ] })",
        "properties": {
          "rpBillCode": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "status": {
            "type": "boolean"
          },
          "statusCode": {
            "type": "string"
          },
          "statusMessage": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "whereIsFrom": {
            "type": "string"
          },
          "certificateId": {
            "type": "string"
          },
          "ownerId": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "transactionData": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionDataExcluding_id_WithRelations"
            }
          },
          "certificate": {
            "$ref": "#/components/schemas/CertificateExcluding_id_WithRelations"
          },
          "owner": {
            "$ref": "#/components/schemas/OwnerExcluding_id_WithRelations"
          },
          "replyingParty": {
            "$ref": "#/components/schemas/ReplyingPartyExcluding_id_WithRelations"
          },
          "signedFiles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SignedFileExcluding_id_WithRelations"
            }
          }
        },
        "additionalProperties": false
      },
      "CertificateExcluding_id_WithRelations": {
        "title": "CertificateExcluding_id_WithRelations",
        "description": "(Schema options: { includeRelations: true, exclude: [ 'id' ] })",
        "properties": {
          "replyingPartyId": {
            "type": "string"
          },
          "agrementUuid": {
            "type": "string"
          },
          "thumbprint": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "certificateProfile": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "csr": {
            "type": "string"
          },
          "certificateDn": {
            "type": "string"
          },
          "serialNumber": {
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "issuerDn": {
            "type": "string"
          },
          "certificate": {
            "type": "string"
          },
          "sharedMode": {
            "type": "string"
          },
          "authModeSupported": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "ownerId": {
            "type": "string"
          },
          "stateId": {
            "type": "number"
          },
          "cloudCertificateId": {
            "type": "number"
          },
          "agreementId": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "telephoneNumber": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "createAt": {
            "type": "string",
            "format": "date-time"
          },
          "changedDate": {
            "type": "string",
            "format": "date-time"
          },
          "revokedDate": {
            "type": "string",
            "format": "date-time"
          },
          "renewedDate": {
            "type": "string",
            "format": "date-time"
          },
          "userRequestId": {
            "type": "string"
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "passCodeNotificationMethod": {
            "type": "string"
          },
          "isCertImported": {
            "type": "boolean"
          },
          "owner": {
            "$ref": "#/components/schemas/OwnerExcluding_id_WithRelations"
          },
          "agreement": {
            "$ref": "#/components/schemas/AgreementExcluding_id_WithRelations"
          },
          "transactions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionExcluding_id_WithRelations"
            }
          }
        },
        "additionalProperties": false
      },
      "UpdateAuthorizationInfoRequest": {
        "title": "UpdateAuthorizationInfoRequest",
        "description": "(Schema options: { title: 'UpdateAuthorizationInfoRequest', exclude: [\n    'agreementDetails',                   'authMode',\n    'authorizeCode',                      'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'encryption',\n    'hardwareInfo',                       'hash',\n    'hashAlgorithm',                      'language',\n    'mimeType',                           'multipleSigningFileData',\n    'newPasscode',                        'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "email": {
            "type": "string",
            "description": "Email of client/customer and used for Email Authorize Code authentication\n    In case of the Relying Party keep the customer information confidentially, it should be absence",
            "maxLength": 128
          },
          "mobileNo": {
            "type": "string",
            "description": "Mobile Number of client/customer. Known as contact address and used for SMS Authorize Code authentication.\n    In case of the Relying Party keep the customer information confidentially, it should be absence",
            "maxLength": 16
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID",
          "email",
          "mobileNo"
        ],
        "additionalProperties": false
      },
      "VerifyPassCodeCertificateRequest": {
        "title": "VerifyPassCodeCertificateRequest",
        "description": "(Schema options: { title: 'VerifyPassCodeCertificateRequest', exclude: [\n    'agreementDetails',            'authMode',\n    'billCode',                    'certificate',\n    'certificateProfile',          'credentialData',\n    'currentPasscode',             'downloadingFileUUID',\n    'email',                       'encryption',\n    'hardwareInfo',                'hash',\n    'hashAlgorithm',               'language',\n    'mimeType',                    'mobileNo',\n    'multipleSigningFileData',     'newPasscode',\n    'notificationSubject',         'notificationTemplate',\n    'relyingParty',                'relyingPartyBillCode',\n    'sharedAgreementUUID',         'sharedRelyingParty',\n    'signCloudMetaData',           'signingFileData',\n    'signingFileName',             'signingFileUUID',\n    'uploadingFileData',           'xmlDocument',\n    'xslTemplate',                 'xslTemplateUUID',\n    'authorizeMethod',             'certificateRequired',\n    'csrRequired',                 'keepCertificateSerialNumberEnabled',\n    'keepOldKeysEnabled',          'ltvEnabled',\n    'messagingMode',               'noPadding',\n    'p2pEnabled',                  'postbackEnabled',\n    'revokeOldCertificateEnabled', 'sharedMode',\n    'signerInfoConstraintEnabled', 'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID"
        ],
        "additionalProperties": false
      },
      "Credentials": {
        "title": "Credentials",
        "description": "(Schema options: { title: 'Credentials' })",
        "properties": {
          "username": {
            "type": "string",
            "description": "RP username"
          },
          "password": {
            "type": "string",
            "description": "RP password"
          },
          "rpCode": {
            "type": "string",
            "description": "RP code"
          }
        },
        "required": [
          "username",
          "password",
          "rpCode"
        ],
        "additionalProperties": false
      },
      "RPRequestExcluding_accessToken-refreshToken-id-createdAt_": {
        "title": "RPRequestExcluding_accessToken-refreshToken-id-createdAt_",
        "description": "(Schema options: { exclude: [ 'accessToken', 'refreshToken', 'id', 'createdAt' ] })",
        "properties": {
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "rpUsername": {
            "type": "string"
          },
          "rpPassword": {
            "type": "string"
          },
          "rpPrivateKey": {
            "type": "string"
          },
          "rpPasscode": {
            "type": "string"
          },
          "rpSignature": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "rpP12File": {
            "type": "string"
          },
          "active": {
            "type": "boolean"
          }
        },
        "required": [
          "password",
          "code",
          "rpUsername",
          "rpPassword",
          "rpPrivateKey",
          "rpPasscode",
          "rpSignature",
          "rpP12File",
          "active"
        ],
        "additionalProperties": false
      },
      "RPRequest": {
        "title": "RPRequest",
        "properties": {
          "id": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "rpUsername": {
            "type": "string"
          },
          "rpPassword": {
            "type": "string"
          },
          "rpPrivateKey": {
            "type": "string"
          },
          "rpPasscode": {
            "type": "string"
          },
          "rpSignature": {
            "type": "string"
          },
          "accessToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "rpP12File": {
            "type": "string"
          },
          "active": {
            "type": "boolean"
          }
        },
        "required": [
          "password",
          "code",
          "rpUsername",
          "rpPassword",
          "rpPrivateKey",
          "rpPasscode",
          "rpSignature",
          "rpP12File",
          "active"
        ],
        "additionalProperties": false
      },
      "ReplyingPartyPartial": {
        "title": "ReplyingPartyPartial",
        "description": "(Schema options: { partial: true })",
        "properties": {
          "id": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "rpUsername": {
            "type": "string"
          },
          "rpPassword": {
            "type": "string"
          },
          "rpPrivateKey": {
            "type": "string"
          },
          "rpPasscode": {
            "type": "string"
          },
          "rpSignature": {
            "type": "string"
          },
          "accessToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "rpP12File": {
            "type": "string"
          },
          "active": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "FileSigningRequest": {
        "title": "FileSigningRequest",
        "description": "(Schema options: { title: 'FileSigningRequest', optional: [ 'authMode', 'authorizeCode', 'signCloudMetaData', 'xmlDocument', 'signingFileData', 'notificationSubject', 'notificationTemplate', 'signingApp', 'docId' ], exclude: [\n    'agreementDetails',                   'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mobileNo',\n    'multipleSigningFileData',            'newPasscode',\n    'relyingParty',                       'relyingPartyBillCode',\n    'sharedAgreementUUID',                'sharedRelyingParty',\n    'signingFileName',                    'signingFileUUID',\n    'uploadingFileData',                  'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "authMode": {
            "type": "string",
            "description": "Specifies one of the authorization modes.\n    “EXPLICIT/PIN”: the authorization process is managed by the signature application, authentication method is passcode.\n    “EXPLICIT/OTP-SMS”: the authorization process is managed by the signature application, authentication method is otp sms.\n    “EXPLICIT/OTP-EMAIL”: the authorization process is managed by the signature application, authentication method is otp email.",
            "enum": [
              "EXPLICIT/PIN",
              "EXPLICIT/OTP-SMS",
              "EXPLICIT/OTP-EMAIL"
            ]
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "mimeType": {
            "type": "string",
            "description": "In case of PDF signer, mimeType is ‘application/pdf’",
            "maxLength": 200
          },
          "notificationSubject": {
            "type": "string",
            "description": "This parameter is used as Email subject for signing authorization. If OTP Email is used, this parameter is mandatory\n    It should be used in case of the Remote Signing will use owned SMTP to send OTP Email to customer."
          },
          "notificationTemplate": {
            "type": "string",
            "description": "Message contains Authorize Code will be sent to customer’s Phone/Email.\n    Authorize Code is generated on Remote Signing and embedded into template.\n    E.g: Your authorize code: {AuthorizeCode}. Authorize Code is valid within 5 minutes."
          },
          "signCloudMetaData": {
            "type": "object",
            "description": "SignCloudMetaData contains additional signer properties which are used for PDF signature display.\n    - Coordinate\n    - Background image\n    - Signer location\n    - Signer reason\n    - Text color\n    In case of XML sigining, it will indicate which type should be applied XMLDSig, XML-XaDES, signature zone\n    Once this parameter is not used, Remote Signing should use the default value that already configured in the system\n    In case of counter signing process, SignCloudMetaData included 2 MetaDatas for customer and Relying Party signer properties",
            "title": "SignCloudMetaData",
            "properties": {
              "counterSigning": {
                "type": "object",
                "description": "meta data for counter signing",
                "title": "CounterSigning",
                "properties": {
                  "entry": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "description": "entry list of counter signing",
                      "title": "Entry",
                      "properties": {
                        "key": {
                          "type": "string",
                          "description": "key"
                        },
                        "value": {
                          "type": "string",
                          "description": "value"
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              },
              "singletonSigning": {
                "type": "object",
                "description": "meta data for singleton signing",
                "title": "SingletonSigning",
                "properties": {
                  "entry": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "description": "entry list of singleton signing",
                      "title": "Entry",
                      "properties": {
                        "key": {
                          "type": "string",
                          "description": "key"
                        },
                        "value": {
                          "type": "string",
                          "description": "value"
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "additionalProperties": false
          },
          "signingFileData": {
            "type": "string",
            "description": "Base64 encode data of file that will be signed"
          },
          "xmlDocument": {
            "type": "string",
            "description": "xmlDocument"
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID",
          "mimeType"
        ],
        "additionalProperties": false
      },
      "FileMultipleSigningRequest": {
        "title": "FileMultipleSigningRequest",
        "description": "(Schema options: { title: 'FileMultipleSigningRequest', optional: [ 'authMode', 'authorizeCode', 'signCloudMetaData', 'xmlDocument', 'signingFileData', 'notificationSubject', 'notificationTemplate', 'signingApp', 'docId' ], exclude: [\n    'agreementDetails',                   'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mobileNo',\n    'multipleSigningFileData',            'newPasscode',\n    'relyingParty',                       'relyingPartyBillCode',\n    'sharedAgreementUUID',                'sharedRelyingParty',\n    'signingFileName',                    'signingFileUUID',\n    'uploadingFileData',                  'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "authMode": {
            "type": "string",
            "description": "Specifies one of the authorization modes.\n    “EXPLICIT/PIN”: the authorization process is managed by the signature application, authentication method is passcode.\n    “EXPLICIT/OTP-SMS”: the authorization process is managed by the signature application, authentication method is otp sms.\n    “EXPLICIT/OTP-EMAIL”: the authorization process is managed by the signature application, authentication method is otp email.",
            "enum": [
              "EXPLICIT/PIN",
              "EXPLICIT/OTP-SMS",
              "EXPLICIT/OTP-EMAIL"
            ]
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "mimeType": {
            "type": "string",
            "description": "In case of PDF signer, mimeType is ‘application/pdf’",
            "maxLength": 200
          },
          "notificationSubject": {
            "type": "string",
            "description": "This parameter is used as Email subject for signing authorization. If OTP Email is used, this parameter is mandatory\n    It should be used in case of the Remote Signing will use owned SMTP to send OTP Email to customer."
          },
          "notificationTemplate": {
            "type": "string",
            "description": "Message contains Authorize Code will be sent to customer’s Phone/Email.\n    Authorize Code is generated on Remote Signing and embedded into template.\n    E.g: Your authorize code: {AuthorizeCode}. Authorize Code is valid within 5 minutes."
          },
          "signCloudMetaData": {
            "type": "object",
            "description": "SignCloudMetaData contains additional signer properties which are used for PDF signature display.\n    - Coordinate\n    - Background image\n    - Signer location\n    - Signer reason\n    - Text color\n    In case of XML sigining, it will indicate which type should be applied XMLDSig, XML-XaDES, signature zone\n    Once this parameter is not used, Remote Signing should use the default value that already configured in the system\n    In case of counter signing process, SignCloudMetaData included 2 MetaDatas for customer and Relying Party signer properties",
            "title": "SignCloudMetaData",
            "properties": {
              "counterSigning": {
                "type": "object",
                "description": "meta data for counter signing",
                "title": "CounterSigning",
                "properties": {
                  "entry": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "description": "entry list of counter signing",
                      "title": "Entry",
                      "properties": {
                        "key": {
                          "type": "string",
                          "description": "key"
                        },
                        "value": {
                          "type": "string",
                          "description": "value"
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              },
              "singletonSigning": {
                "type": "object",
                "description": "meta data for singleton signing",
                "title": "SingletonSigning",
                "properties": {
                  "entry": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "description": "entry list of singleton signing",
                      "title": "Entry",
                      "properties": {
                        "key": {
                          "type": "string",
                          "description": "key"
                        },
                        "value": {
                          "type": "string",
                          "description": "value"
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "additionalProperties": false
          },
          "signingFileData": {
            "type": "string",
            "description": "Base64 encode data of file that will be signed"
          },
          "xmlDocument": {
            "type": "string",
            "description": "xmlDocument"
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID",
          "mimeType"
        ],
        "additionalProperties": false
      },
      "AuthorizeSigningRequest": {
        "title": "AuthorizeSigningRequest",
        "description": "(Schema options: { title: 'AuthorizeSigningRequest', optional: [ 'signCloudMetaData' ], exclude: [\n    'agreementDetails',            'authMode',\n    'certificate',                 'certificateProfile',\n    'credentialData',              'currentPasscode',\n    'downloadingFileUUID',         'email',\n    'encryption',                  'hardwareInfo',\n    'hash',                        'hashAlgorithm',\n    'language',                    'mimeType',\n    'mobileNo',                    'multipleSigningFileData',\n    'newPasscode',                 'notificationSubject',\n    'notificationTemplate',        'relyingParty',\n    'relyingPartyBillCode',        'sharedAgreementUUID',\n    'sharedRelyingParty',          'signingFileData',\n    'signingFileName',             'signingFileUUID',\n    'uploadingFileData',           'xmlDocument',\n    'xslTemplate',                 'xslTemplateUUID',\n    'authorizeMethod',             'certificateRequired',\n    'csrRequired',                 'keepCertificateSerialNumberEnabled',\n    'keepOldKeysEnabled',          'ltvEnabled',\n    'messagingMode',               'noPadding',\n    'p2pEnabled',                  'postbackEnabled',\n    'revokeOldCertificateEnabled', 'sharedMode',\n    'signerInfoConstraintEnabled', 'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "billCode": {
            "type": "string",
            "description": "billCode",
            "maxLength": 64
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "signCloudMetaData": {
            "type": "object",
            "description": "SignCloudMetaData contains additional signer properties which are used for PDF signature display.\n    - Coordinate\n    - Background image\n    - Signer location\n    - Signer reason\n    - Text color\n    In case of XML sigining, it will indicate which type should be applied XMLDSig, XML-XaDES, signature zone\n    Once this parameter is not used, Remote Signing should use the default value that already configured in the system\n    In case of counter signing process, SignCloudMetaData included 2 MetaDatas for customer and Relying Party signer properties",
            "title": "SignCloudMetaData",
            "properties": {
              "counterSigning": {
                "type": "object",
                "description": "meta data for counter signing",
                "title": "CounterSigning",
                "properties": {
                  "entry": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "description": "entry list of counter signing",
                      "title": "Entry",
                      "properties": {
                        "key": {
                          "type": "string",
                          "description": "key"
                        },
                        "value": {
                          "type": "string",
                          "description": "value"
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              },
              "singletonSigning": {
                "type": "object",
                "description": "meta data for singleton signing",
                "title": "SingletonSigning",
                "properties": {
                  "entry": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "description": "entry list of singleton signing",
                      "title": "Entry",
                      "properties": {
                        "key": {
                          "type": "string",
                          "description": "key"
                        },
                        "value": {
                          "type": "string",
                          "description": "value"
                        }
                      },
                      "additionalProperties": false
                    }
                  }
                },
                "additionalProperties": false
              }
            },
            "additionalProperties": false
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID",
          "billCode"
        ],
        "additionalProperties": false
      },
      "HashSigningRequest": {
        "title": "HashSigningRequest",
        "description": "(Schema options: { title: 'HashSigningRequest', optional: [ 'hashAlgorithm', 'encryption', 'authorizeCode', 'hash' ], exclude: [\n    'agreementDetails',                   'billCode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'hardwareInfo',                       'language',\n    'mobileNo',                           'multipleSigningFileData',\n    'newPasscode',                        'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "authMode": {
            "type": "string",
            "description": "Specifies one of the authorization modes.\n    “EXPLICIT/PIN”: the authorization process is managed by the signature application, authentication method is passcode.\n    “EXPLICIT/OTP-SMS”: the authorization process is managed by the signature application, authentication method is otp sms.\n    “EXPLICIT/OTP-EMAIL”: the authorization process is managed by the signature application, authentication method is otp email.",
            "enum": [
              "EXPLICIT/PIN",
              "EXPLICIT/OTP-SMS",
              "EXPLICIT/OTP-EMAIL"
            ]
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "encryption": {
            "type": "string",
            "description": "encryption"
          },
          "hash": {
            "type": "string",
            "description": "hash"
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "hashAlgorithm": {
            "type": "string",
            "description": "hashAlgorithm",
            "enum": [
              "SHA-256",
              "SHA-384",
              "SHA-512"
            ]
          },
          "mimeType": {
            "type": "string",
            "description": "In case of PDF signer, mimeType is ‘application/pdf’",
            "maxLength": 200
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID",
          "authMode",
          "mimeType"
        ],
        "additionalProperties": false
      },
      "AuthorizeHashSigningRequest": {
        "title": "AuthorizeHashSigningRequest",
        "description": "(Schema options: { title: 'AuthorizeHashSigningRequest', exclude: [\n    'agreementDetails',                   'authMode',\n    'certificate',                        'certificateProfile',\n    'credentialData',                     'currentPasscode',\n    'downloadingFileUUID',                'email',\n    'encryption',                         'hardwareInfo',\n    'hash',                               'hashAlgorithm',\n    'language',                           'mimeType',\n    'mobileNo',                           'multipleSigningFileData',\n    'newPasscode',                        'notificationSubject',\n    'notificationTemplate',               'relyingParty',\n    'relyingPartyBillCode',               'sharedAgreementUUID',\n    'sharedRelyingParty',                 'signCloudMetaData',\n    'signingFileData',                    'signingFileName',\n    'signingFileUUID',                    'uploadingFileData',\n    'xmlDocument',                        'xslTemplate',\n    'xslTemplateUUID',                    'authorizeMethod',\n    'certificateRequired',                'csrRequired',\n    'keepCertificateSerialNumberEnabled', 'keepOldKeysEnabled',\n    'ltvEnabled',                         'messagingMode',\n    'noPadding',                          'p2pEnabled',\n    'postbackEnabled',                    'revokeOldCertificateEnabled',\n    'sharedMode',                         'signerInfoConstraintEnabled',\n    'timestampEnabled'\n  ] })",
        "properties": {
          "agreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "newAgreementUUID": {
            "type": "string",
            "description": "Identify the client/customer/agreement number",
            "maxLength": 64
          },
          "billCode": {
            "type": "string",
            "description": "billCode",
            "maxLength": 64
          },
          "authorizeCode": {
            "type": "string",
            "description": "Authorize Code provided by customer\n    In this case of passcode (EXPLICIT/PIN) is used, authorize code is passcode",
            "maxLength": 31,
            "minLength": 6
          },
          "hashs": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "hashs",
              "items": {
                "type": "string"
              }
            }
          },
          "entityName": {
            "type": "string",
            "description": "entityName",
            "maxLength": 200
          },
          "uuid": {
            "type": "string",
            "description": "uuid",
            "maxLength": 200
          },
          "waitForApproval": {
            "type": "boolean",
            "description": "waitForApproval"
          },
          "ownerEmail": {
            "type": "string",
            "description": "ownerEmail",
            "maxLength": 200
          },
          "ownerMobileNo": {
            "type": "string",
            "description": "ownerMobileNo",
            "maxLength": 200
          },
          "ownerPassword": {
            "type": "string",
            "description": "ownerPassword",
            "maxLength": 200
          },
          "ownerUUID": {
            "type": "string",
            "description": "ownerUUID",
            "maxLength": 200
          },
          "ownerUsername": {
            "type": "string",
            "description": "ownerUsername",
            "maxLength": 200
          },
          "signDocument": {
            "type": "boolean",
            "description": "signDocument",
            "maxLength": 200
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "signingApp": {
            "type": "string"
          },
          "docId": {
            "type": "string",
            "description": "document id",
            "maxLength": 50
          },
          "passCodeNotificationMethod": {
            "type": "string",
            "description": "PassCodeNotificationMethod",
            "enum": [
              "EMAIL",
              "SMS"
            ]
          },
          "noSendPassCodeToEndUserEnabled": {
            "type": "boolean",
            "description": "noSendPassCodeToEndUserEnabled"
          },
          "templateID": {
            "type": "number",
            "description": "templateID"
          },
          "isNewAgreementUUID": {
            "type": "boolean",
            "description": "Is create new agreementUUID"
          }
        },
        "required": [
          "agreementUUID",
          "billCode"
        ],
        "additionalProperties": false
      },
      "Request": {
        "title": "Request",
        "description": "(Schema options: { title: 'Request', exclude: [] })",
        "properties": {
          "serial_number": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "serial_number",
              "items": {
                "type": "string"
              }
            }
          },
          "from_date": {
            "type": "string"
          },
          "to_date": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "GetSignedNumberRequest": {
        "title": "GetSignedNumberRequest",
        "properties": {
          "serial_number": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "serial_number",
              "items": {
                "type": "string"
              }
            }
          },
          "from_date": {
            "type": "string"
          },
          "to_date": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Certificate": {
        "title": "Certificate",
        "properties": {
          "id": {
            "type": "string"
          },
          "replyingPartyId": {
            "type": "string"
          },
          "agrementUuid": {
            "type": "string"
          },
          "thumbprint": {
            "type": "string"
          },
          "rsspBillCode": {
            "type": "string"
          },
          "rpBillCode": {
            "type": "string"
          },
          "transactionId": {
            "type": "string"
          },
          "certificateProfile": {
            "type": "string"
          },
          "country": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "organization": {
            "type": "string"
          },
          "organizationUnit": {
            "type": "string"
          },
          "personalName": {
            "type": "string"
          },
          "csr": {
            "type": "string"
          },
          "certificateDn": {
            "type": "string"
          },
          "serialNumber": {
            "type": "string"
          },
          "validFrom": {
            "type": "string",
            "format": "date-time"
          },
          "validTo": {
            "type": "string",
            "format": "date-time"
          },
          "issuerDn": {
            "type": "string"
          },
          "certificate": {
            "type": "string"
          },
          "sharedMode": {
            "type": "string"
          },
          "authModeSupported": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "ownerId": {
            "type": "string"
          },
          "stateId": {
            "type": "number"
          },
          "cloudCertificateId": {
            "type": "number"
          },
          "agreementId": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string"
          },
          "telephoneNumber": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "createAt": {
            "type": "string",
            "format": "date-time"
          },
          "changedDate": {
            "type": "string",
            "format": "date-time"
          },
          "revokedDate": {
            "type": "string",
            "format": "date-time"
          },
          "renewedDate": {
            "type": "string",
            "format": "date-time"
          },
          "userRequestId": {
            "type": "string"
          },
          "acceptedApps": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "passCodeNotificationMethod": {
            "type": "string"
          },
          "isCertImported": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UserCredentials": {
        "title": "UserCredentials",
        "description": "(Schema options: { title: 'UserCredentials' })",
        "properties": {
          "username": {
            "type": "string",
            "description": "username"
          },
          "password": {
            "type": "string",
            "description": "password"
          }
        },
        "required": [
          "username",
          "password"
        ],
        "additionalProperties": false
      },
      "User": {
        "title": "User",
        "description": "(Schema options: { title: 'User', optional: [ 'phoneNo' ], exclude: [ 'accessToken', 'refreshToken', 'id', 'createdAt', 'updatedAt' ] })",
        "properties": {
          "createrId": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNo": {
            "type": "string"
          },
          "isAdmin": {
            "type": "boolean"
          },
          "role": {
            "type": "string"
          },
          "metaData": {
            "type": "string"
          },
          "isNeedChangePassword": {
            "type": "boolean"
          },
          "isDeleted": {
            "type": "boolean"
          }
        },
        "required": [
          "username",
          "password",
          "fullName",
          "email",
          "isAdmin",
          "role"
        ],
        "additionalProperties": false
      },
      "UserRequest": {
        "title": "UserRequest",
        "properties": {
          "id": {
            "type": "string"
          },
          "createrId": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "accessToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNo": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "isAdmin": {
            "type": "boolean"
          },
          "role": {
            "type": "string"
          },
          "metaData": {
            "type": "string"
          },
          "isNeedChangePassword": {
            "type": "boolean"
          },
          "isDeleted": {
            "type": "boolean"
          }
        },
        "required": [
          "username",
          "password",
          "fullName",
          "email",
          "phoneNo",
          "createdAt",
          "isAdmin",
          "role"
        ],
        "additionalProperties": false
      },
      "UserOptional_phoneNo-username-password-email-isAdmin-fullName_Excluding_accessToken-refreshToken-id-createdAt-updatedAt_": {
        "title": "UserOptional_phoneNo-username-password-email-isAdmin-fullName_Excluding_accessToken-refreshToken-id-createdAt-updatedAt_",
        "description": "(Schema options: { optional: [ 'phoneNo', 'username', 'password', 'email', 'isAdmin', 'fullName' ], exclude: [ 'accessToken', 'refreshToken', 'id', 'createdAt', 'updatedAt' ] })",
        "properties": {
          "createrId": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNo": {
            "type": "string"
          },
          "isAdmin": {
            "type": "boolean"
          },
          "role": {
            "type": "string"
          },
          "metaData": {
            "type": "string"
          },
          "isNeedChangePassword": {
            "type": "boolean"
          },
          "isDeleted": {
            "type": "boolean"
          }
        },
        "required": [
          "role"
        ],
        "additionalProperties": false
      },
      "UserResponse": {
        "title": "UserResponse",
        "properties": {
          "responseCode": {
            "type": "number",
            "description": "Code describes the result",
            "maxLength": 11
          },
          "responseMessage": {
            "type": "string",
            "description": "Message describes the result in detail",
            "maxLength": 256
          },
          "token": {
            "type": "string",
            "description": "token"
          },
          "data": {
            "type": "object",
            "description": "data"
          },
          "status": {
            "type": "boolean",
            "description": "status"
          }
        },
        "required": [
          "responseCode"
        ],
        "additionalProperties": false
      },
      "UserOptional_phoneNo-username-password-email-isAdmin-fullName-role_Excluding_accessToken-refreshToken-id-createdAt-updatedAt_": {
        "title": "UserOptional_phoneNo-username-password-email-isAdmin-fullName-role_Excluding_accessToken-refreshToken-id-createdAt-updatedAt_",
        "description": "(Schema options: { optional: [ 'phoneNo', 'username', 'password', 'email', 'isAdmin', 'fullName', 'role' ], exclude: [ 'accessToken', 'refreshToken', 'id', 'createdAt', 'updatedAt' ] })",
        "properties": {
          "createrId": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNo": {
            "type": "string"
          },
          "isAdmin": {
            "type": "boolean"
          },
          "role": {
            "type": "string"
          },
          "metaData": {
            "type": "string"
          },
          "isNeedChangePassword": {
            "type": "boolean"
          },
          "isDeleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UserExcluding_id_WithRelations": {
        "title": "UserExcluding_id_WithRelations",
        "description": "(Schema options: { includeRelations: true, exclude: [ 'id' ] })",
        "properties": {
          "createrId": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "accessToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "phoneNo": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "isAdmin": {
            "type": "boolean"
          },
          "role": {
            "type": "string"
          },
          "metaData": {
            "type": "string"
          },
          "isNeedChangePassword": {
            "type": "boolean"
          },
          "isDeleted": {
            "type": "boolean"
          }
        },
        "required": [
          "username",
          "password",
          "fullName",
          "email",
          "phoneNo",
          "createdAt",
          "isAdmin",
          "role"
        ],
        "additionalProperties": false
      },
      "ChangePaswordRequest": {
        "title": "ChangePaswordRequest",
        "properties": {
          "oldPassword": {
            "type": "string",
            "description": "oldPassword"
          },
          "newPassword": {
            "type": "string",
            "description": "oldPassword"
          }
        },
        "required": [
          "oldPassword",
          "newPassword"
        ],
        "additionalProperties": false
      }
    }
  }
}