{
  "openapi": "3.0.1",
  "info": {
    "title": "Entrust Identity as a Service Issuance API",
    "description": "The Instant ID as a Service Issuance API provides functionality that allows a customer to manage printers and to use\nthose printers to print cards, encode magstrips on cards and encode chips on cards. The Issuance API is available as\nboth a swagger file which is available as a link from this document and also as SDKs that can be downloaded from the\nGetting Started section of the developer portal which is accessed from the Instant ID as a Service Admin portal.\n\nBefore using the Instant ID as a Service Issuance API, the customer must create an Issuance API application using the\nadmin portal of their Instant ID as a Service Issuance account. When creating an Issuance API application the customer\nmust specify a role that controls what capabilities their application can perform. The two default roles provided in\nInstant ID as a Service Issuance are:\n\n- Issuance Administrator - allows the application to both manage printers and perform print operations\n- Issuance Operator - allows the application to perform print operations\n\nWhen the Issuance API application is created, credentials are provided that consist of:\n\n- the Instant ID as a Service Account URL\n- the Application Id\n- the Application Shared Secret\n\nThese values should be downloaded from Instant ID as a Service. They are required input to a client application using\nthe Instant ID as a Service API application.\n\nThe first step all Issuance API client applications must do is to authenticate to Instant ID as a Service. This is done\nby calling the \"Admin API Authentication\" operation. The application Id and shared secret values that were downloaded\nfrom Instant ID as a Service are provided as input parameters to this method. The method returns an authToken which is\nprovided as input to all of the other operations.\n\nThe Issuance API provides the following operations to manage printers:\n\n- createPrinter - register a printer. Required arguments are a unique name and the printer deviceId. The new printer is\n  assigned a unique UUID which is used to reference the printer in all other operations.\n- readPrinter - return information about the printer.\n- readPrinters - return information about all of the printers for this Instant ID as a Service account.\n- deletePrinter - delete the specified printer.\n- replacePrinter - modify the specified printer.\n- getPrintersSummary - get a count of the number of printers in the current Instant ID as a Service account.\n- readPrinterPreference - get printer preferences for the specified printer.\n- replacePrinterPreference - update printer preferences for the specified printer.\n\nThe Issuance API provides the following print operations:\n\n- print - submit a print job to the specified printer. The print job can include images to be printed on the printer,\n  information to be encoded on a magstrip or APDUs to be written to the chip on the card. The print operation returns a\n  unique UUID for the new print job.\n- getPrintStatus - return the status of the specified print job.\n- cancelPrint - cancel the specified print job\n- updatePrint - for smart card encoding, send additional APDUs to the card.\n\nRefer to the rest of this document for more details on the operations provided by the Issuance API.",
    "contact": {
      "name": "Entrust Identity as a Service",
      "url": "https://www.entrust.com/",
      "email": "support@entrust.com"
    },
    "version": "5.45"
  },
  "servers": [
    {
      "url": "https://customer.region.trustedauth.com"
    }
  ],
  "tags": [
    {
      "name": "Admin Auth",
      "description": "Administration authentication controllers"
    },
    {
      "name": "Printers",
      "description": "Printer controllers"
    },
    {
      "name": "PrintQueue",
      "description": "Print Queue controllers"
    },
    {
      "name": "BasicPrint",
      "description": "Issuance controllers"
    },
    {
      "name": "Tenants",
      "description": "Tenant controllers"
    },
    {
      "name": "Applications",
      "description": "Application controllers"
    },
    {
      "name": "Roles",
      "description": "Role controllers"
    },
    {
      "name": "EnrollmentOperations",
      "description": "Enrollment controllers"
    },
    {
      "name": "PrintAPI",
      "description": "Print enrollments"
    },
    {
      "name": "MobileFlashPassAPI",
      "description": "Issue Mobile Flash Pass"
    },
    {
      "name": "Webhooks",
      "description": "Webhook Controllers"
    }
  ],
  "paths": {
    "/api/web/v1/adminapi/authenticate": {
      "post": {
        "tags": [
          "Admin Auth"
        ],
        "summary": "Authenticate to an Admin API application.",
        "operationId": "authenticateAdminApiUsingPOST",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AdminApiAuthentication"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdminApiAuthenticationResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        }
      }
    },
    "/api/web/v1/applicationinfo": {
      "get": {
        "tags": [
          "Applications"
        ],
        "summary": "List application information",
        "description": "List application information. Caller requires the APPLICATIONS:VIEW permission.",
        "operationId": "listApplicationInfoUsingGET",
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApplicationInfo"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "APPLICATIONS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/applications/adminapi": {
      "get": {
        "tags": [
          "Applications"
        ],
        "summary": "List Admin API application",
        "description": "List Admin API application. Caller requires the APPLICATIONS:VIEW permission.",
        "operationId": "listAdminApiApplicationsUsingGET",
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/AdminApiApplication"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "APPLICATIONS:VIEW"
            ]
          }
        ]
      },
      "post": {
        "tags": [
          "Applications"
        ],
        "summary": "Create Admin API application",
        "description": "Create an Admin API application. Caller requires the APPLICATIONS:ADD permission.",
        "operationId": "createAdminApiApplicationUsingPOST",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AdminApiApplicationParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdminApiApplication"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "APPLICATIONS:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v1/applications/adminapi/regenerate/{id}": {
      "put": {
        "tags": [
          "Applications"
        ],
        "summary": "Regenerate Admin API application shared secret",
        "description": "Regenerate the shared secret for an Admin API application. Caller requires the APPLICATIONS:EDIT permission.",
        "operationId": "updateAdminApiSharedSecretUsingPUT",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the application to be updated.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "APPLICATIONS:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v1/applications/adminapi/{id}": {
      "get": {
        "tags": [
          "Applications"
        ],
        "summary": "Get Admin API application",
        "description": "Get an Admin API application. Caller requires the APPLICATIONS:VIEW permission.",
        "operationId": "getAdminApiApplicationUsingGET",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the application to be fetched.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdminApiApplication"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "APPLICATIONS:VIEW"
            ]
          }
        ]
      },
      "put": {
        "tags": [
          "Applications"
        ],
        "summary": "Update Admin API application",
        "description": "Update an Admin API application. Caller requires the APPLICATIONS:EDIT permission.",
        "operationId": "updateAdminApiApplicationUsingPUT",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the application to be updated.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AdminApiApplicationParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdminApiApplication"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "APPLICATIONS:EDIT"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "Applications"
        ],
        "summary": "Remove Admin API application",
        "description": "Remove an Admin API application. Caller requires the APPLICATIONS:REMOVE permission.",
        "operationId": "removeAdminApiApplicationUsingDELETE",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the application to be removed.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "APPLICATIONS:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/applications/templates": {
      "get": {
        "tags": [
          "Applications"
        ],
        "summary": "List application templates",
        "description": "List application templates. Caller requires the TEMPLATES:VIEW permission.",
        "operationId": "listApplicationTemplatesUsingGET",
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApplicationTemplate"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TEMPLATES:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/enrollment/api": {
      "put": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Update enrollment records. Caller requires the ENROLLMENTS:EDIT permission.",
        "operationId": "updateEnrollments",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentApiPayload"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:EDIT"
            ]
          }
        ]
      },
      "post": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Create enrollment records. Caller requires the ENROLLMENTS:ADD permission.",
        "operationId": "createEnrollments",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentApiPayload"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnrollmentApiPayload"
                }
              }
            }
          },
          "202": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnrollmentApiPayload"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:ADD"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Delete enrollment records. Caller requires the ENROLLMENTS:REMOVE permission.",
        "operationId": "deleteEnrollments",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentApiPayload"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/enrollment/api/readEnrollments": {
      "post": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Read enrollment records. Caller requires the ENROLLMENTS:VIEW permission.",
        "operationId": "readEnrollments",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReadEnrollmentApiPayload"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnrollmentApiPayload"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/mobileFlashPass": {
      "get": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Get all issued bulk mobile flash pass request(s)",
        "description": "Get all issued bulk mobile flash pass request(s). Caller requires the issuance view permission to access this resource.",
        "operationId": "getIssueMFPBulkOperationDetails",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IssueMobileFlashPassBulkOperationDetails"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      },
      "post": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Create bulk mobile flash pass request (Deprecated)",
        "description": "Create bulk mobile flash pass request. Caller requires the issuance add permission to access this resource.",
        "operationId": "issueMobileFlashPassBulkOperation",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentMultiFlashPassApiRequestV1"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueMobileFlashPassBulkOperationDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v1/mobileFlashPass/cancel/{id}": {
      "delete": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Cancel mobile flash pass bulk operation",
        "description": "Cancel mobile flash pass bulk operation. Caller requires the issuance remove permission to access this resource.",
        "operationId": "cancelMobileFlashPassBulkOperation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The bulk operation ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/mobileFlashPass/download/logs/{id}": {
      "get": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Download mobile flash pass bulk operation logs",
        "description": "Download logs for mobile flash pass bulk operation. Caller requires the issuance view permission to access this resource.",
        "operationId": "downloadMFPBulkOperationLogs",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The bulk operation ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/mobileFlashPass/downloadUri/{walletType}/{enrollmentId}": {
      "get": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Get mobile flash pass download URI",
        "description": "Retrieves the Mobile Flash Pass download URI for the specified wallet and enrollment. Caller requires the ISSUANCE:VIEW permission to access this resource.",
        "operationId": "getFlashPassDownloadURI",
        "parameters": [
          {
            "name": "walletType",
            "in": "path",
            "description": "The wallet to retrieve the download URI for.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "google | apple"
          },
          {
            "name": "enrollmentId",
            "in": "path",
            "description": "The unique enrollment ID obtained from Read Enrollments request.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eyJ3b3JrZmxvd0lkIjoiZDkyZmU1OTgtYmU5MC00N2QzLWJmNWEtZmM2MDJmZjNkOGY0Iiwid2hlcmVDbGF1c2UiOnsiQVVUT1NFUVVFTkNFRklFTEQxIjoiMiJ9fQ=="
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/mobileFlashPass/downloads/apple/{enrollmentId}/{claimToken}": {
      "get": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Download Apple Wallet mobile flash pass.",
        "description": "Downloads a single Apple Wallet mobile flash pass. Caller requires the ISSUANCE:VIEW permission to access this resource.",
        "operationId": "downloadAppleMobileFlashPass",
        "parameters": [
          {
            "name": "enrollmentId",
            "in": "path",
            "description": "The unique enrollment ID obtained from Read Enrollments request.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eyJ3b3JrZmxvd0lkIjoiZDkyZmU1OTgtYmU5MC00N2QzLWJmNWEtZmM2MDJmZjNkOGY0Iiwid2hlcmVDbGF1c2UiOnsiQVVUT1NFUVVFTkNFRklFTEQxIjoiMiJ9fQ=="
          },
          {
            "name": "claimToken",
            "in": "path",
            "description": "The Apple Wallet random claim token.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/vnd.apple.pkpass": {
                "schema": {
                  "type": "string",
                  "format": "byte"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/mobileFlashPass/downloads/google/{enrollmentId}/{claimToken}": {
      "get": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Download Google Wallet mobile flash pass.",
        "description": "Returns a single Google Wallet mobile flash pass URL for download. Caller requires the ISSUANCE:VIEW permission to access this resource.",
        "operationId": "downloadGoogleMobileFlashPass",
        "parameters": [
          {
            "name": "enrollmentId",
            "in": "path",
            "description": "The unique enrollment ID obtained from Read Enrollments request.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "example": "eyJ3b3JrZmxvd0lkIjoiZDkyZmU1OTgtYmU5MC00N2QzLWJmNWEtZmM2MDJmZjNkOGY0Iiwid2hlcmVDbGF1c2UiOnsiQVVUT1NFUVVFTkNFRklFTEQxIjoiMiJ9fQ=="
          },
          {
            "name": "claimToken",
            "in": "path",
            "description": "The Google Wallet random claim token.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/mobileFlashPass/{id}": {
      "get": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Get mobile flash pass request details",
        "description": "Get mobile flash pass request details. Caller requires the issuance view permission to access this resource.",
        "operationId": "getMobileFlashPassRequestDetails",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The mobile flash pass request id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MobileFlashPassRequestDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/print": {
      "get": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Get all bulk print enrollments request(s)",
        "description": "Get all print enrollments request(s). Caller requires the issuance view permission to access this resource.",
        "operationId": "getPrintEnrollmentsBulkOperationDetails",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BulkPrintOperationDetails"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      },
      "post": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Create bulk print enrollment request",
        "description": "Create bulk print enrollment request. Caller requires the issuance add permission to access this resource.",
        "operationId": "printEnrollmentsBulkOperation",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentMultiPrintApiRequestV1"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkPrintOperationDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v1/print/cancel/{id}": {
      "delete": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Cancel print enrollments bulk operation",
        "description": "Cancel print enrollments bulk operation. Caller requires the issuance remove permission to access this resource.",
        "operationId": "cancelPrintEnrollmentsBulkOperation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The bulk operation ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/print/download/logs/{id}": {
      "get": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Download print enrollments bulk operation logs",
        "description": "Download logs for print enrollments bulk operation. Caller requires the issuance view permission to access this resource.",
        "operationId": "downloadPrintEnrollmentsBulkOperationLogs",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The bulk operation ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/print/resume": {
      "post": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Resume a print job after pre print operation",
        "description": "Resume printing for a print job after pre print operation. Caller requires the ISSUANCE:ADD permission to access this resource.",
        "operationId": "resumePrintJob",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ResumePrintJobApiRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResumePrintJobApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v1/print/single": {
      "post": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Print single enrollment",
        "description": "Prints a single enrollment by Design Name or Enrollment ID. Caller requires the ISSUANCE:ADD permission to access this resource.",
        "operationId": "singleEnrollmentPrint",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentPrintApiRequestV1"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnrollmentPrintApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v1/print/{id}": {
      "get": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Get print request details",
        "description": "Get print request details. Caller requires the issuance view permission to access this resource.",
        "operationId": "getPrintRequestDetails",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The print request id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrintRequestDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/printcounts": {
      "get": {
        "tags": [
          "BasicPrint"
        ],
        "summary": "Get counts for different prints.",
        "operationId": "getPrintCounts",
        "responses": {
          "200": {
            "description": "Ok",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrintCountResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "REPORTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/printers": {
      "get": {
        "tags": [
          "Printers"
        ],
        "summary": "Gets all printers.",
        "operationId": "readPrinters",
        "parameters": [
          {
            "name": "fields",
            "in": "query",
            "description": "The model properties to return. This parameter is NOT supported in Instant ID as a Service and will not impact the returned list.",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "withStatus",
            "in": "query",
            "description": "Indicates if the current status of each printer is retrieved. Defaults to false if not specified. This parameter is NOT supported in Instant ID as a Service and will not impact the returned list.",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Printer"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:VIEW"
            ]
          }
        ]
      },
      "post": {
        "tags": [
          "Printers"
        ],
        "summary": "Creates a printer.",
        "operationId": "createPrinter",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Printer"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceIdResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "409": {
            "description": "Conflict, printer already exists with the given Name or Device ID.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v1/printers/print/{printStatusId}": {
      "get": {
        "tags": [
          "BasicPrint"
        ],
        "summary": "Retrieve print job status.",
        "operationId": "getPrintStatus",
        "parameters": [
          {
            "name": "printStatusId",
            "in": "path",
            "description": "Print ID",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Ok",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BasicPrintResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "BasicPrint"
        ],
        "summary": "Cancel an executing print job.",
        "operationId": "cancelPrint",
        "parameters": [
          {
            "name": "printStatusId",
            "in": "path",
            "description": "Print ID",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:REMOVE"
            ]
          }
        ]
      },
      "patch": {
        "tags": [
          "BasicPrint"
        ],
        "summary": "Updates an executing print job.",
        "operationId": "updatePrint",
        "parameters": [
          {
            "name": "printStatusId",
            "in": "path",
            "description": "Print ID",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BasicPrintUpdateRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrintOperationResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v1/printers/summary": {
      "get": {
        "tags": [
          "Printers"
        ],
        "summary": "Retrieve count of registered printers",
        "operationId": "printersSummary",
        "responses": {
          "200": {
            "description": "Successfully retreived printer summary",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrinterSummaryResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "REPORTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/printers/{printerId}": {
      "get": {
        "tags": [
          "Printers"
        ],
        "summary": "Return a specified printer.",
        "operationId": "readPrinter",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "The unique 32-36 character id obtained from the Get All Printers request. Example - 0b0db90a-6091-416f-8559-2f2181e941c3",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Printer"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:VIEW"
            ]
          }
        ]
      },
      "put": {
        "tags": [
          "Printers"
        ],
        "summary": "Update the specified printer.",
        "operationId": "replacePrinter",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "The unique 32-36 character id obtained from the Get All Printers request. Example - 0b0db90a-6091-416f-8559-2f2181e941c3",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Printer"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:EDIT"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "Printers"
        ],
        "summary": "Deletes a printer by ID.",
        "operationId": "deletePrinter",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "The unique 32-36 character id obtained from the Get All Printers request. Example - 0b0db90a-6091-416f-8559-2f2181e941c3",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/printers/{printerId}/preferences": {
      "get": {
        "tags": [
          "Printers"
        ],
        "summary": "Get the preferences for the specified printer.",
        "operationId": "readPrinterPreferences",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "The unique 32-36 character id obtained from the Get All Printers request. Example - 0b0db90a-6091-416f-8559-2f2181e941c3",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrinterPreferences"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:VIEW"
            ]
          }
        ]
      },
      "put": {
        "tags": [
          "Printers"
        ],
        "summary": "Update the preferences for the specified printer.",
        "operationId": "replacePrinterPreferences",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "The unique 32-36 character id obtained from the Get All Printers request. Example - 0b0db90a-6091-416f-8559-2f2181e941c3",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PrinterPreferences"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v1/printers/{printerId}/print": {
      "post": {
        "tags": [
          "BasicPrint"
        ],
        "summary": "Perform basic print job.",
        "operationId": "print",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "The unique 32-36 character id obtained from the Get All Printers request. Example - 0b0db90a-6091-416f-8559-2f2181e941c3",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BasicPrintRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrintOperationResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v1/printers/{printerId}/{tenantId}": {
      "delete": {
        "tags": [
          "Printers"
        ],
        "summary": "Deletes a lost printer by printer id and lost tenant ID.",
        "operationId": "deletePrinterWithTenantId",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "Printer ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tenantId",
            "in": "path",
            "description": "Printer ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/prints": {
      "get": {
        "tags": [
          "PrintQueue"
        ],
        "summary": "List all print jobs.",
        "operationId": "getPrintJobs",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/PrintJob"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/prints/paginated": {
      "post": {
        "tags": [
          "PrintQueue"
        ],
        "summary": "View print jobs in paginated form.",
        "operationId": "getPaginatedPrintJobs",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrintQueuePaging"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/prints/{printJobId}": {
      "get": {
        "tags": [
          "PrintQueue"
        ],
        "summary": "Get the given print job.",
        "operationId": "getPrintJob",
        "parameters": [
          {
            "name": "printJobId",
            "in": "path",
            "description": "Print ID",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrintJob"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "PrintQueue"
        ],
        "summary": "Delete the given print job.",
        "operationId": "deletePrintJob",
        "parameters": [
          {
            "name": "printJobId",
            "in": "path",
            "description": "Print ID",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/prints/{printerId}/cancelAllActivePrints": {
      "post": {
        "tags": [
          "PrintQueue"
        ],
        "summary": "Cancel all active jobs for a given printer.",
        "description": "This API cancels the ongoing job on printer. This should be used if any job is stuck on printer i.e. the printer is not processing the job anymore and is stuck in busy state for more than 5 minutes.",
        "operationId": "cancelAllActivePrintJobs",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "Printer Id. This can be obtained from the id value in the response of Return a Specified Printer API call.",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/roles": {
      "get": {
        "tags": [
          "Roles"
        ],
        "summary": "List roles",
        "description": "List all roles. Caller requires the ROLES:VIEW permission.",
        "operationId": "listSiteRolesUsingGET",
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoleUser"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ROLES:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/roles/{id}": {
      "get": {
        "tags": [
          "Roles"
        ],
        "summary": "Get a role",
        "description": "Get a specified role. Caller requires the ROLES:VIEW permission.",
        "operationId": "getSiteRoleUsingGET",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the role to be fetched.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Role"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ROLES:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/tenants/{id}/spidentityprovider": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "summary": "Get Tenant Identity Provider and Service Provider OIDC Application for Tenant Management.",
        "description": "Get Tenant Identity Provider and Service Provider OIDC Application for Tenant Management. Caller requires the SPIDENTITYPROVIDERS:VIEW permission.",
        "operationId": "getSpIdentityProviderUsingGET",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the tenant to be obtained.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpIdentityProvider"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "SPIDENTITYPROVIDERS:VIEW"
            ]
          }
        ]
      },
      "put": {
        "tags": [
          "Tenants"
        ],
        "summary": "Set Tenant Identity Provider and Service Provider OIDC Application for Tenant Management",
        "description": "Set Tenant Identity Provider and Service Provider OIDC Application for Tenant Management. Caller requires the SPIDENTITYPROVIDERS:EDIT permission.",
        "operationId": "setSpIdentityProviderUsingPUT",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the tenant to be updated.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SpIdentityProviderParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SpIdentityProvider"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "SPIDENTITYPROVIDERS:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v1/users/{userid}/roles": {
      "get": {
        "tags": [
          "Roles"
        ],
        "summary": "List all site roles assigned to user",
        "description": "List all site roles assigned to the specified user. Caller requires the USERSITEROLES:VIEW permission.",
        "operationId": "getUserRolesUsingGET",
        "parameters": [
          {
            "name": "userid",
            "in": "path",
            "description": "The UUID of the user.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Role"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "USERSITEROLES:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v1/users/{userid}/roles/{roleid}": {
      "get": {
        "tags": [
          "Roles"
        ],
        "summary": "Get site role assigned to user",
        "description": "Get the specified site role assigned to the specified user. Caller requires the USERSITEROLES:VIEW permission.",
        "operationId": "getUserSiteRoleAssociationUsingGET",
        "parameters": [
          {
            "name": "userid",
            "in": "path",
            "description": "The UUID of the user to which the role is assigned.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "roleid",
            "in": "path",
            "description": "The UUID of the role assigned to the user.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Role"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "USERSITEROLES:VIEW"
            ]
          }
        ]
      },
      "put": {
        "tags": [
          "Roles"
        ],
        "summary": "Set user role",
        "description": "Set the role of the given user to the given role. Caller requires the USERSITEROLES:EDIT permission.",
        "operationId": "modifyUserSiteRoleAssociationUsingPUT",
        "parameters": [
          {
            "name": "userid",
            "in": "path",
            "description": "The UUID of the user whose role is to be modified.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "roleid",
            "in": "path",
            "description": "The UUID of the role which will be assigned to the user.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "USERSITEROLES:EDIT"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "Roles"
        ],
        "summary": "Delete a site role from a user",
        "description": "Delete a user's site role. Caller requires the USERSITEROLES:REMOVE permission.",
        "operationId": "deleteUserSiteRoleAssociationUsingDELETE",
        "parameters": [
          {
            "name": "userid",
            "in": "path",
            "description": "The UUID of the user from which the role is to be removed.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "roleid",
            "in": "path",
            "description": "The UUID of the role that is to be removed.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "USERSITEROLES:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v1/webhooks": {
      "get": {
        "tags": [
          "Webhooks"
        ],
        "summary": "List webhooks",
        "description": "Return a list of webhooks. Caller is required to have WEBHOOKS:VIEW permission.",
        "operationId": "getWebhooksUsingGET",
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Webhook"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "WEBHOOKS:VIEW"
            ]
          }
        ]
      },
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Register a webhook",
        "description": "Register a webhook with callback URL, webhook events etc. Caller is required to have WEBHOOKS:ADD permission.",
        "operationId": "createWebhookUsingPOST",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Webhook"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "WEBHOOKS:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v1/webhooks/test/{id}": {
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Test a webhook",
        "description": "Sends a dummy payload to the registered webhook callback URL. Use this to ensure your API is ready to start accepting webhook notifications. Caller is required to have WEBHOOKS:EDIT permission.",
        "operationId": "testWebhookUsingPOST",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the webhook to test.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "WEBHOOKS:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v1/webhooks/{id}": {
      "get": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Get a webhook by id",
        "description": "Get the specified webhook. Caller is required to have WEBHOOKS:VIEW permission.",
        "operationId": "readWebhookUsingGET",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the webhook.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Webhook"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "WEBHOOKS:VIEW"
            ]
          }
        ]
      },
      "put": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Update a webhook",
        "description": "Update a webhook with callback URL, webhook events etc. Caller is required to have WEBHOOKS:EDIT permission.",
        "operationId": "updateWebhookUsingPUT",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the webhook to be updated.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Webhook"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "WEBHOOKS:EDIT"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Delete a webhook",
        "description": "Delete a registered webhook by ID. Caller is required to have WEBHOOKS:REMOVE permission.",
        "operationId": "deleteWebhookUsingDELETE",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the webhook to be deleted.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "WEBHOOKS:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v2/enrollments": {
      "put": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Update Enrollments",
        "description": "Update one or more enrollments. Caller requires the ENROLLMENTS:EDIT permission.",
        "operationId": "updateEnrollmentsV2",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "description": "Properties of the enrollment (Id of the enrollment and list of fields with field name and updated value).",
                "items": {
                  "$ref": "#/components/schemas/EnrollmentRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/EnrollmentResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:EDIT"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Delete Enrollments",
        "description": "Delete one or more enrollments. Caller requires the ENROLLMENTS:DELETE permission.",
        "operationId": "deleteEnrollmentsV2",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentDelete"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/EnrollmentResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:DELETE"
            ]
          }
        ]
      }
    },
    "/api/web/v2/enrollments/enrollmentDesigns": {
      "get": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Read Enrollment designs name",
        "description": "Read enrollment designs name. Caller requires the ENROLLMENTS:VIEW permission.",
        "operationId": "readEnrollmentsDesignNames",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/EnrollmentDesignName"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v2/enrollments/read/{enrollmentDesignName}": {
      "post": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Read Enrollments",
        "description": "Read one or more enrollments. Caller requires the ENROLLMENTS:VIEW permission.",
        "operationId": "readEnrollmentsV2",
        "parameters": [
          {
            "name": "enrollmentDesignName",
            "in": "path",
            "description": "Name of the enrollment design",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "offset",
            "in": "query",
            "description": "Page number offset, default value is 1",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "Page size limit, default value is 50",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "description": "List of fields having name and value to search for an enrollment",
                "items": {
                  "$ref": "#/components/schemas/Field"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/EnrollmentResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v2/enrollments/{enrollmentDesignName}": {
      "post": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Create Enrollments",
        "description": "Create one or more enrollments. Caller requires the ENROLLMENTS:ADD permission.",
        "operationId": "createEnrollmentsV2",
        "parameters": [
          {
            "name": "enrollmentDesignName",
            "in": "path",
            "description": "Name of the enrollment design",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "description": "Properties of the enrollment (List of fields with field and value).",
                "items": {
                  "$ref": "#/components/schemas/EnrollmentRequest"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/EnrollmentResponse"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v2/enrollments/{id}": {
      "get": {
        "tags": [
          "EnrollmentOperations"
        ],
        "summary": "Read Enrollment",
        "description": "Read an enrollment. Caller requires the ENROLLMENTS:VIEW permission.",
        "operationId": "readEnrollmentV2",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Id of the enrollment (In Base64 string format)",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnrollmentResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ENROLLMENTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v2/mobileFlashPass": {
      "post": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Create bulk mobile flash pass request V2",
        "description": "Create bulk mobile flash pass request. Caller requires the ISSUANCE:ADD permission to access this resource.<br/><br/><b>Note:</b> Request body payload must not exceed 200 KB.",
        "operationId": "issueMobileFlashPassBulkOperationV2",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentMultiFlashPassApiRequestV2"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueMobileFlashPassBulkOperationDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v2/mobileFlashPass/download/logs/{id}": {
      "get": {
        "tags": [
          "MobileFlashPassAPI"
        ],
        "summary": "Download mobile flash pass logs V2",
        "description": "Download logs for mobile flash pass. Produces a JSON file attachment. Caller requires the issuance view permission to access this resource.",
        "operationId": "downloadMFPLogsV2",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The bulk operation ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v2/print": {
      "post": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Create bulk print enrollment request V2",
        "description": "Create bulk print enrollment request. Caller requires the ISSUANCE:ADD permission to access this resource.<br/><br/><b>Note:</b> Request body payload must not exceed 200 KB.",
        "operationId": "printEnrollmentsBulkOperationV2",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EnrollmentMultiPrintApiRequestV2"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkPrintOperationDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v2/print/download/logs/{id}": {
      "get": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Download print enrollments logs V2",
        "description": "Download logs for print enrollments. Caller requires the issuance view permission to access this resource.",
        "operationId": "downloadPrintEnrollmentsLogsV2",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The request ID",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v2/print/single": {
      "post": {
        "tags": [
          "PrintAPI"
        ],
        "summary": "Print single enrollment",
        "description": "Prints a single enrollment by Design Name or Enrollment ID. Caller requires the ISSUANCE:ADD permission to access this resource.",
        "operationId": "singleEnrollmentPrintV2",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SingleEnrollmentPrintRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnrollmentPrintApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v2/printers": {
      "get": {
        "tags": [
          "Printers"
        ],
        "summary": "Gets all printers.",
        "operationId": "getPrinters",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Printer"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v2/printers/restricted": {
      "get": {
        "tags": [
          "Printers"
        ],
        "summary": "Gets printers with group restriction.",
        "operationId": "getPrintersWithGroupRestriction",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Printer"
                  }
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v2/printers/{deviceId}": {
      "get": {
        "tags": [
          "Printers"
        ],
        "summary": "Return a specified printer using printer device id.",
        "operationId": "readPrinterByDeviceId",
        "parameters": [
          {
            "name": "deviceId",
            "in": "path",
            "description": "The unique 16 character id obtained from the printer LCD. Example - F71523262A998271",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9]{16}",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Printer"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v2/printers/{printerId}": {
      "put": {
        "tags": [
          "Printers"
        ],
        "summary": "Update the specified printer.",
        "operationId": "updatePrinterV2",
        "parameters": [
          {
            "name": "printerId",
            "in": "path",
            "description": "The unique 32–36 character id obtained from the Get All Printers request.",
            "required": true,
            "schema": {
              "pattern": "[a-fA-F0-9-]{32,36}",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePrinterV2Request"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Printer"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "The specified resource was not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "PRINTERS:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v2/prints/paginated": {
      "post": {
        "tags": [
          "PrintQueue"
        ],
        "summary": "View print jobs in paginated form.",
        "operationId": "getPaginatedPrintJobsV2",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchParams"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PrintQueuePaging"
                }
              }
            }
          },
          "401": {
            "description": "Authorization information is missing or invalid",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "ISSUANCE:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v4/async/tenants/{id}/createresult": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "summary": "Get the result of an asynchronous tenant creation operation",
        "description": "Get the result of a tenant creation operation for a service provider. The results for a given operation can only be retrieved once. Caller requires the TENANTS:ADD permission from a service provider role.",
        "operationId": "getCreateTenantAsyncResultUsingGET",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the create tenant operation whose results are to be fetched.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTenantResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v4/async/tenants/{id}/createstatus": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "summary": "Get the status of an asynchronous tenant creation operation",
        "description": "Get the status of a tenant creation operation for a service provider. Caller requires the TENANTS:VIEW permission from a service provider role.",
        "operationId": "getCreateTenantAsyncStatusUsingGET",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the create tenant operation whose status is be fetched.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTenantAsyncStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v4/tenants": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "summary": "Create a tenant",
        "description": "Create a new tenant for a service provider. Caller requires the TENANTS:ADD permission from a service provider role.<br/>Notes on CreateTenantParms attributes: <br/><b>adminUser</b> (UserParms):<ul>    <li>The locale attribute is ignored if provided. It defaults to English for the first super administrator.</li>    <li>The status attributes is ignored if provided. It defaults to ACTIVE for the first super administrator.</li>    <li>The userId is required.</li></ul><b>adminApiApplication</b> (AdminApiApplicationParms):<ul>    <li>The spRoleId attribute is not supported. An error is returned if provided.</li></ul><b>entitlements</b> (EntitlementParms):<ul>    <li>The contractMode attribute is required. It must be either TRIAL or PRODUCTION.</li>    <li>The quantity attribute is required.</li>    <li><b>entitlements.issuance</b> (EntitlementParms.IssuanceParms):</li>    <li>The entitlements.issuance attribute is required if you are creating an Issuance tenant.</li>    <li>The serviceBundles attribute is required. One service bundle (of those supported by the service provider contract) must be defined.</li></ul>",
        "operationId": "createTenantUsingPOST",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTenantResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:ADD"
            ]
          }
        ]
      }
    },
    "/api/web/v4/tenants/entitlements/usage": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "summary": "Lists a page of entitlement usage information",
        "description": "Returns tenant usage information for the provided search parameters. Caller requires the TENANTS:VIEW permission. The following searchByAttributes are supported: <ul><li>startTime: a <b>mandatory</b> String value representing an ISO-8601 date in UTC time (e.g., 2018-08-04T18:15:30). Allowed operators are: GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, LESS_THAN_OR_EQUAL. </li><li>endTime: a String value representing an ISO-8601 date in UTC time (e.g., 2018-08-04T18:15:30). Allowed operators are: GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, LESS_THAN_OR_EQUAL. </li><li>tenantId: The UUID of the tenant. Allowed operators are: EQUALS.</li><li>isTrial: true or false. Allowed operator: EQUALS. </li><li>usageType: the type of entitlement: USERS, ISSUANCE. Allowed operator: EQUALS. </li></ul>The orderByAttribute supports these attribute names: startTime.",
        "operationId": "getEntitlementUsageInfoUsingPOST",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UsageInfoPage"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v4/tenants/{id}": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "summary": "Get a tenant",
        "description": "Get the specified tenant for a service provider. Caller requires the TENANTS:VIEW permission from a service provider role.",
        "operationId": "getTenantUsingGET",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the tenant to be fetched.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Tenant"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:VIEW"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "Tenants"
        ],
        "summary": "Delete a tenant",
        "description": "Delete the specified tenant for a service provider. Caller requires the TENANTS:REMOVE permission from a service provider role.",
        "operationId": "removeTenantUsingDELETE",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the tenant to be removed.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v4/tenants/{id}/lock": {
      "put": {
        "tags": [
          "Tenants"
        ],
        "summary": "Lock a tenant",
        "description": "Lock the specified tenant for a service provider. Caller requires the TENANTS:EDIT permission from a service provider role.",
        "operationId": "lockTenantUsingPUT",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the tenant to be locked.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v4/tenants/{id}/unlock": {
      "put": {
        "tags": [
          "Tenants"
        ],
        "summary": "Unlock a tenant",
        "description": "Unlock the specified tenant for a service provider. Caller requires the TENANTS:EDIT permission from a service provider role.",
        "operationId": "unlockTenantUsingPUT",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The UUID of the tenant to be unlocked.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v4/tenants/{tenantid}/entitlements": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "summary": "Get entitlements for tenant",
        "description": "Get all entitlements for the specified tenant of the current service provider. Caller requires the SPENTITLEMENTS:VIEW permission from a service provider role.",
        "operationId": "getTenantEntitlementsUsingGET",
        "parameters": [
          {
            "name": "tenantid",
            "in": "path",
            "description": "The UUID of the tenant whose entitlements are to be fetched.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Entitlement"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "SPENTITLEMENTS:VIEW"
            ]
          }
        ]
      },
      "put": {
        "tags": [
          "Tenants"
        ],
        "summary": "Set an entitlement",
        "description": "Set the entitlement for the specified tenant. Caller requires the SPENTITLEMENTS:EDIT permission from a service provider role.",
        "operationId": "setTenantEntitlementUsingPUT",
        "parameters": [
          {
            "name": "tenantid",
            "in": "path",
            "description": "The UUID of the tenant whose entitlement is to be set.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EntitlementParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "SPENTITLEMENTS:EDIT"
            ]
          }
        ]
      }
    },
    "/api/web/v4/tenants/{tenantid}/entitlements/{type}": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "summary": "Get an entitlement",
        "description": "Get the specified entitlement for a tenant. Caller requires the SPENTITLEMENTS:VIEW permission from a service provider role.",
        "operationId": "getTenantEntitlementUsingGET",
        "parameters": [
          {
            "name": "tenantid",
            "in": "path",
            "description": "The UUID of the tenant whose entitlement is to be fetched.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "path",
            "description": "The type of entitlement (only USERS is supported).",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "USERS",
                "TRANSACTIONS"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Entitlement"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "SPENTITLEMENTS:VIEW"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "Tenants"
        ],
        "summary": "Delete an entitlement",
        "description": "Delete the entitlement for the specified tenant. Caller requires the SPENTITLEMENTS:REMOVE permission from a service provider role.",
        "operationId": "deleteTenantEntitlementUsingDELETE",
        "parameters": [
          {
            "name": "tenantid",
            "in": "path",
            "description": "The UUID of the tenant whose entitlement is to be deleted.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "path",
            "description": "The type of entitlement. Allowed values: SMSVOICE.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "SPENTITLEMENTS:REMOVE"
            ]
          }
        ]
      }
    },
    "/api/web/v4/tenantspaged": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "summary": "Lists a page of tenants",
        "description": "Returns tenants for the provided search parameters. Caller requires the TENANTS:VIEW permission. The following searchByAttributes are supported: <ul><li>hostname: a String up to 100 characters. Allowed operators are: EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, STARTS_WITH, ENDS_WITH.</li><li>companyName: a String up to 100 characters. Allowed operators are: EQUALS, NOT_EQUALS, CONTAINS, NOT_CONTAINS, STARTS_WITH, ENDS_WITH.</li><li>contractMode: PRODUCTION, TRIAL, UNKNOWN. Allowed operator: EQUALS.</li><li>locked: true or false. Allowed operator: EQUALS. </li><li>serviceProvider: true or false. Allowed operator: EQUALS. </li><li>authenticationAccount: true or false. Allowed operator: EQUALS. </li><li>issuanceAccount: true or false. Allowed operator: EQUALS. </li><li>spIdp: true or false. Allowed operator: EQUALS. </li></ul>The orderByAttribute supports these attribute names: hostname, companyName, contractMode, locked, serviceProvider, authenticationAccount, issuanceAccount, spIdp.",
        "operationId": "getTenantsPageUsingPOST",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantsPage"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:VIEW"
            ]
          }
        ]
      }
    },
    "/api/web/v5/async/tenants": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "summary": "Create a tenant asynchronously",
        "description": "<p>Create a new tenant for a service provider. Caller requires the TENANTS:ADD permission from a service provider role.</p><p>Notes on CreateTenantParms attributes: </p><b>adminUser</b> (UserParms):<ul>    <li>The locale attribute is ignored if provided. It defaults to English for the first super administrator.</li>    <li>The status attributes is ignored if provided. It defaults to ACTIVE for the first super administrator.</li>    <li>The userId is required.</li></ul><b>adminApiApplication</b> (AdminApiApplicationParms):<ul>    <li>The spRoleId attribute is not supported. An error is returned if provided.</li></ul><b>entitlements</b> (EntitlementParms):<ul>    <li>The contractMode attribute is required. It must be either TRIAL or PRODUCTION.</li>    <li>The quantity attribute is required.</li>    <li><b>entitlements.issuance</b> (EntitlementParms.IssuanceParms):</li>    <li>The entitlements.issuance attribute is required if you are creating an Issuance tenant.</li>    <li>The serviceBundles attribute is required. One service bundle (of those supported by the service provider contract) must be defined.</li></ul>",
        "operationId": "createTenantAsyncUsingPOST",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantParms"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTenantAsyncStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "401": {
            "description": "Access denied",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorInfo"
                }
              }
            }
          }
        },
        "security": [
          {
            "AdminAPIAuthentication": [
              "TENANTS:ADD"
            ]
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "AdditionalFeature": {
        "type": "object",
        "properties": {
          "enhancedGeoLocation": {
            "type": "boolean",
            "description": "Enhanced geo location additional feature.",
            "example": true
          }
        },
        "description": "Additional feature"
      },
      "AdminApiApplication": {
        "required": [
          "applicationTemplate",
          "name"
        ],
        "type": "object",
        "properties": {
          "allowLongLivedToken": {
            "type": "boolean",
            "description": "Determines if the application can use a long-lived token for authentication.",
            "example": true
          },
          "applicationTemplate": {
            "type": "string",
            "description": "The name of the application template specific to this application type.",
            "example": "Administration API"
          },
          "applicationTemplateId": {
            "type": "string",
            "description": "Application template id specific to this application type.",
            "example": "00dc1d40-b512-4159-bccc-e8c1b4524515"
          },
          "description": {
            "type": "string",
            "description": "Short description of application.",
            "example": "application for testing"
          },
          "id": {
            "type": "string",
            "description": "Application ID.",
            "example": "6781549d-433c-44ea-a42f-4705c26f3245"
          },
          "ipListId": {
            "type": "string",
            "description": "The UUID of the IP Addresses list.",
            "example": "828c4359-b367-4ac9-b164-eebc18664027"
          },
          "lastAuthnDate": {
            "type": "string",
            "description": "Last successful authentication time to use administration api",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "logo": {
            "type": "string",
            "description": "Base64 encoded logo image."
          },
          "name": {
            "type": "string",
            "description": "Name of application. ",
            "example": "adminApiApplication"
          },
          "roleId": {
            "type": "string",
            "description": "The UUID of the Site role to be associated with the API application. Pass an empty string value to unset the site role.",
            "example": "53df23b1-5f57-sdc5-tr23-asd345ip6789"
          },
          "sharedSecret": {
            "type": "string",
            "description": "Shared secret for application."
          },
          "spRoleId": {
            "type": "string",
            "description": "The UUID of the service provider role to be associated with the API application. Pass an empty string to unset the service provider role.",
            "example": "53df23b1-5f57-sdc5-tr23-asd345ip6788"
          }
        },
        "description": "Information returned when an Admin API application is fetched from Identity as a Service."
      },
      "AdminApiApplicationParms": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "allowLongLivedToken": {
            "type": "boolean",
            "description": "Determines if a long-lived token is allowed in this application.",
            "example": true
          },
          "applicationTemplateId": {
            "type": "string",
            "description": "The UUID of the application template.  This value is only used when creating a new application. If not specified, the default admininstration API template is used.",
            "example": "53df23b1-5f57-sdc5-tr23-asd345ip6789"
          },
          "description": {
            "type": "string",
            "description": "Short description of application.",
            "example": "application for testing"
          },
          "ipListId": {
            "type": "string",
            "description": "The UUID of the IP Addresses list.",
            "example": "828c4359-b367-4ac9-b164-eebc18664027"
          },
          "logo": {
            "type": "string",
            "description": "Base64 encoded logo image."
          },
          "name": {
            "type": "string",
            "description": "Name of application. ",
            "example": "adminApiApplication"
          },
          "roleId": {
            "type": "string",
            "description": "The UUID of the Site role to be associated with the API application. Pass an empty string value to unset the site role. Either this value or spRoleId is required when creating the application.",
            "example": "53df23b1-5f57-sdc5-tr23-asd345ip6789"
          },
          "spRoleId": {
            "type": "string",
            "description": "The UUID of the service provider role to be associated with the API application. Pass an empty string to unset the service provider role. Either this value or roleId is required when creating the application.",
            "example": "53df23b1-5f57-sdc5-tr23-asd345ip6788"
          }
        },
        "description": "Parameters for the new application."
      },
      "AdminApiAuthentication": {
        "required": [
          "applicationId",
          "sharedSecret"
        ],
        "type": "object",
        "properties": {
          "applicationId": {
            "type": "string",
            "description": "Administration API application id",
            "example": "d3737e0f-4d8e-431c-b1d8-cd17ad4d633d"
          },
          "enableWebSession": {
            "type": "boolean",
            "description": "If set to true, a session cookie named INTELLITRUST_SESSION_ID is returned with the authentication response. This cookie must be returned with all subsequent requests.",
            "example": true
          },
          "sharedSecret": {
            "type": "string",
            "description": "Shared Secret",
            "example": "randomSharedSecret"
          }
        },
        "description": "Parameters passed to authenticate to an Admin API application."
      },
      "AdminApiAuthenticationResult": {
        "type": "object",
        "properties": {
          "authToken": {
            "type": "string",
            "description": "Authorization token returned after a successful authentication."
          },
          "creationTime": {
            "type": "string",
            "description": "Creation time of the authentication token.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "expirationTime": {
            "type": "string",
            "description": "Expiry time of the authentication token.",
            "format": "date-time",
            "example": "2019-02-19T14:15:27Z"
          }
        }
      },
      "ApplicationInfo": {
        "type": "object",
        "properties": {
          "applicationTemplate": {
            "type": "string",
            "description": "The template the application was created from."
          },
          "applicationTemplateId": {
            "type": "string",
            "description": "The UUID of the template the application was created from."
          },
          "authenticationMethod": {
            "type": "string",
            "description": "The application authentication method."
          },
          "id": {
            "type": "string",
            "description": "The UUID of the application."
          },
          "name": {
            "type": "string",
            "description": "The name of the application."
          }
        }
      },
      "ApplicationTemplate": {
        "required": [
          "authenticationMethod",
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "authenticationMethod": {
            "type": "string",
            "description": "The type the application template. Possible values are SAML20, RADIUS, AAAS, IDG, OIDC, AUTHAPI, ADMINAPI, SIEMAPI."
          },
          "description": {
            "type": "string",
            "description": "The description of application template."
          },
          "id": {
            "type": "string",
            "description": "The UUID of the application template."
          },
          "name": {
            "type": "string",
            "description": "The name of the application template."
          }
        },
        "description": "Information returned about an Identity as a Service application template."
      },
      "BasicPrintRequest": {
        "type": "object",
        "properties": {
          "billing": {
            "$ref": "#/components/schemas/Billing"
          },
          "exceptionSlotMessage": {
            "type": "string",
            "description": "The message to display on the printer LCD screen when the exception slot is selected. Maximum 45 character limit for Sigma printers, and 32 character limit for older printers.",
            "example": "Load the correct card stock type into the exception slot."
          },
          "hopper": {
            "type": "integer",
            "description": "The printer hopper to use. Value of 0 will use the printer exception slot.",
            "format": "int32",
            "example": 1
          },
          "magstripe": {
            "$ref": "#/components/schemas/MagStripeEncodeCommands"
          },
          "print": {
            "$ref": "#/components/schemas/Print"
          },
          "printerPreferences": {
            "$ref": "#/components/schemas/PrinterPreferences"
          },
          "smartcard": {
            "$ref": "#/components/schemas/BasicPrintRequestSmartcard"
          }
        }
      },
      "BasicPrintRequestSmartcard": {
        "type": "object",
        "properties": {
          "commands": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SmartCardCommand"
            }
          },
          "multistep": {
            "type": "boolean",
            "description": "Perform smart cards operations over multiple print requests. This feature is NOT supported with Instant ID as a Service.",
            "example": false
          }
        }
      },
      "BasicPrintResponse": {
        "type": "object",
        "properties": {
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "data": {
            "$ref": "#/components/schemas/BasicPrintResponseData"
          },
          "status": {
            "type": "string",
            "enum": [
              "QUEUED",
              "WAITING_SMARTCARD",
              "IN_PROGRESS",
              "COMPLETED",
              "FAILED",
              "CANCELLED",
              "UNKNOWN",
              "AWAITING_PRINT"
            ]
          },
          "statusDetails": {
            "type": "string",
            "description": "Print status details returned from the printer."
          },
          "updatedOn": {
            "type": "string",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          }
        }
      },
      "BasicPrintResponseData": {
        "type": "object",
        "properties": {
          "copiesRemaining": {
            "maximum": 100000,
            "minimum": 0,
            "type": "integer",
            "format": "int32"
          },
          "smartcardResponses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SmartCardCommandResponse"
            }
          }
        }
      },
      "BasicPrintUpdateRequest": {
        "type": "object",
        "properties": {
          "smartcard": {
            "$ref": "#/components/schemas/BasicPrintUpdateRequestSmartcard"
          }
        }
      },
      "BasicPrintUpdateRequestSmartcard": {
        "type": "object",
        "properties": {
          "commands": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SmartCardCommand"
            }
          }
        }
      },
      "Billing": {
        "type": "object",
        "properties": {
          "segmentId": {
            "type": "string",
            "example": "CUST-123455"
          }
        }
      },
      "BulkPrintOperationDetails": {
        "type": "object",
        "properties": {
          "errorMessage": {
            "type": "string",
            "description": "The error message describing the first error encountered processing the bulk operation."
          },
          "firstFailedRow": {
            "type": "integer",
            "description": "The row number of the first row that failed.",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID of the bulk operation."
          },
          "initTime": {
            "type": "string",
            "description": "The time this bulk operation was initialized.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "name": {
            "type": "string",
            "description": "The name of this bulk operation."
          },
          "processingEndTime": {
            "type": "string",
            "description": "The time at which the bulk operation completed processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingStartTime": {
            "type": "string",
            "description": "The time at which the bulk operation began processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingTime": {
            "type": "integer",
            "description": "How long the bulk operation took to complete processing.",
            "format": "int64"
          },
          "rowsFailed": {
            "type": "integer",
            "description": "The number of rows that have failed when processed.",
            "format": "int32"
          },
          "rowsProcessed": {
            "type": "integer",
            "description": "The number of rows successfully processed.",
            "format": "int32"
          },
          "state": {
            "type": "string",
            "description": "The state of the bulk operation.",
            "enum": [
              "FAILED",
              "CANCELLED",
              "COMPLETED",
              "AWAITING_DATA",
              "PROCESSING",
              "SCHEDULED"
            ]
          },
          "type": {
            "type": "string",
            "description": "The type of bulk operation.",
            "enum": [
              "IMPORT_USERS",
              "IMPORT_GROUPS",
              "IMPORT_USER_GROUPS",
              "IMPORT_HARDWARE_TOKENS",
              "IMPORT_ENROLLMENTS",
              "PRINT_ENROLLMENTS",
              "SEND_MFP",
              "ASSIGN_ENTRUST_ST",
              "ASSIGN_GOOGLE_ST",
              "ASSIGN_PASSWORDS",
              "RESET_PASSWORDS",
              "DELETE_USERS",
              "IMPORT_IDENTITYGUARD",
              "IMPORT_GRIDS",
              "EXPORT_ASSIGNEDGRIDS",
              "EXPORT_ASSIGNEDTOKENS",
              "EXPORT_AUDITEVENTS",
              "EXPORT_SELFAUDITEVENTS",
              "EXPORT_UNASSIGNEDGRIDS",
              "EXPORT_UNASSIGNEDTOKENS",
              "EXPORT_USERS",
              "SET_REGISTRATION",
              "SET_VERIFICATION",
              "ASSIGN_GRIDS",
              "EXPORT_USAGE",
              "CREATE_UNASSIGNED_GRIDS",
              "ASSIGN_HARDWARE_TOKENS",
              "SET_GRIDS",
              "EXPORT_ENROLLMENTS",
              "DELETE_GROUPS",
              "EXPORT_GROUPS",
              "RESET_TOKENS",
              "DELETE_ENROLLMENTS",
              "PROVISION_SCIM",
              "CREATE_TENANT",
              "REVOKE_MFP",
              "DELETE_GRIDS",
              "DELETE_TOKENS"
            ]
          }
        }
      },
      "CreateTenantAsyncStatus": {
        "required": [
          "id",
          "state"
        ],
        "type": "object",
        "properties": {
          "errorMessage": {
            "type": "string",
            "description": "The error message describing the first error encountered processing the operation."
          },
          "id": {
            "type": "string",
            "description": "The unique UUID of the operation. Used to get status and results of operation"
          },
          "initTime": {
            "type": "string",
            "description": "The time this operation was initialized.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingEndTime": {
            "type": "string",
            "description": "The time at which the operation completed processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingStartTime": {
            "type": "string",
            "description": "The time at which the operation began processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingTime": {
            "type": "integer",
            "description": "How long the operation took to complete processing in milliseconds.",
            "format": "int64"
          },
          "state": {
            "type": "string",
            "description": "The state of the operation.",
            "enum": [
              "FAILED",
              "CANCELLED",
              "COMPLETED",
              "AWAITING_DATA",
              "PROCESSING",
              "SCHEDULED"
            ]
          },
          "subject": {
            "type": "string",
            "description": "The subject of this operation."
          }
        },
        "description": "Information about the status of an asynchronous create tenant request."
      },
      "CreateTenantParms": {
        "required": [
          "adminUser",
          "tenant"
        ],
        "type": "object",
        "properties": {
          "adminApiApplication": {
            "$ref": "#/components/schemas/AdminApiApplicationParms"
          },
          "adminUser": {
            "$ref": "#/components/schemas/UserParms"
          },
          "deliverWelcomeEmail": {
            "type": "boolean",
            "description": "A flag indicating if a welcome email should be delivered.  If not set, it defaults to false."
          },
          "entitlements": {
            "$ref": "#/components/schemas/EntitlementParms"
          },
          "tenant": {
            "$ref": "#/components/schemas/TenantParms"
          }
        },
        "description": "Parameters used to create the new tenant."
      },
      "CreateTenantResult": {
        "required": [
          "adminUser",
          "tenant"
        ],
        "type": "object",
        "properties": {
          "adminApiApplication": {
            "$ref": "#/components/schemas/AdminApiApplication"
          },
          "adminUser": {
            "$ref": "#/components/schemas/User"
          },
          "tenant": {
            "$ref": "#/components/schemas/Tenant"
          }
        },
        "description": "Information returned from a create tenant request."
      },
      "CredentialDesignPrintRequestPrinter": {
        "type": "object",
        "properties": {
          "exceptionSlotMessage": {
            "type": "string",
            "description": "The message to display on the printer LCD screen when the exception slot is selected. Maximum 45 character limit for Sigma printers, and 32 character limit for older printers.",
            "example": "Load the correct card stock type into the exception slot."
          },
          "hopper": {
            "type": "integer",
            "description": "The printer hopper to use. Value of 0 will use the printer exception slot.",
            "format": "int32",
            "example": 1
          },
          "printerId": {
            "pattern": "[a-fA-F0-9-]{32,36}",
            "type": "string",
            "example": "aa123-bb456-cc789-dd890-ee123-fffee4"
          }
        }
      },
      "DigitalId": {
        "type": "object",
        "properties": {
          "certificates": {
            "type": "array",
            "description": "The certificates associated with this digital id.",
            "items": {
              "$ref": "#/components/schemas/DigitalIdCert"
            }
          },
          "digitalIdConfigId": {
            "type": "string",
            "description": "The UUID of the digital Id config that defines this digital Id."
          },
          "digitalIdConfigName": {
            "type": "string",
            "description": "The name of the digital id Config that defines this digital Id."
          },
          "digitalIdConfigType": {
            "type": "string",
            "description": "The type of this digital Id.",
            "enum": [
              "PIV_CARDHOLDER",
              "PIV_CARD"
            ]
          },
          "dn": {
            "type": "string",
            "description": "The current DN of the digital id."
          },
          "id": {
            "type": "string",
            "description": "The UUID of this DigitalId."
          }
        },
        "description": "Information stored about a digital id."
      },
      "DigitalIdCert": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "The description providing the purpose of this certificate."
          },
          "digitalIdId": {
            "type": "string",
            "description": "The UUID of the digital id to which this certificate belongs"
          },
          "digitalIdType": {
            "type": "string",
            "description": "The type of the digital Id to which this certificate belongs.",
            "enum": [
              "PIV_CARDHOLDER",
              "PIV_CARD"
            ]
          },
          "id": {
            "type": "string",
            "description": "The UUID of this Digital Id Certificate."
          },
          "issuerDN": {
            "type": "string",
            "description": "The issuer DN of this certificate."
          },
          "notAfter": {
            "type": "string",
            "description": "The expiry date of this certificate.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "notBefore": {
            "type": "string",
            "description": "The issue date of this certificate.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "pivContainer": {
            "type": "string",
            "description": "The name of the PIV container that stores this certificate on the smart card."
          },
          "serialNumber": {
            "type": "string",
            "description": "The serial number of this certificate."
          },
          "status": {
            "type": "string",
            "description": "The status of this certificate. If not set, the revocation status has not been retrieved from the CA.",
            "enum": [
              "ACTIVE",
              "REVOKED",
              "HOLD",
              "EXPIRED",
              "NOT_AVAILABLE"
            ]
          },
          "subjectDN": {
            "type": "string",
            "description": "The subject DN of this certificate."
          }
        },
        "description": "Information stored about a certificate associated with a digital id."
      },
      "DigitalIdConfig": {
        "type": "object",
        "properties": {
          "allCAGroups": {
            "type": "boolean",
            "description": "If true, digital ids using this config will be set to have all CA groups."
          },
          "caGroups": {
            "type": "array",
            "description": "If allCAGroups is set to false then digital ids using this config will use this specified list of CA groups.",
            "items": {
              "type": "string",
              "description": "If allCAGroups is set to false then digital ids using this config will use this specified list of CA groups."
            }
          },
          "caId": {
            "type": "string",
            "description": "The UUID of the CA for this digital id config."
          },
          "caName": {
            "type": "string",
            "description": "The name of the CA for this digital id config."
          },
          "caType": {
            "type": "string",
            "description": "The CA type of this Digital Id Config.",
            "enum": [
              "EDC",
              "MS",
              "PKIAAS"
            ]
          },
          "certTemplates": {
            "type": "array",
            "description": "A list of cert templates associated with this digital id config.",
            "items": {
              "$ref": "#/components/schemas/DigitalIdConfigCertTemplate"
            }
          },
          "certificateType": {
            "type": "string",
            "description": "The CA certificate type which digital ids using this config will use."
          },
          "digitalIdConfigTemplateId": {
            "type": "string",
            "description": "When creating a digital id config, default values can be provided from this specified digital id config template."
          },
          "directoryEntry": {
            "type": "boolean",
            "description": "A flag indicating if digital ids using this config will create directory entries in the CA."
          },
          "dnFormat": {
            "type": "string",
            "description": "The format which digital ids using this config will use for their DN."
          },
          "dnFormatSearchbaseIncluded": {
            "type": "boolean",
            "description": "Whether digital ids using this config should include the searchbase in their DN."
          },
          "id": {
            "type": "string",
            "description": "The UUID of this Digital Id Config."
          },
          "name": {
            "type": "string",
            "description": "The name of this Digital Id Config."
          },
          "role": {
            "type": "string",
            "description": "The CA role which digital ids using this config will use."
          },
          "searchbase": {
            "type": "string",
            "description": "The searchbase within the CA in which digital ids using this config will be created."
          },
          "subjectAltNames": {
            "type": "array",
            "description": "A list of subjectAltNames associated with this digital id config.",
            "items": {
              "$ref": "#/components/schemas/DigitalIdConfigSubjectAltName"
            }
          },
          "type": {
            "type": "string",
            "description": "The type of digital id.",
            "enum": [
              "PIV_CARDHOLDER",
              "PIV_CARD"
            ]
          },
          "userType": {
            "type": "string",
            "description": "The CA user type which digital ids using this config will use."
          },
          "variables": {
            "type": "array",
            "description": "A list of variables associated with this digital id config.",
            "items": {
              "$ref": "#/components/schemas/DigitalIdConfigVariable"
            }
          }
        },
        "description": "Information that defines how digital ids are created in the CA."
      },
      "DigitalIdConfigCertTemplate": {
        "type": "object",
        "properties": {
          "digitalIdConfigId": {
            "type": "string",
            "description": "The UUID of the Digital Id Config that owns this Digital Id Config Cert Template."
          },
          "id": {
            "type": "string",
            "description": "The UUID of the Digital Id Config Cert Template."
          },
          "keyType": {
            "type": "string",
            "description": "The key type of the Digital Id Config Cert Template.",
            "enum": [
              "RSA_2048",
              "EC_P_256"
            ]
          },
          "lifetime": {
            "type": "integer",
            "description": "The lifetime (in months) of the certificate created with this Digital Id Config Cert Template.",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "description": "The name of the Digital Id Config Cert Template."
          },
          "pivContainer": {
            "type": "string",
            "description": "The PIV container of the Digital Id Config Cert Template.",
            "enum": [
              "PivAuth",
              "CardAuth",
              "DigSig",
              "KeyMgmt",
              "None"
            ]
          },
          "useCaDefaultCertLifetime": {
            "type": "boolean",
            "description": "A flag indicating whether to use the CA's default certificate lifetime."
          }
        },
        "description": "Information that describes a Digital Id Config Cert Template."
      },
      "DigitalIdConfigSubjectAltName": {
        "type": "object",
        "properties": {
          "digitalIdConfigId": {
            "type": "string",
            "description": "The UUID of the digital id config that owns this subjectAltName."
          },
          "id": {
            "type": "string",
            "description": "The UUID of this Digital Id Config SubjectAltName."
          },
          "type": {
            "type": "string",
            "description": "The type of subjectAltName.",
            "enum": [
              "EMAIL",
              "UPN",
              "IP",
              "DNS",
              "OTHER",
              "X400",
              "DN",
              "EDI",
              "URI",
              "REGISTERED_ID"
            ]
          },
          "value": {
            "type": "string",
            "description": "The value for the subjectAltName."
          }
        },
        "description": "Information that describes a Digital Id Config SubjectAltName."
      },
      "DigitalIdConfigVariable": {
        "type": "object",
        "properties": {
          "digitalIdConfigId": {
            "type": "string",
            "description": "The UUID of the Digital Id Config that owns this Digital Id Config Variable."
          },
          "id": {
            "type": "string",
            "description": "The UUID of the Digital Id Config Variable."
          },
          "includedInDN": {
            "type": "boolean",
            "description": "A flag indicating if values for this variable are included in the Digital Id's DN when it is generated by the CA."
          },
          "name": {
            "type": "string",
            "description": "The name of the Digital Id Config Variable."
          },
          "type": {
            "type": "string",
            "description": "The type of the Digital Id Config Variable.",
            "enum": [
              "CERTIFICATE",
              "USER",
              "VARIABLE",
              "CUSTOM"
            ]
          },
          "value": {
            "type": "string",
            "description": "The value of the Digital Id Config Variable."
          }
        },
        "description": "Information that describes a Digital Id Config Variable."
      },
      "EnrollmentApiPayload": {
        "required": [
          "enrollmentData",
          "enrollmentDesignName"
        ],
        "type": "object",
        "properties": {
          "enrollmentData": {
            "type": "array",
            "description": "The Enrollment Data. Primary key field is mandatory in case of Update and Delete.",
            "items": {
              "type": "object",
              "description": "The Enrollment Data. Primary key field is mandatory in case of Update and Delete."
            }
          },
          "enrollmentDesignName": {
            "type": "string",
            "description": "Name of the Enrollment Design."
          }
        },
        "description": "Parameters to delete enrollments"
      },
      "EnrollmentApiRequestPrinter": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "exceptionSlotMessage": {
            "type": "string",
            "description": "Optional message to be displayed on printer's LCD screen when the exception slot is selected.",
            "example": "Please load the correct card into the exception slot."
          },
          "hopper": {
            "type": "integer",
            "description": "Hopper to be used (Optional), default value is 1",
            "format": "int32",
            "example": 1
          },
          "name": {
            "type": "string",
            "description": "Name of the printer. Value is printer's name given while adding the printer using create printer API. Refer readPrinter/readPrinters API to get the value of 'name' field.",
            "example": "D3"
          }
        },
        "description": "Details of printer to be used in bulk operation. It includes name and hopper values. For the name field, value is required but for hopper, value is optional. If value of the hopper is not provided, it will be set to 1 by default"
      },
      "EnrollmentDelete": {
        "required": [
          "ids"
        ],
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "description": "List of Enrollment Ids to be deleted (Id should be in Base64 string format)",
            "example": [
              "eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ9fQ",
              "eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ8fQ"
            ],
            "items": {
              "type": "string",
              "description": "List of Enrollment Ids to be deleted (Id should be in Base64 string format)",
              "example": "[\"eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ9fQ\",\"eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ8fQ\"]"
            }
          }
        },
        "description": "Ids of the enrollments to be deleted (In Base64 string format)"
      },
      "EnrollmentDesignName": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Id of the Enrollment Design"
          },
          "name": {
            "type": "string",
            "description": "Name of the Enrollment Design"
          }
        }
      },
      "EnrollmentMultiFlashPassApiRequestV1": {
        "type": "object",
        "properties": {
          "enrollmentDesignName": {
            "type": "string"
          },
          "primaryKeys": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "description": "Parameters to issue mobile flash pass."
      },
      "EnrollmentMultiFlashPassApiRequestV2": {
        "required": [
          "ids"
        ],
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "description": "List of Enrollment Ids (Id should be in Base64 string format)",
            "example": [
              "eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ9fQ",
              "eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ8fQ"
            ],
            "items": {
              "type": "string",
              "description": "List of Enrollment Ids (Id should be in Base64 string format)",
              "example": "[\"eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ9fQ\",\"eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ8fQ\"]"
            }
          }
        },
        "description": "Parameters to issue mobile flash pass."
      },
      "EnrollmentMultiPrintApiRequestV1": {
        "type": "object",
        "properties": {
          "credentialDesignName": {
            "type": "string"
          },
          "enrollmentDesignName": {
            "type": "string"
          },
          "primaryKeys": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "printerDetails": {
            "$ref": "#/components/schemas/CredentialDesignPrintRequestPrinter"
          }
        },
        "description": "Parameters for printing bulk enrollments."
      },
      "EnrollmentMultiPrintApiRequestV2": {
        "required": [
          "ids",
          "printer"
        ],
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "description": "List of Enrollment Ids (Id should be in Base64 string format)",
            "example": [
              "eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ9fQ",
              "eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ8fQ"
            ],
            "items": {
              "type": "string",
              "description": "List of Enrollment Ids (Id should be in Base64 string format)",
              "example": "[\"eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ9fQ\",\"eyJ3b3JrZmxvd0lkIjoiOTI1MDkwYWEtZGVjYy00MGZlLWIzZTQtMTYwMjFjNjU5MmIwIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxNCJ8fQ\"]"
            }
          },
          "printer": {
            "$ref": "#/components/schemas/EnrollmentApiRequestPrinter"
          }
        },
        "description": "Parameters for printing bulk enrollments."
      },
      "EnrollmentPrintApiRequestV1": {
        "required": [
          "printerDetails"
        ],
        "type": "object",
        "properties": {
          "enrollmentDesignName": {
            "type": "string",
            "description": "The design name of the enrollment. <b>Note:</b> primaryKey parameter is required when this parameter is present.",
            "example": "Enrollment Design 1"
          },
          "enrollmentId": {
            "type": "string",
            "description": "The unique enrollment ID obtained from Read Enrollments request. <b>Note:</b> primaryKey and enrollmentDesignName parameters are not required when this parameter is present.",
            "example": "eyJ3b3JrZmxvd0lkIjoiZDkyZmU1OTgtYmU5MC00N2QzLWJmNWEtZmM2MDJmZjNkOGY0Iiwid2hlcmVDbGF1c2UiOnsiQVVUT1NFUVVFTkNFRklFTEQxIjoiMiJ9fQ=="
          },
          "primaryKey": {
            "type": "string",
            "description": "The primary key of the enrollment",
            "example": "'1'"
          },
          "printerDetails": {
            "$ref": "#/components/schemas/CredentialDesignPrintRequestPrinter"
          }
        },
        "description": "Parameters for printing single enrollment."
      },
      "EnrollmentPrintApiResponse": {
        "type": "object",
        "properties": {
          "printJobId": {
            "type": "string",
            "description": "The job id of the requested enrollment print",
            "example": "85b12842-50cb-4bd5-af99-57dc0ebc6ef2"
          }
        }
      },
      "EnrollmentRequest": {
        "required": [
          "fields"
        ],
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "description": "List of enrollment fields having field name and field value. Instant ID as a Service automatically optimizes images for best print quality and performance. Images in photograph, signature, and background fields are limited to 2100 x 1344 pixels or 3 MB in size. Images exceeding these limits will be automatically resized while preserving quality and aspect ratio.",
            "example": [
              {
                "name": "Bar Code",
                "value": "1234567890"
              },
              {
                "name": "Date Field",
                "value": "08/03/2023"
              },
              {
                "name": "Photograph Field",
                "value": "data:image/png;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2w..."
              },
              {
                "name": "Signature Field",
                "value": "data:image/png;base64,/9j/4AAQSkZJRgABAQEASABIAAD/2w..."
              },
              {
                "name": "Text Field",
                "value": "Sample Text"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/Field"
            }
          },
          "id": {
            "type": "string",
            "description": "Id of the enrollment (Value is required only in the update enrollment request, should be ignored in create enrollment request). Id should be in Base64 string format.",
            "example": "eyJ3b3JrZmxvd0lkIjoiNjE2ZTZiZmItNzI2NC00NjQ0LWE0MWMtMTFhZjE4MWRkZGFkIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxIn11"
          }
        }
      },
      "EnrollmentResponse": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string",
            "description": "Error message for the failed enrollment record (For create/update/delete enrollments request)",
            "example": "The record does not exist"
          },
          "fields": {
            "type": "array",
            "description": "List of enrollment fields having field name and field value (For search enrollments request only)",
            "items": {
              "$ref": "#/components/schemas/Field"
            }
          },
          "id": {
            "type": "string",
            "description": "Id of the enrollment (In Base64 string format)",
            "example": "eyJ3b3JrZmxvd0lkIjoiNjE2ZTZiZmItNzI2NC00NjQ0LWE0MWMtMTFhZjE4MWRkZGFkIiwid2hlcmVDbGF1c2UiOnsiUVVJQ0tTVEFSVFBSSU1BUllLRVkiOiIxIn11"
          },
          "status": {
            "type": "string",
            "description": "Status (Success/Failure) of the enrollment record (To check if the requested enrollment is successfully created/updated/deleted or not)",
            "example": "Success"
          }
        }
      },
      "Entitlement": {
        "required": [
          "endDate",
          "id",
          "quantity",
          "startDate",
          "status",
          "type"
        ],
        "type": "object",
        "properties": {
          "additionalFeatures": {
            "$ref": "#/components/schemas/AdditionalFeature"
          },
          "contractMode": {
            "type": "string",
            "description": "The contract mode of a tenant, allowable values = 'PRODUCTION', 'TRIAL', example='TRIAL'.",
            "enum": [
              "PRODUCTION",
              "TRIAL",
              "UNKNOWN"
            ]
          },
          "contractNumber": {
            "type": "string",
            "description": "The contract number of this entitlement."
          },
          "customerId": {
            "type": "string",
            "description": "The customer ID."
          },
          "endDate": {
            "type": "string",
            "description": "The end date of this entitlement in UTC time.",
            "format": "date-time",
            "example": "2020-02-18T23:59:59Z"
          },
          "entitlementId": {
            "type": "string",
            "description": "The entitlement ID."
          },
          "flashPass": {
            "$ref": "#/components/schemas/MobileFlashPass"
          },
          "fleetManagement": {
            "$ref": "#/components/schemas/FleetManagement"
          },
          "gracePeriodEndDate": {
            "type": "string",
            "description": "The USERS grace period end date of this entitlement in UTC time.",
            "format": "date-time",
            "example": "2020-02-18T23:59:59Z"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID of this entitlement."
          },
          "issuance": {
            "$ref": "#/components/schemas/Issuance"
          },
          "payToPrint": {
            "$ref": "#/components/schemas/PayToPrint"
          },
          "printer": {
            "$ref": "#/components/schemas/PrinterEntitlement"
          },
          "quantity": {
            "type": "integer",
            "description": "The quantity of this entitlement.",
            "format": "int32",
            "example": 200
          },
          "remaining": {
            "type": "integer",
            "description": "The unused quantity of this entitlement (USERS type only).",
            "format": "int32",
            "example": 37
          },
          "smartLoginEnabled": {
            "type": "boolean",
            "description": "Whether Smart Card Smart Login is enabled or not."
          },
          "smsVoice": {
            "$ref": "#/components/schemas/SmsVoice"
          },
          "startDate": {
            "type": "string",
            "description": "The start date of this entitlement in UTC time.",
            "format": "date-time",
            "example": "2019-02-19T00:00:00Z"
          },
          "status": {
            "type": "string",
            "description": "The status of this entitlement.",
            "enum": [
              "ACTIVE",
              "INACTIVE",
              "TERMINATED"
            ]
          },
          "subscriptionLineId": {
            "type": "string",
            "description": "The subscription line ID."
          },
          "type": {
            "type": "string",
            "description": "The type of this entitlement.",
            "enum": [
              "USERS",
              "TRANSACTIONS"
            ]
          },
          "userBundles": {
            "type": "array",
            "description": "The entitlement bundles that defines the set of features available for authentication accounts.",
            "items": {
              "$ref": "#/components/schemas/ServiceBundle"
            }
          },
          "usersBillingType": {
            "type": "string",
            "description": "The billing type for user entitlements. Defaults to PRE_PAID if not provided.",
            "example": "PRE_PAID",
            "enum": [
              "PRE_PAID",
              "PAY_PER_USE"
            ]
          }
        }
      },
      "EntitlementParms": {
        "type": "object",
        "properties": {
          "additionalFeatures": {
            "$ref": "#/components/schemas/AdditionalFeature"
          },
          "contractMode": {
            "type": "string",
            "description": "The contract mode of a tenant (required during creation), allowable values = 'PRODUCTION', 'TRIAL'.",
            "example": "TRIAL",
            "enum": [
              "PRODUCTION",
              "TRIAL",
              "UNKNOWN"
            ]
          },
          "contractNumber": {
            "type": "string",
            "description": "The contract number."
          },
          "customerId": {
            "type": "string",
            "description": "The customer ID."
          },
          "endDate": {
            "type": "string",
            "description": "The date this entitlement will end.  The value must be after the start date. If not specified, this value defaults to the end date of the service provider's entitlement.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "entitlementId": {
            "type": "string",
            "description": "The entitlement ID."
          },
          "flashPass": {
            "$ref": "#/components/schemas/FlashPassParms"
          },
          "fleetManagement": {
            "$ref": "#/components/schemas/FleetManagementParms"
          },
          "issuance": {
            "$ref": "#/components/schemas/IssuanceParms"
          },
          "printer": {
            "$ref": "#/components/schemas/PrinterParms"
          },
          "quantity": {
            "maximum": 50000000,
            "minimum": 1,
            "type": "integer",
            "description": "The number of entitlements assigned to the tenant (required during creation). The service provider must have enough available entitlements to meet this request.",
            "format": "int32"
          },
          "smartLoginEnabled": {
            "type": "boolean",
            "description": "Whether Smart Card Smart Login is enabled or not."
          },
          "smsVoice": {
            "$ref": "#/components/schemas/SmsVoiceParms"
          },
          "startDate": {
            "type": "string",
            "description": "The date this entitlement will start.  If not specified, it defaults to the current date.  This value cannot be in the future.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "status": {
            "type": "string",
            "description": "The status of this entitlement.",
            "enum": [
              "ACTIVE",
              "INACTIVE",
              "TERMINATED"
            ]
          },
          "subscriptionLineId": {
            "type": "string",
            "description": "The subscription line ID."
          },
          "type": {
            "type": "string",
            "description": "The type of entitlement.  Currently this value must be USERS.  If not specified, this value defaults to USERS.",
            "enum": [
              "USERS",
              "TRANSACTIONS"
            ]
          },
          "usageType": {
            "type": "string",
            "description": "[DEPRECATED] The type of entitlement (ignored if type is provided).  Currently this value must be USERS. If not specified, this value defaults to USERS.",
            "deprecated": true,
            "enum": [
              "USERS",
              "TRANSACTIONS"
            ]
          },
          "userBundles": {
            "type": "array",
            "description": "The entitlement bundles that defines the set of features available for authentication accounts.",
            "items": {
              "$ref": "#/components/schemas/ServiceBundle"
            }
          },
          "usersBillingType": {
            "type": "string",
            "description": "The billing type for user entitlements. Defaults to PRE_PAID if not provided.",
            "example": "PRE_PAID",
            "enum": [
              "PRE_PAID",
              "PAY_PER_USE"
            ]
          }
        },
        "description": "Parameters passed when setting the entitlements of a tenant. Entitlements are required."
      },
      "Error": {
        "required": [
          "code",
          "message"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "The server error code"
          },
          "message": {
            "type": "string",
            "description": "A human-readable representation of the error"
          },
          "target": {
            "type": "string",
            "description": "The target of the error"
          }
        }
      },
      "ErrorInfo": {
        "type": "object",
        "properties": {
          "errorCode": {
            "type": "string",
            "description": "Error Codes specific to cause of failure.",
            "example": "invalid_user_response"
          },
          "errorMessage": {
            "type": "string",
            "description": "Additional Error Message describing the error.",
            "example": "Application id cannot be null"
          },
          "parameters": {
            "type": "array",
            "description": "Optional additional error information.",
            "items": {
              "type": "object",
              "description": "Optional additional error information."
            }
          }
        },
        "description": "Object containing information about errors reported by services."
      },
      "FIDOToken": {
        "type": "object",
        "properties": {
          "allowedActions": {
            "type": "array",
            "description": "Administration actions that can be performed on this FIDO token.",
            "items": {
              "type": "string",
              "description": "Administration actions that can be performed on this FIDO token.",
              "enum": [
                "DELETE",
                "ENABLE",
                "DISABLE",
                "RENAME"
              ]
            }
          },
          "createDate": {
            "type": "string",
            "description": "The date on which the FIDO token was created.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID assigned to the fido token when it is registered."
          },
          "lastUsedDate": {
            "type": "string",
            "description": "The date on which this FIDO token was last used for authentication. This value will be null if the FIDO token has never been used.",
            "format": "date-time",
            "example": "2019-02-21T11:37:27Z"
          },
          "name": {
            "type": "string",
            "description": "The name of this FIDO token."
          },
          "origin": {
            "type": "string",
            "description": "The origin of where the FIDO token was generated."
          },
          "relyingPartyId": {
            "type": "string",
            "description": "The relying party ID of where the FIDO token was generated."
          },
          "state": {
            "type": "string",
            "description": "The state of this FIDO token.  Only FIDO tokens in the ACTIVE state can be used for authentication.",
            "enum": [
              "ACTIVE",
              "INACTIVE"
            ]
          },
          "userId": {
            "type": "string",
            "description": "The user Id of the user who owns this FIDO token."
          },
          "userIdStored": {
            "type": "boolean",
            "description": "Indicates if the userId was stored on the FIDO token."
          },
          "userUUID": {
            "type": "string",
            "description": "The UUID of the user who owns this FIDO token."
          }
        },
        "description": "A FIDOToken defines the information returned about a FIDO Token."
      },
      "Field": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "A descriptive name of the enrollment field to filter results by. Must exactly match the Enrollment Field Name.",
            "example": "State"
          },
          "value": {
            "type": "string",
            "description": "Value of the enrollment field to match records. Comparison is case-insensitive and matches the whole word. Searching on Date type fields is not supported.",
            "example": "Minnesota"
          }
        },
        "description": "List of enrollment fields having field name and field value (For search enrollments request only)"
      },
      "FlashPassParms": {
        "type": "object",
        "properties": {
          "quantity": {
            "type": "integer",
            "description": "The number of FlashPass pass claims allowed during the Trial period.",
            "format": "int32",
            "example": 25,
            "enum": [
              25,
              100
            ]
          }
        },
        "description": "Parameters passed when setting the Issuance entitlements of a tenant."
      },
      "FleetManagement": {
        "type": "object",
        "properties": {
          "addOn": {
            "type": "string",
            "description": "Add on column to store fleetManagementOptIn flag"
          },
          "consumed": {
            "type": "integer",
            "description": "The entitlements consumed since start date during the entitlement period.",
            "format": "int32"
          },
          "endDate": {
            "type": "string",
            "description": "The date when the entitlement will end.",
            "format": "date-time",
            "example": "2020-02-19T00:00:00Z"
          },
          "quantity": {
            "type": "integer",
            "description": "The number of FlashPass claims allowed during the period.",
            "format": "int32",
            "example": 1000
          },
          "startDate": {
            "type": "string",
            "description": "The date when the entitlement starts.",
            "format": "date-time",
            "example": "2019-02-19T00:00:00Z"
          }
        },
        "description": "FleetManagement entitlements of a tenant."
      },
      "FleetManagementParms": {
        "type": "object",
        "description": "Parameters passed when setting the fleet management entitlements of a tenant."
      },
      "Grid": {
        "type": "object",
        "properties": {
          "allowedActions": {
            "type": "array",
            "description": "A list of what actions are currently allowed for this grid.",
            "items": {
              "type": "string",
              "description": "A list of what actions are currently allowed for this grid.",
              "enum": [
                "CANCEL",
                "DELETE",
                "ENABLE",
                "DISABLE",
                "ASSIGN",
                "UNASSIGN"
              ]
            }
          },
          "assignDate": {
            "type": "string",
            "description": "For unassigned grids which were assigned to the user, the date on which the grid was assigned.",
            "format": "date-time",
            "example": "2019-02-19T13:17:27Z"
          },
          "createDate": {
            "type": "string",
            "description": "The date on which the grid was created.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "expired": {
            "type": "boolean",
            "description": "A flag indicating if this grid is currently expired."
          },
          "expiryDate": {
            "type": "string",
            "description": "If the grid policy defines an expiry date, the date on which this grid will expire. Expired grids cannot be used for authentication.",
            "format": "date-time",
            "example": "2019-08-19T13:15:27Z"
          },
          "gridContents": {
            "type": "array",
            "description": "The grid contents of this grid.  Only administrators with the GRIDCONTENTS:VIEW permission will receive this value.",
            "items": {
              "type": "array",
              "description": "The grid contents of this grid.  Only administrators with the GRIDCONTENTS:VIEW permission will receive this value.",
              "items": {
                "type": "string",
                "description": "The grid contents of this grid.  Only administrators with the GRIDCONTENTS:VIEW permission will receive this value."
              }
            }
          },
          "groups": {
            "type": "array",
            "description": "The UUIDs of groups to which this grid belongs.  This value is only used for unassigned grids. Only groups to which the current administrator has access will be returned.",
            "items": {
              "type": "string",
              "description": "The UUIDs of groups to which this grid belongs.  This value is only used for unassigned grids. Only groups to which the current administrator has access will be returned."
            }
          },
          "id": {
            "type": "string",
            "description": "The unique UUID assigned to the grid when it is created."
          },
          "lastUsedDate": {
            "type": "string",
            "description": "The date on which this grid was last used for authentication. This value will be null if the grid has never been used.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "serialNumber": {
            "type": "integer",
            "description": "The unique numeric serial number assigned to the grid when it is created.",
            "format": "int64"
          },
          "state": {
            "type": "string",
            "description": "The state of this grid.  Only grids in the ACTIVE or PENDING state can be used for authentication.",
            "enum": [
              "ACTIVE",
              "INACTIVE",
              "UNASSIGNED",
              "PENDING",
              "CANCELED"
            ]
          },
          "userId": {
            "type": "string",
            "description": "The UUID of the user who owns this grid.  If the grid is not assigned, this value will be null.",
            "example": "45f5a855-962a-4b5f-b5c5-7ceeae235875"
          },
          "userName": {
            "type": "string",
            "description": "The user Id for this user.  If the grid is not assigned, this value will be null.",
            "example": "john.doe"
          }
        },
        "description": "A Grid defines the information returned about a Grid."
      },
      "Group": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "attribute": {
            "type": "string",
            "description": "The attribute of this group."
          },
          "created": {
            "type": "string",
            "description": "When the group was created.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "directoryDesynced": {
            "type": "boolean",
            "description": "Whether the directory group is desynced. Desynced groups can be deleted.",
            "example": false
          },
          "externalId": {
            "type": "string",
            "description": "The externalId of this group."
          },
          "id": {
            "type": "string",
            "description": "The UUID of this group.  This value is generated when the group is created."
          },
          "lastModified": {
            "type": "string",
            "description": "When the group was last modified.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "name": {
            "type": "string",
            "description": "The name of this group."
          },
          "type": {
            "type": "string",
            "description": "The type of group indicating if this group was synchronized from a directory (LDAP_AD) or was created in Identity as a Service (MGMT_UI).",
            "example": "MGMT_UI",
            "enum": [
              "LDAP_AD",
              "MGMT_UI"
            ]
          }
        },
        "description": "Information returned about a group."
      },
      "Issuance": {
        "required": [
          "serviceBundles"
        ],
        "type": "object",
        "properties": {
          "addOn": {
            "type": "string",
            "description": "Add on column to store printer cert flag"
          },
          "consumed": {
            "type": "integer",
            "description": "The entitlements consumed since start date during a Trial period.",
            "format": "int32"
          },
          "endDate": {
            "type": "string",
            "description": "The date when the Trial period will end. This value is not returned if the account status is PRODUCTION.",
            "format": "date-time",
            "example": "2019-02-19T00:00:00Z"
          },
          "quantity": {
            "type": "integer",
            "description": "The number of print jobs allowed during the Trial period. This value is not returned if the account status is PRODUCTION.",
            "format": "int32",
            "example": 25
          },
          "serviceBundles": {
            "type": "array",
            "description": "The service bundles supported.",
            "items": {
              "$ref": "#/components/schemas/ServiceBundle"
            }
          },
          "startDate": {
            "type": "string",
            "description": "The date when the Trial period starts. This value is not returned if the account status is PRODUCTION.",
            "format": "date-time",
            "example": "2019-02-19T00:00:00Z"
          }
        },
        "description": "Issuance entitlements of a tenant."
      },
      "IssuanceParms": {
        "type": "object",
        "properties": {
          "addOn": {
            "type": "string",
            "description": "Add on column to store printer cert flag"
          },
          "endDate": {
            "type": "string",
            "description": "The date when the Trial period will end.  The value must be after the start date. If specified, this value cannot be more than 30 days after start date.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "quantity": {
            "type": "integer",
            "description": "The number of print jobs allowed during the Trial period (required during creation).",
            "format": "int32",
            "example": 25,
            "enum": [
              25,
              100
            ]
          },
          "serviceBundles": {
            "type": "array",
            "description": "The service bundles supported. At least one bundle must be defined.",
            "items": {
              "$ref": "#/components/schemas/ServiceBundle"
            }
          },
          "startDate": {
            "type": "string",
            "description": "The date when the Trial period starts. This value cannot be in the future. If not specified, it defaults to the current date.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          }
        },
        "description": "Parameters passed when setting the Issuance entitlements of a tenant."
      },
      "IssueMobileFlashPassBulkOperationDetails": {
        "type": "object",
        "properties": {
          "errorMessage": {
            "type": "string",
            "description": "The error message describing the first error encountered processing the bulk operation."
          },
          "firstFailedRow": {
            "type": "integer",
            "description": "The row number of the first row that failed.",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID of the bulk operation."
          },
          "initTime": {
            "type": "string",
            "description": "The time this bulk operation was initialized.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "name": {
            "type": "string",
            "description": "The name of this bulk operation."
          },
          "processingEndTime": {
            "type": "string",
            "description": "The time at which the bulk operation completed processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingStartTime": {
            "type": "string",
            "description": "The time at which the bulk operation began processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingTime": {
            "type": "integer",
            "description": "How long the bulk operation took to complete processing.",
            "format": "int64"
          },
          "rowsFailed": {
            "type": "integer",
            "description": "The number of rows that have failed when processed.",
            "format": "int32"
          },
          "rowsProcessed": {
            "type": "integer",
            "description": "The number of rows successfully processed.",
            "format": "int32"
          },
          "state": {
            "type": "string",
            "description": "The state of the bulk operation.",
            "enum": [
              "FAILED",
              "CANCELLED",
              "COMPLETED",
              "AWAITING_DATA",
              "PROCESSING",
              "SCHEDULED"
            ]
          },
          "type": {
            "type": "string",
            "description": "The type of bulk operation.",
            "enum": [
              "IMPORT_USERS",
              "IMPORT_GROUPS",
              "IMPORT_USER_GROUPS",
              "IMPORT_HARDWARE_TOKENS",
              "IMPORT_ENROLLMENTS",
              "PRINT_ENROLLMENTS",
              "SEND_MFP",
              "ASSIGN_ENTRUST_ST",
              "ASSIGN_GOOGLE_ST",
              "ASSIGN_PASSWORDS",
              "RESET_PASSWORDS",
              "DELETE_USERS",
              "IMPORT_IDENTITYGUARD",
              "IMPORT_GRIDS",
              "EXPORT_ASSIGNEDGRIDS",
              "EXPORT_ASSIGNEDTOKENS",
              "EXPORT_AUDITEVENTS",
              "EXPORT_SELFAUDITEVENTS",
              "EXPORT_UNASSIGNEDGRIDS",
              "EXPORT_UNASSIGNEDTOKENS",
              "EXPORT_USERS",
              "SET_REGISTRATION",
              "SET_VERIFICATION",
              "ASSIGN_GRIDS",
              "EXPORT_USAGE",
              "CREATE_UNASSIGNED_GRIDS",
              "ASSIGN_HARDWARE_TOKENS",
              "SET_GRIDS",
              "EXPORT_ENROLLMENTS",
              "DELETE_GROUPS",
              "EXPORT_GROUPS",
              "RESET_TOKENS",
              "DELETE_ENROLLMENTS",
              "PROVISION_SCIM",
              "CREATE_TENANT",
              "REVOKE_MFP",
              "DELETE_GRIDS",
              "DELETE_TOKENS"
            ]
          }
        }
      },
      "Lamination": {
        "type": "object",
        "properties": {
          "back": {
            "$ref": "#/components/schemas/Laminators"
          },
          "front": {
            "$ref": "#/components/schemas/Laminators"
          }
        },
        "description": "Lamination option includes laminators for front and back."
      },
      "Laminators": {
        "type": "object",
        "properties": {
          "Laminator1": {
            "type": "string",
            "enum": [
              "DO_NOT_APPLY",
              "APPLY_ONCE",
              "APPLY_TWICE"
            ]
          },
          "Laminator2": {
            "type": "string",
            "enum": [
              "DO_NOT_APPLY",
              "APPLY_ONCE",
              "APPLY_TWICE"
            ]
          }
        },
        "description": "Support for printers with 2 Laminators."
      },
      "MagStripe": {
        "type": "object",
        "properties": {
          "coercivity": {
            "type": "string",
            "description": "Coercivity",
            "enum": [
              "HIGH",
              "LOW"
            ]
          },
          "track1": {
            "type": "string",
            "description": "Track 1 data",
            "example": "2542313233343536373839303132333434355E504144494C4C412F4C2E202020202020202020202020202020205E393930313132303030303030303030303030303031323333333132333435363F2A"
          },
          "track2": {
            "type": "string",
            "description": "Track 2 data",
            "example": "3B313233343536373839303132333434353D39393031313230303132333330303030303030303F2A"
          },
          "track3": {
            "type": "string",
            "description": "Track 3 data"
          },
          "trackType": {
            "type": "string",
            "description": "Track type",
            "enum": [
              "IAT",
              "AAMVA",
              "NTT",
              "PRINTER"
            ]
          }
        }
      },
      "MagStripeEncodeCommands": {
        "type": "object",
        "properties": {
          "back": {
            "$ref": "#/components/schemas/MagStripe"
          },
          "front": {
            "$ref": "#/components/schemas/MagStripe"
          }
        }
      },
      "MobileFlashPass": {
        "type": "object",
        "properties": {
          "consumed": {
            "type": "integer",
            "description": "The entitlements consumed since start date during the entitlement period.",
            "format": "int32"
          },
          "endDate": {
            "type": "string",
            "description": "The date when the entitlement will end.",
            "format": "date-time",
            "example": "2020-02-19T00:00:00Z"
          },
          "quantity": {
            "type": "integer",
            "description": "The number of FlashPass claims allowed during the period.",
            "format": "int32",
            "example": 1000
          },
          "startDate": {
            "type": "string",
            "description": "The date when the entitlement starts.",
            "format": "date-time",
            "example": "2019-02-19T00:00:00Z"
          }
        },
        "description": "MobileFlashPass entitlements of a tenant."
      },
      "MobileFlashPassRequestDetails": {
        "type": "object",
        "properties": {
          "errorMessage": {
            "type": "string",
            "description": "The error message describing the first error encountered processing the bulk operation."
          },
          "firstFailedRow": {
            "type": "integer",
            "description": "The row number of the first row that failed.",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID of the request."
          },
          "initTime": {
            "type": "string",
            "description": "The time this bulk operation was initialized.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "name": {
            "type": "string",
            "description": "The name of this bulk operation."
          },
          "processingEndTime": {
            "type": "string",
            "description": "The time at which the bulk operation completed processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingStartTime": {
            "type": "string",
            "description": "The time at which the bulk operation began processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingTime": {
            "type": "integer",
            "description": "How long the bulk operation took to complete processing.",
            "format": "int64"
          },
          "rowsFailed": {
            "type": "integer",
            "description": "The number of rows that have failed when processed.",
            "format": "int32"
          },
          "rowsProcessed": {
            "type": "integer",
            "description": "The number of rows successfully processed.",
            "format": "int32"
          },
          "state": {
            "type": "string",
            "description": "The state of the bulk operation.",
            "enum": [
              "FAILED",
              "CANCELLED",
              "COMPLETED",
              "AWAITING_DATA",
              "PROCESSING",
              "SCHEDULED"
            ]
          },
          "type": {
            "type": "string",
            "description": "The type of bulk operation.",
            "enum": [
              "IMPORT_USERS",
              "IMPORT_GROUPS",
              "IMPORT_USER_GROUPS",
              "IMPORT_HARDWARE_TOKENS",
              "IMPORT_ENROLLMENTS",
              "PRINT_ENROLLMENTS",
              "SEND_MFP",
              "ASSIGN_ENTRUST_ST",
              "ASSIGN_GOOGLE_ST",
              "ASSIGN_PASSWORDS",
              "RESET_PASSWORDS",
              "DELETE_USERS",
              "IMPORT_IDENTITYGUARD",
              "IMPORT_GRIDS",
              "EXPORT_ASSIGNEDGRIDS",
              "EXPORT_ASSIGNEDTOKENS",
              "EXPORT_AUDITEVENTS",
              "EXPORT_SELFAUDITEVENTS",
              "EXPORT_UNASSIGNEDGRIDS",
              "EXPORT_UNASSIGNEDTOKENS",
              "EXPORT_USERS",
              "SET_REGISTRATION",
              "SET_VERIFICATION",
              "ASSIGN_GRIDS",
              "EXPORT_USAGE",
              "CREATE_UNASSIGNED_GRIDS",
              "ASSIGN_HARDWARE_TOKENS",
              "SET_GRIDS",
              "EXPORT_ENROLLMENTS",
              "DELETE_GROUPS",
              "EXPORT_GROUPS",
              "RESET_TOKENS",
              "DELETE_ENROLLMENTS",
              "PROVISION_SCIM",
              "CREATE_TENANT",
              "REVOKE_MFP",
              "DELETE_GRIDS",
              "DELETE_TOKENS"
            ]
          }
        }
      },
      "OAuthRole": {
        "required": [
          "ancestorIds",
          "descendantIds",
          "id",
          "inheritedResourceServerScopeIds",
          "name",
          "resourceServerScopeIds"
        ],
        "type": "object",
        "properties": {
          "ancestorIds": {
            "type": "array",
            "description": "The set of ancestor oauth role ids.",
            "items": {
              "type": "string",
              "description": "The set of ancestor oauth role ids."
            }
          },
          "descendantIds": {
            "type": "array",
            "description": "The set of descendant oauth role ids.",
            "items": {
              "type": "string",
              "description": "The set of descendant oauth role ids."
            }
          },
          "description": {
            "type": "string",
            "description": "The description of this oauth role."
          },
          "id": {
            "type": "string",
            "description": "The UUID of this oauth role. This value is generated when the oauth role is created."
          },
          "inheritedResourceServerScopeIds": {
            "type": "array",
            "description": "The set of resource server scopes ids associated with this oauth role based on inheritance from its ancestors.",
            "items": {
              "type": "string",
              "description": "The set of resource server scopes ids associated with this oauth role based on inheritance from its ancestors."
            }
          },
          "name": {
            "type": "string",
            "description": "The name of this oauth role."
          },
          "parentId": {
            "type": "string",
            "description": "The UUID of the parent of this oauth role, if one exists."
          },
          "resourceServerScopeIds": {
            "type": "array",
            "description": "The set of resource server scopes ids associated with this oauth role.",
            "items": {
              "type": "string",
              "description": "The set of resource server scopes ids associated with this oauth role."
            }
          }
        },
        "description": "A list of all oauth roles to which this user belongs."
      },
      "OrderAttribute": {
        "type": "object",
        "properties": {
          "ascending": {
            "type": "boolean",
            "description": "Identifies whether to order result in ascending order.",
            "example": true
          },
          "name": {
            "type": "string",
            "description": "Identifies the attribute.",
            "example": "Created On"
          }
        },
        "description": "An attribute used to sort the result from a search."
      },
      "OrderByAttribute": {
        "required": [
          "ascending",
          "name"
        ],
        "type": "object",
        "properties": {
          "ascending": {
            "type": "boolean",
            "description": "Identifies whether to order results in ascending order."
          },
          "name": {
            "type": "string",
            "description": "Identifies the attribute."
          }
        },
        "description": "An attribute used to sort the result from a search."
      },
      "Organization": {
        "required": [
          "displayName",
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "The description of the organization."
          },
          "displayName": {
            "type": "string",
            "description": "The display name of the organization."
          },
          "id": {
            "type": "string",
            "description": "The unique UUID assigned to the organization when it is created."
          },
          "logoUri": {
            "type": "string",
            "description": "The URI of the logo to display when showing organizations.",
            "example": "https://account.mycompany.com/images/logo.png"
          },
          "name": {
            "type": "string",
            "description": "The name of the organization."
          }
        },
        "description": "Organization defines the attributes of an organization used in B2B scenarios."
      },
      "Paging": {
        "required": [
          "limit"
        ],
        "type": "object",
        "properties": {
          "limit": {
            "maximum": 100,
            "minimum": 1,
            "type": "integer",
            "description": "The page limit used (1-100)",
            "format": "int32"
          },
          "nextCursor": {
            "type": "string",
            "description": "The cursor pointing to the next page."
          },
          "prevCursor": {
            "type": "string",
            "description": "The cursor pointing to the previous page."
          }
        },
        "description": "Contains navigation information."
      },
      "PayToPrint": {
        "type": "object",
        "properties": {
          "addOn": {
            "type": "string",
            "description": "Add on column to store PayToPrint addon"
          },
          "consumed": {
            "type": "integer",
            "description": "The entitlements consumed since start date during the entitlement period.",
            "format": "int32"
          },
          "endDate": {
            "type": "string",
            "description": "The date when the entitlement will end.",
            "format": "date-time",
            "example": "2020-02-19T00:00:00Z"
          },
          "quantity": {
            "type": "integer",
            "description": "The number of PayToPrint prints allowed during the period.",
            "format": "int32",
            "example": 1000
          },
          "startDate": {
            "type": "string",
            "description": "The date when the entitlement starts.",
            "format": "date-time",
            "example": "2019-02-19T00:00:00Z"
          }
        },
        "description": "PayToPrint entitlements of a tenant."
      },
      "Permission": {
        "required": [
          "actionType",
          "entityType",
          "id",
          "roleType"
        ],
        "type": "object",
        "properties": {
          "actionType": {
            "type": "string",
            "description": "The action to which this permission applies.",
            "enum": [
              "VIEW",
              "ADD",
              "EDIT",
              "REMOVE",
              "ALL"
            ]
          },
          "entityType": {
            "type": "string",
            "description": "The entity to which this permission applies.",
            "enum": [
              "ALL",
              "SUBSCRIBERS",
              "USERS",
              "APPLICATIONS",
              "TOKENS",
              "ROLES",
              "SPROLES",
              "CONTEXTRULES",
              "AUTHORIZATIONGROUPS",
              "USERATTRIBUTES",
              "USERATTRIBUTEVALUES",
              "AGENTS",
              "GROUPS",
              "SETTINGS",
              "DIRECTORIES",
              "DIRECTORYSYNC",
              "DIRECTORYCONNECTIONS",
              "TEMPLATES",
              "USERSITEROLES",
              "REPORTS",
              "BULKUSERS",
              "BULKGROUPS",
              "USERPASSWORDS",
              "SERVICEPROVIDERS",
              "SERVICEPROVIDERACCOUNTS",
              "USERMACHINES",
              "CAS",
              "BULKHARDWARETOKENS",
              "BULKSMARTCARDS",
              "DIGITALIDCONFIGS",
              "DIGITALIDCONFIGVARIABLES",
              "DIGITALIDCONFIGCERTTEMPS",
              "DIGITALIDCONFIGSANS",
              "SCDEFNS",
              "SCDEFNPIVAPPLETCONFIGS",
              "SCDEFNVARIABLES",
              "SMARTCREDENTIALS",
              "SMARTCREDENTIALSSIGNATURE",
              "USERSPROLES",
              "EXPECTEDLOCATIONS",
              "USERLOCATIONS",
              "USERRBASETTINGS",
              "SPCLIENTCREDENTIALS",
              "SPMANAGEMENTPLATFORM",
              "ENTITLEMENTS",
              "QUESTIONS",
              "USERQUESTIONS",
              "USERQUESTIONANSWERS",
              "USERKBACHALLENGES",
              "WORDSYNONYMS",
              "GATEWAYS",
              "GATEWAYCSRS",
              "SPUSERMGMT",
              "BULKIDENTITYGUARD",
              "TEMPACCESSCODES",
              "TEMPACCESSCODECONTENTS",
              "GRIDS",
              "GRIDCONTENTS",
              "FIDOTOKENS",
              "EXPORTREPORTS",
              "CUSTOMIZATIONVARIABLES",
              "BLACKLISTEDPASSWORDS",
              "SPENTITLEMENTS",
              "CREATETENANT",
              "TENANTS",
              "ARCHIVES",
              "CERTIFICATES",
              "INTELLITRUSTDESKTOPS",
              "ACTIVESYNC",
              "PRINTERS",
              "ISSUANCE",
              "OTPS",
              "AD_CONNECTOR_DIRECTORIES",
              "AZURE_DIRECTORIES",
              "SCHEDULEDTASKS",
              "CREDENTIALDESIGNS",
              "ENROLLMENTS",
              "BULKENROLLMENTS",
              "EMAILTEMPLATES",
              "EMAILVARIABLES",
              "SENDEMAIL",
              "SENDSCIM",
              "SENDAZUREAD",
              "DIRECTORYPASSWORD",
              "TRANSACTIONITEMS",
              "TRANSACTIONRULES",
              "ENROLLMENTDESIGNS",
              "HIGH_AVAILABILITY_GROUPS",
              "PKIAASCREDENTIALS",
              "DIGITALIDCERTIFICATES",
              "PIVCONTENTSIGNER",
              "RESOURCESERVERAPIS",
              "RESOURCESERVERSCOPES",
              "USEROAUTHTOKENS",
              "GROUPPOLICIES",
              "OAUTHROLES",
              "IDENTITYPROVIDERS",
              "SMARTCARDS",
              "IPLISTS",
              "DOMAINCONTROLLERCERTS",
              "OTPPROVIDERS",
              "PREFERREDOTPPROVIDERS",
              "SPIDENTITYPROVIDERS",
              "PUSHCREDENTIALS",
              "DIRECTORYSEARCHATTRIBUTES",
              "DIRECTORYATTRIBUTES",
              "RISKENGINES",
              "SCIMPROVISIONINGS",
              "RATELIMITING",
              "CLAIMS",
              "CONTACTVERIFICATION",
              "HOSTNAMESETTINGS",
              "MAGICLINKS",
              "MAGICLINKCONTENTS",
              "AUTHENTICATIONFLOWS",
              "FACE",
              "TOKENACTIVATIONCONTENTS",
              "PASSTHROUGH",
              "POLICYOVERRIDE",
              "ORGANIZATIONS",
              "WEBHOOKS",
              "WEBHOOK_NOTIFICATION",
              "VCDEFNS",
              "VCS",
              "PLAYINTEGRITYCREDENTIALS",
              "VPDEFNS",
              "ACRS",
              "FLEET_MANAGEMENT_ALERT",
              "VERIFYUSER",
              "USER_PRINTER_PREFERENCE",
              "NAMEDPASSWORDS"
            ]
          },
          "id": {
            "type": "string",
            "description": "The UUID of this permission."
          },
          "roleType": {
            "type": "string",
            "description": "The role type to which this permission applies.",
            "enum": [
              "SITE_ADMINISTRATOR",
              "ACCOUNT_MANAGER"
            ]
          }
        },
        "description": "Details about a permission assign to a role."
      },
      "Print": {
        "type": "object",
        "properties": {
          "back": {
            "type": "array",
            "description": "A set of base64 url encoded image (JPEG or PNG) that represents the back side of the card. One image per print layer (e.g. UV, Color, Black) may be provided.",
            "items": {
              "$ref": "#/components/schemas/PrintImageLayer"
            }
          },
          "front": {
            "type": "array",
            "description": "A set of base64 url encoded image (JPEG or PNG) that represents the front side of the card. One image per print layer (e.g. UV, Color, Black) may be provided.",
            "items": {
              "$ref": "#/components/schemas/PrintImageLayer"
            }
          }
        }
      },
      "PrintCount": {
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "description": "The count.",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "The name of the count."
          }
        }
      },
      "PrintCountResponse": {
        "type": "object",
        "properties": {
          "counts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PrintCount"
            }
          }
        }
      },
      "PrintImageLayer": {
        "required": [
          "data"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "string",
            "description": "A base64 url encoded image (JPEG or PNG). For BLACK layer, it is advised to use black and white image with 1bit per pixel and 1013 * 638. Example choose black and white option and set the properties via MS paint.",
            "example": "data:image/png;ADEF31023..."
          },
          "enhanceBlackLayer": {
            "type": "boolean",
            "description": "The enhanceBlackLayer value defaults as FALSE. To enhance the quality of a black and white or grayscale image that is not 1 bit per pixel, set the enhanceBlackLayer value as TRUE."
          },
          "layer": {
            "type": "string",
            "enum": [
              "COLOR",
              "UV",
              "BLACK",
              "PEEL_OFF",
              "NON_PRINTABLE_GENERIC",
              "NON_PRINTABLE_CHIP",
              "NON_PRINTABLE_MAGSTRIPE",
              "NON_PRINTABLE_SIGNATURE"
            ]
          }
        },
        "description": "A set of base64 url encoded image (JPEG or PNG) that represents the back side of the card. One image per print layer (e.g. UV, Color, Black) may be provided."
      },
      "PrintJob": {
        "type": "object",
        "properties": {
          "createdOn": {
            "type": "string",
            "description": "The time this print job was created.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "creatorId": {
            "type": "string",
            "description": "The unique Id of the creator of this print job."
          },
          "creatorName": {
            "type": "string",
            "description": "The name of the creator of this print job."
          },
          "creatorType": {
            "type": "string",
            "description": "The type of the creator of this print job.",
            "enum": [
              "USER",
              "API"
            ]
          },
          "id": {
            "type": "string",
            "description": "The unique id of this print job."
          },
          "name": {
            "type": "string",
            "description": "The name of this print job."
          },
          "printerId": {
            "type": "string",
            "description": "The unique Id of the printer."
          },
          "printerName": {
            "type": "string",
            "description": "The name of the printer."
          },
          "queueState": {
            "type": "string",
            "enum": [
              "UNKNOWN",
              "QUEUED",
              "WAIT_FOR_PRINTER",
              "STARTED",
              "COMPLETED",
              "CANCELLED",
              "FAILED",
              "AWAITING_PRINT"
            ]
          },
          "queueStateDetails": {
            "type": "string",
            "description": "Details about the queue state of this print job."
          },
          "status": {
            "type": "string",
            "enum": [
              "QUEUED",
              "WAITING_SMARTCARD",
              "IN_PROGRESS",
              "COMPLETED",
              "FAILED",
              "CANCELLED",
              "UNKNOWN",
              "AWAITING_PRINT"
            ]
          },
          "statusDetails": {
            "type": "string",
            "description": "Print status details returned from the printer."
          },
          "updatedOn": {
            "type": "string",
            "description": "The time this print job was last updated.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          }
        },
        "description": "Information returned about a print job."
      },
      "PrintJobRecord": {
        "type": "object",
        "properties": {
          "bulkOperationName": {
            "type": "string",
            "description": "Name of associated Bulk Print Operation"
          },
          "createdOn": {
            "type": "string",
            "description": "job creation time",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "creatorId": {
            "type": "string",
            "description": "The unique Id of the creator of this print job."
          },
          "creatorName": {
            "type": "string",
            "description": "The name of the creator of this print job."
          },
          "creatorType": {
            "type": "string",
            "description": "The type of the creator of this print job.",
            "enum": [
              "USER",
              "API"
            ]
          },
          "id": {
            "type": "integer",
            "description": "job id",
            "format": "int64"
          },
          "identifierField": {
            "type": "string"
          },
          "identifierValue": {
            "type": "string"
          },
          "jobId": {
            "type": "string",
            "description": "The unique id of this print job in print queue."
          },
          "name": {
            "type": "string",
            "description": "job name"
          },
          "printerId": {
            "type": "string",
            "description": "The unique Id of the printer."
          },
          "printerName": {
            "type": "string",
            "description": "printer name"
          },
          "queueState": {
            "type": "string",
            "enum": [
              "UNKNOWN",
              "QUEUED",
              "WAIT_FOR_PRINTER",
              "STARTED",
              "COMPLETED",
              "CANCELLED",
              "FAILED",
              "AWAITING_PRINT"
            ]
          },
          "queueStateDetails": {
            "type": "string",
            "description": "Details about the queue state of this print job."
          },
          "status": {
            "type": "string",
            "enum": [
              "QUEUED",
              "WAITING_SMARTCARD",
              "IN_PROGRESS",
              "COMPLETED",
              "FAILED",
              "CANCELLED",
              "UNKNOWN",
              "AWAITING_PRINT"
            ]
          },
          "statusDetails": {
            "type": "string",
            "description": "job status"
          },
          "updatedOn": {
            "type": "string",
            "description": "The time this print job was last updated.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          }
        },
        "description": "Information returned about a print job from print job table."
      },
      "PrintOperationResponse": {
        "type": "object",
        "properties": {
          "printStatus": {
            "$ref": "#/components/schemas/ResourceIdResponse"
          }
        }
      },
      "PrintQueuePaging": {
        "type": "object",
        "properties": {
          "paging": {
            "$ref": "#/components/schemas/Paging"
          },
          "printJobs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PrintJobRecord"
            }
          }
        },
        "description": "Paged object returning print jobs"
      },
      "PrintRequestDetails": {
        "type": "object",
        "properties": {
          "errorMessage": {
            "type": "string",
            "description": "The error message describing the first error encountered processing the bulk operation."
          },
          "firstFailedRow": {
            "type": "integer",
            "description": "The row number of the first row that failed.",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID of the request."
          },
          "initTime": {
            "type": "string",
            "description": "The time this bulk operation was initialized.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "name": {
            "type": "string",
            "description": "The name of this bulk operation."
          },
          "processingEndTime": {
            "type": "string",
            "description": "The time at which the bulk operation completed processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingStartTime": {
            "type": "string",
            "description": "The time at which the bulk operation began processing.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "processingTime": {
            "type": "integer",
            "description": "How long the bulk operation took to complete processing.",
            "format": "int64"
          },
          "rowsFailed": {
            "type": "integer",
            "description": "The number of rows that have failed when processed.",
            "format": "int32"
          },
          "rowsProcessed": {
            "type": "integer",
            "description": "The number of rows successfully processed.",
            "format": "int32"
          },
          "state": {
            "type": "string",
            "description": "The state of the bulk operation.",
            "enum": [
              "FAILED",
              "CANCELLED",
              "COMPLETED",
              "AWAITING_DATA",
              "PROCESSING",
              "SCHEDULED"
            ]
          },
          "type": {
            "type": "string",
            "description": "The type of bulk operation.",
            "enum": [
              "IMPORT_USERS",
              "IMPORT_GROUPS",
              "IMPORT_USER_GROUPS",
              "IMPORT_HARDWARE_TOKENS",
              "IMPORT_ENROLLMENTS",
              "PRINT_ENROLLMENTS",
              "SEND_MFP",
              "ASSIGN_ENTRUST_ST",
              "ASSIGN_GOOGLE_ST",
              "ASSIGN_PASSWORDS",
              "RESET_PASSWORDS",
              "DELETE_USERS",
              "IMPORT_IDENTITYGUARD",
              "IMPORT_GRIDS",
              "EXPORT_ASSIGNEDGRIDS",
              "EXPORT_ASSIGNEDTOKENS",
              "EXPORT_AUDITEVENTS",
              "EXPORT_SELFAUDITEVENTS",
              "EXPORT_UNASSIGNEDGRIDS",
              "EXPORT_UNASSIGNEDTOKENS",
              "EXPORT_USERS",
              "SET_REGISTRATION",
              "SET_VERIFICATION",
              "ASSIGN_GRIDS",
              "EXPORT_USAGE",
              "CREATE_UNASSIGNED_GRIDS",
              "ASSIGN_HARDWARE_TOKENS",
              "SET_GRIDS",
              "EXPORT_ENROLLMENTS",
              "DELETE_GROUPS",
              "EXPORT_GROUPS",
              "RESET_TOKENS",
              "DELETE_ENROLLMENTS",
              "PROVISION_SCIM",
              "CREATE_TENANT",
              "REVOKE_MFP",
              "DELETE_GRIDS",
              "DELETE_TOKENS"
            ]
          }
        }
      },
      "Printer": {
        "type": "object",
        "properties": {
          "cardsPrinted": {
            "type": "integer",
            "description": "Total cards successfully printed by printer.",
            "format": "int32"
          },
          "cardsRemaining": {
            "type": "integer",
            "description": "number of cards remaining before cleaning",
            "format": "int32"
          },
          "certificate": {
            "type": "string",
            "description": "Self signed certs for legacy printers",
            "format": "byte"
          },
          "deviceId": {
            "pattern": "[a-fA-F0-9]{16}",
            "type": "string",
            "description": "Printers unique device ID obtained from the printer LCD.",
            "example": "6781549D433C44EA"
          },
          "firmwareCheckedOn": {
            "type": "string",
            "description": "The date when the firmware version was last checked",
            "format": "date-time",
            "readOnly": true,
            "example": "2019-02-19T13:15:27Z"
          },
          "firmwareUpdateRequestId": {
            "type": "string",
            "description": "The request id for an active firmware update",
            "readOnly": true,
            "example": "123e4567-e89b-12d3-a456-556642440000"
          },
          "firmwareUpdatedOn": {
            "type": "string",
            "description": "The date when the firmware version was last updated",
            "format": "date-time",
            "readOnly": true,
            "example": "2019-02-19T13:15:27Z"
          },
          "firmwareVersion": {
            "type": "string",
            "description": "The firmware version",
            "readOnly": true,
            "example": "D4-1.2-3"
          },
          "hoppers": {
            "type": "integer",
            "description": "The number of hoppers",
            "format": "int32",
            "readOnly": true,
            "example": 1
          },
          "id": {
            "pattern": "[a-fA-F0-9-]{32,36}",
            "type": "string",
            "readOnly": true,
            "example": "aa123-bb456-cc789-dd890-ee123-fffee4"
          },
          "location": {
            "type": "string",
            "description": "Optional physical location of the printer.",
            "example": "321 Plesant, MyCompany, Floor 2"
          },
          "model": {
            "type": "string",
            "description": "The printer model",
            "readOnly": true,
            "example": "CD800"
          },
          "name": {
            "type": "string",
            "description": "The printer name",
            "example": "Printer at front desk"
          },
          "newFirmwareVersion": {
            "type": "string",
            "description": "A newer firmware version",
            "readOnly": true,
            "example": "D4-1.2-4"
          },
          "printerPlatform": {
            "type": "string",
            "description": "The printer platform",
            "example": "DS3"
          },
          "printerType": {
            "type": "string",
            "description": "The printer type",
            "readOnly": true,
            "example": "DS3"
          },
          "ptpReady": {
            "type": "boolean",
            "description": "A flag used to determine if the printer has PTP ribbon or not (Ignore this field in the API request or response)"
          },
          "retransferPartNumber": {
            "type": "string",
            "description": "The part number of the retransfer ribbon installed on printer",
            "example": "525100-001-S100"
          },
          "retransferRollRemaining": {
            "type": "number",
            "description": "percentage of retransfer roll remaining in printer",
            "format": "double"
          },
          "ribbonId": {
            "type": "string",
            "description": "ID of the cloud enabled ribbon installed in the printer (Ignore this field in the API request or response)"
          },
          "ribbonPartNumber": {
            "type": "string",
            "description": "The part number of the print ribbon installed on printer",
            "example": "525100-001-S100"
          },
          "ribbonRegion": {
            "type": "string",
            "description": "The region of the ribbon installed",
            "example": "100"
          },
          "ribbonRemaining": {
            "type": "number",
            "description": "percentage of ribbon remaining in printer",
            "format": "double"
          },
          "scSimulator": {
            "type": "boolean",
            "description": "A flag used to determine if the smart card simulator needs to be invoked"
          },
          "serialNumber": {
            "type": "string",
            "description": "The unique serial number of the printer",
            "example": "XC10593"
          },
          "status": {
            "type": "string",
            "enum": [
              "BUSY",
              "IDLE",
              "TIMEOUT",
              "INVALID"
            ]
          }
        }
      },
      "PrinterEntitlement": {
        "type": "object",
        "properties": {
          "consumed": {
            "type": "integer",
            "description": "The entitlements consumed since start date during the entitlement period.",
            "format": "int32"
          },
          "endDate": {
            "type": "string",
            "description": "The date when the entitlement will end.",
            "format": "date-time",
            "example": "2020-02-19T00:00:00Z"
          },
          "quantity": {
            "type": "integer",
            "description": "The number of FlashPass claims allowed during the period.",
            "format": "int32",
            "example": 1000
          },
          "startDate": {
            "type": "string",
            "description": "The date when the entitlement starts.",
            "format": "date-time",
            "example": "2019-02-19T00:00:00Z"
          }
        },
        "description": "Printer entitlements of a tenant."
      },
      "PrinterParms": {
        "type": "object",
        "description": "Parameters passed when setting the Printer entitlements of a tenant."
      },
      "PrinterPreferences": {
        "type": "object",
        "properties": {
          "backOrientation": {
            "type": "string",
            "enum": [
              "PORTRAIT",
              "LANDSCAPE"
            ]
          },
          "backRotate180": {
            "type": "boolean",
            "description": "Rotate back side card image 180 degrees?",
            "example": false
          },
          "barCodesMonochrome": {
            "type": "boolean",
            "description": "Print bar codes using monochrome?",
            "example": false
          },
          "blackPixelsMonochrome": {
            "type": "boolean",
            "description": "Print black image pixels using monochrome?",
            "example": false
          },
          "copies": {
            "maximum": 100000,
            "minimum": 1,
            "type": "integer",
            "description": "The number of copies to print",
            "format": "int32",
            "example": 1
          },
          "debow": {
            "type": "boolean",
            "description": "Debow card?",
            "example": false
          },
          "disablePrinting": {
            "type": "string",
            "enum": [
              "false",
              "ALL",
              "FRONT",
              "BACK"
            ]
          },
          "frontOrientation": {
            "type": "string",
            "enum": [
              "PORTRAIT",
              "LANDSCAPE"
            ]
          },
          "frontRotate180": {
            "type": "boolean",
            "description": "Rotate front side card image 180 degrees?",
            "example": false
          },
          "inputHopper": {
            "maximum": 6,
            "minimum": 1,
            "type": "integer",
            "description": "The input hopper from which to select a card",
            "format": "int32",
            "example": 1
          },
          "lamination": {
            "$ref": "#/components/schemas/Lamination"
          },
          "printResolution": {
            "type": "string",
            "description": "The resolution at which printer will print. This will be NA if printer supports only 1 resolution.",
            "enum": [
              "NA",
              "BEST",
              "STANDARD"
            ]
          },
          "rewrite": {
            "type": "boolean",
            "description": "Rewrite card?",
            "example": false
          },
          "splitRibbon": {
            "type": "string",
            "enum": [
              "false",
              "YMCT_FRONT_K_BACK",
              "YMC_FRONT_KT_BACK",
              "K_FRONT_YMCT_BACK",
              "YMC_FRONT_K_BACK",
              "K_FRONT_YMC_BACK",
              "K_FRONT_YMCKT_BACK",
              "KT_FRONT_YMCKT_BACK",
              "YMCKTT_FRONT_K_BACK",
              "YMCKFT_FRONT_K_BACK",
              "MTT_FRONT_K_BACK"
            ]
          },
          "tactileBack": {
            "type": "string",
            "enum": [
              "true",
              "false",
              "1",
              "2",
              "3"
            ]
          },
          "tactileFront": {
            "type": "string",
            "enum": [
              "true",
              "false",
              "1",
              "2",
              "3"
            ]
          },
          "topcoat": {
            "type": "boolean",
            "description": "Applies topcoat to both front and back sides when front/back values are not provided.",
            "example": false
          },
          "topcoatBack": {
            "type": "boolean",
            "description": "Applies topcoat to the back side of the card. When both topcoatFront and topcoatBack are null or undefined,topcoat value is used.",
            "example": false
          },
          "topcoatFront": {
            "type": "boolean",
            "description": "Applies topcoat to the front side of the card. When both topcoatFront and topcoatBack are null or undefined,topcoat value is used.",
            "example": false
          }
        }
      },
      "PrinterSummaryResponse": {
        "type": "object",
        "properties": {
          "printerCount": {
            "type": "integer",
            "description": "The total number of printers",
            "format": "int64"
          }
        }
      },
      "ReadEnrollmentApiPayload": {
        "required": [
          "enrollmentDesignName"
        ],
        "type": "object",
        "properties": {
          "enrollmentDesignName": {
            "type": "string",
            "description": "Name of the Enrollment Design."
          },
          "filterCriteria": {
            "type": "array",
            "description": "Filter criteria based on which enrollments records should be fetched. If not provided, all records are fetched based on page size and number.",
            "items": {
              "type": "object",
              "description": "Filter criteria based on which enrollments records should be fetched. If not provided, all records are fetched based on page size and number."
            }
          },
          "pageNumber": {
            "type": "string",
            "description": "Page number of Enrollment records to be fetched. Default is 1."
          },
          "pageSize": {
            "type": "string",
            "description": "Maximum number of Enrollment records to be fetched. Default is 50."
          }
        },
        "description": "Parameters to read one or many enrollment(s)."
      },
      "ResourceIdResponse": {
        "type": "object",
        "properties": {
          "id": {
            "pattern": "[a-fA-F0-9-]{32,36}",
            "type": "string",
            "readOnly": true,
            "example": "aa123-bb456-cc789-dd890-ee123-fffee4"
          },
          "link": {
            "type": "string",
            "example": "http://localhost/my-resource/aa123-bb456-cc789-dd890-ee123-fffee4"
          }
        }
      },
      "ResumePrintJobApiRequest": {
        "required": [
          "printJobId"
        ],
        "type": "object",
        "properties": {
          "printJobId": {
            "type": "string",
            "description": "The print job id obtained through the pre print webhook payload. ",
            "example": "85b12842-50cb-4bd5-af99-57dc0ebc6ef2"
          }
        },
        "description": "Parameters for resuming print post pre-print operation."
      },
      "ResumePrintJobApiResponse": {
        "type": "object",
        "properties": {
          "printJobId": {
            "type": "string",
            "description": "The job id of the requested print job to resume",
            "example": "85b12842-50cb-4bd5-af99-57dc0ebc6ef2"
          }
        }
      },
      "Role": {
        "required": [
          "name",
          "roleType"
        ],
        "type": "object",
        "properties": {
          "allRoles": {
            "type": "boolean",
            "description": "A flag indicating if administrators with this role can manage all roles and all users."
          },
          "defaultRole": {
            "type": "boolean",
            "description": "A flag indicating if this role is one of the default roles."
          },
          "description": {
            "type": "string",
            "description": "The description of the role."
          },
          "groupIds": {
            "type": "array",
            "description": "The UUIDs of groups associated with this role when Group Management is DEFINED. This attribute is ignored if Group Management is ALL or OWN.",
            "items": {
              "type": "string",
              "description": "The UUIDs of groups associated with this role when Group Management is DEFINED. This attribute is ignored if Group Management is ALL or OWN."
            }
          },
          "groupManagement": {
            "type": "string",
            "description": "The type of the group management. Defaults to ALL if not provided.",
            "enum": [
              "ALL",
              "DEFINED",
              "OWN"
            ]
          },
          "id": {
            "type": "string",
            "description": "The UUID of the role."
          },
          "managedRoles": {
            "type": "array",
            "description": "If allRoles is false, this attribute lists the roles and administrators in these roles that can be administered by administrators with this role.  Administrators will also be able to manage end users.",
            "items": {
              "$ref": "#/components/schemas/Role"
            }
          },
          "name": {
            "type": "string",
            "description": "The name of the role."
          },
          "permissions": {
            "type": "array",
            "description": "A list of the permissions assigned to this role.",
            "items": {
              "$ref": "#/components/schemas/Permission"
            }
          },
          "roleType": {
            "type": "string",
            "description": "The type of the role.",
            "enum": [
              "SITE_ADMINISTRATOR",
              "ACCOUNT_MANAGER"
            ]
          },
          "superAdministrator": {
            "type": "boolean",
            "description": "A flag indicating if this role is a super administrator."
          }
        },
        "description": "Information about a role."
      },
      "RoleUser": {
        "required": [
          "roleName"
        ],
        "type": "object",
        "properties": {
          "defaultRole": {
            "type": "boolean",
            "description": "A flag indicating if this role is one of the default roles."
          },
          "id": {
            "type": "string",
            "description": "The UUID of the role."
          },
          "roleDescription": {
            "type": "string",
            "description": "The description of the role."
          },
          "roleName": {
            "type": "string",
            "description": "The name of the role"
          },
          "usersInRole": {
            "type": "integer",
            "description": "The number of users in this role.",
            "format": "int32"
          }
        },
        "description": "The role information returned from a list role operation."
      },
      "SCDefnVariable": {
        "type": "object",
        "properties": {
          "defaultValue": {
            "type": "string",
            "description": "The default value of this variable."
          },
          "displayable": {
            "type": "boolean",
            "description": "A flag indicating if values for this variable should be displayed."
          },
          "generate": {
            "type": "boolean",
            "description": "A flag indicating if the initial value for this variable should be generated."
          },
          "generateLength": {
            "type": "integer",
            "description": "A length value used when generating values for this variable.",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "description": "The UUID of this SC Defn Variable."
          },
          "modifiable": {
            "type": "boolean",
            "description": "A flag indicating if values for this variable can be modified."
          },
          "name": {
            "type": "string",
            "description": "The name of this SC Defn Variable."
          },
          "order": {
            "type": "integer",
            "description": "A value that specifies the order of this variable with respect to the other variables in the SC Defn.",
            "format": "int32"
          },
          "prompt": {
            "type": "string",
            "description": "Optional prompt to be used when prompting for a value for this variable."
          },
          "required": {
            "type": "boolean",
            "description": "A flag indicating if a value is required for this variable."
          },
          "restrictionDigits": {
            "type": "string",
            "description": "A value specifying restrictions on digits appearing in values of this variable.",
            "enum": [
              "ALLOWED",
              "REQUIRED",
              "NOT_ALLOWED",
              "NOT_SET"
            ]
          },
          "restrictionLower": {
            "type": "string",
            "description": "A value specifying restrictions on lowercase characters appearing in values of this variable.",
            "enum": [
              "ALLOWED",
              "REQUIRED",
              "NOT_ALLOWED",
              "NOT_SET"
            ]
          },
          "restrictionMax": {
            "type": "integer",
            "description": "A value indicating a maximum for values of this variable. How this is enforced depends on the variable type.",
            "format": "int32"
          },
          "restrictionMin": {
            "type": "integer",
            "description": "A value indicating a minimum for values of this variable. How this is enforced depends on the variable type.",
            "format": "int32"
          },
          "restrictionRegex": {
            "type": "string",
            "description": "A value specifying a regex that values of this variable must match."
          },
          "restrictionSpecial": {
            "type": "string",
            "description": "A value specifying restrictions on special characters appearing in values of this variable.",
            "enum": [
              "ALLOWED",
              "REQUIRED",
              "NOT_ALLOWED",
              "NOT_SET"
            ]
          },
          "restrictionUpper": {
            "type": "string",
            "description": "A value specifying restrictions on uppercase characters appearing in values of this variable.",
            "enum": [
              "ALLOWED",
              "REQUIRED",
              "NOT_ALLOWED",
              "NOT_SET"
            ]
          },
          "scDefnId": {
            "type": "string",
            "description": "The UUID of the SC Defn that owns this variable definition."
          },
          "type": {
            "type": "string",
            "description": "The type of this variable.",
            "enum": [
              "STRING",
              "BOOLEAN",
              "INTEGER",
              "UUID"
            ]
          },
          "uniqueness": {
            "type": "string",
            "description": "A flag indicating if values of this variable must be unique and if so within what scope.",
            "enum": [
              "GLOBAL",
              "USER",
              "NONE"
            ]
          },
          "uniquenessScopeId": {
            "type": "string",
            "description": "A value that allows a variable to be defined unique in the scope of another variable."
          }
        },
        "description": "SC Defn Variables define the details about variables defined in the SC Defn."
      },
      "SCVariableValue": {
        "type": "object",
        "properties": {
          "scDefnVariable": {
            "$ref": "#/components/schemas/SCDefnVariable"
          },
          "scDefnVariableId": {
            "type": "string",
            "description": "The UUID of the SC Defn Variable that defines the variable."
          },
          "value": {
            "type": "string",
            "description": "The variable value."
          }
        },
        "description": "SCVariableValues store variable values for a smart credential."
      },
      "SearchAttribute": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Identifies the attribute we are searching for.",
            "example": "Name"
          },
          "operator": {
            "type": "string",
            "enum": [
              "EQUALS",
              "NOT_EQUALS",
              "CONTAINS",
              "NOT_CONTAINS",
              "STARTS_WITH",
              "ENDS_WITH",
              "GREATER_THAN",
              "GREATER_THAN_OR_EQUAL",
              "LESS_THAN",
              "LESS_THAN_OR_EQUAL",
              "IN",
              "IS",
              "EXISTS",
              "NOT_EXISTS"
            ]
          },
          "value": {
            "type": "string",
            "description": "value of the field to search on.",
            "example": "Design"
          }
        },
        "description": "Identifies attributes for searching purposes."
      },
      "SearchByAttribute": {
        "required": [
          "name",
          "operator"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Identifies the attribute we are searching for."
          },
          "operator": {
            "type": "string",
            "description": "Identifies the operator.",
            "enum": [
              "EQUALS",
              "NOT_EQUALS",
              "CONTAINS",
              "NOT_CONTAINS",
              "STARTS_WITH",
              "ENDS_WITH",
              "GREATER_THAN",
              "GREATER_THAN_OR_EQUAL",
              "LESS_THAN",
              "LESS_THAN_OR_EQUAL",
              "IN",
              "EXISTS",
              "NOT_EXISTS"
            ]
          },
          "value": {
            "type": "string",
            "description": "Identifies the value of the attribute we are searching for."
          }
        },
        "description": "An attribute used during paging and/or searching."
      },
      "SearchParams": {
        "type": "object",
        "properties": {
          "cursor": {
            "type": "string",
            "description": "The value of cursor. Provide null for 1st page. For next page, provide the value of nextCursor from last API response. For previous page, provide the vaue of prevCursor from last API response."
          },
          "limit": {
            "maximum": 100,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the maximum number of items to include in a page (1-100).",
            "format": "int32"
          },
          "orderByAttribute": {
            "$ref": "#/components/schemas/OrderAttribute"
          },
          "searchByAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchAttribute"
            }
          }
        },
        "description": "Search parameters."
      },
      "SearchParms": {
        "type": "object",
        "properties": {
          "attributes": {
            "type": "array",
            "description": "Users search only: additional, non-core attributes to include in the returned object. Attribute names are specific to the returned object.",
            "items": {
              "type": "string",
              "description": "Users search only: additional, non-core attributes to include in the returned object. Attribute names are specific to the returned object."
            }
          },
          "cursor": {
            "type": "string",
            "description": "Identifies the page to return when paging over a result set--if present, search by / order by attributes are ignored."
          },
          "limit": {
            "maximum": 100,
            "minimum": 1,
            "type": "integer",
            "description": "Identifies the maximum number of items to include in a page (1-100).",
            "format": "int32"
          },
          "orderByAttribute": {
            "$ref": "#/components/schemas/OrderByAttribute"
          },
          "searchByAttributes": {
            "type": "array",
            "description": "Identifies attributes for searching purposes. Some end-points have pre-defined values and ignore this attribute.",
            "items": {
              "$ref": "#/components/schemas/SearchByAttribute"
            }
          }
        },
        "description": "Parameters specifying search attributes or a cursor to get results from a previous search."
      },
      "ServiceBundle": {
        "required": [
          "bundleType"
        ],
        "type": "object",
        "properties": {
          "bundleType": {
            "type": "string",
            "description": "Identifies the bundle.",
            "example": "ADVANCED",
            "enum": [
              "ADVANCED",
              "ESSENTIALS",
              "PROFESSIONAL",
              "ENTERPRISE",
              "API",
              "STANDARD",
              "PLUS",
              "PREMIUM",
              "CONSUMER"
            ]
          },
          "rank": {
            "type": "integer",
            "description": "A number that allows to sort bundles of the same category by precedence. Read-only currently.",
            "format": "int32",
            "example": 1000
          },
          "usageReportId": {
            "type": "string",
            "description": "An identifier used to report usage for this bundle.",
            "example": "SIG_CTR-474988"
          }
        },
        "description": "A bundle identifies a set of capabilities available to a tenant."
      },
      "SingleEnrollmentPrintRequest": {
        "required": [
          "hopper"
        ],
        "type": "object",
        "properties": {
          "deviceId": {
            "pattern": "[a-fA-F0-9]{16}",
            "type": "string",
            "description": "16 character unique Auth key of the printer. This is required if printerId is not provided.",
            "example": "D5619F1C3590A236"
          },
          "enrollmentDesignName": {
            "type": "string",
            "description": "The design name of the enrollment. <b>Note:</b> primaryKey parameter is required when this parameter is present.",
            "example": "Enrollment Design 1"
          },
          "enrollmentId": {
            "type": "string",
            "description": "The unique enrollment ID obtained from Read Enrollments request. <b>Note:</b> primaryKey and enrollmentDesignName parameters are not required when this parameter is present.",
            "example": "eyJ3b3JrZmxvd0lkIjoiZDkyZmU1OTgtYmU5MC00N2QzLWJmNWEtZmM2MDJmZjNkOGY0Iiwid2hlcmVDbGF1c2UiOnsiQVVUT1NFUVVFTkNFRklFTEQxIjoiMiJ9fQ=="
          },
          "exceptionSlotMessage": {
            "type": "string",
            "description": "The message to display on the printer LCD screen when the exception slot is selected. Maximum 45 character limit for Sigma printers, and 32 character limit for older printers.",
            "example": "Load the correct card stock type into the exception slot."
          },
          "hopper": {
            "type": "integer",
            "description": "The printer hopper to use. Value of 0 will use the printer exception slot.",
            "format": "int32",
            "example": 1
          },
          "primaryKey": {
            "type": "string",
            "description": "The primary key of the enrollment. <b>Note:</b> enrollmentDesignName parameter is required when this parameter is present.",
            "example": "1"
          },
          "printerId": {
            "pattern": "[a-fA-F0-9-]{32,36}",
            "type": "string",
            "description": "32 or 36 character unique ID of the printer. This takes preference over deviceId if both are provided.",
            "example": "aa123-bb456-cc789-dd890-ee123-fffee4"
          }
        },
        "description": "Parameters for printing single enrollment."
      },
      "SmartCardCommand": {
        "required": [
          "command",
          "type"
        ],
        "type": "object",
        "properties": {
          "command": {
            "pattern": "[a-fA-F0-9]*|Connect|CONNECT|connect|Disconnect|DISCONNECT|disconnect|Reset|RESET|reset",
            "type": "string",
            "example": "FD3500000100"
          },
          "resultMatcher": {
            "pattern": "[a-fA-F0-9*]*",
            "type": "string",
            "example": "9*"
          },
          "type": {
            "type": "string",
            "enum": [
              "APDU",
              "COUPLER"
            ]
          }
        },
        "description": "Smart card command APDU"
      },
      "SmartCardCommandResponse": {
        "type": "object",
        "properties": {
          "response": {
            "type": "string",
            "example": "AF"
          }
        }
      },
      "SmartCredential": {
        "required": [
          "deviceVerified"
        ],
        "type": "object",
        "properties": {
          "allowedActions": {
            "type": "array",
            "description": "A list of administration actions currently allowed for this smart credential.",
            "items": {
              "type": "string",
              "description": "A list of administration actions currently allowed for this smart credential.",
              "enum": [
                "ACTIVATE",
                "REACTIVATE",
                "UPDATE",
                "UNASSIGN",
                "UNBLOCK",
                "ENABLE",
                "DISABLE",
                "DELETE",
                "VIEW_CERTIFICATES"
              ]
            }
          },
          "cardDigitalConfig": {
            "$ref": "#/components/schemas/DigitalIdConfig"
          },
          "cardDigitalConfigId": {
            "type": "string",
            "description": "The UUID of the Card Digital Id config of this smart credential. If not set, the smart credential will not have a Card Digital Id."
          },
          "cardDigitalConfigRequired": {
            "type": "boolean",
            "description": "Indicates if the card digitalid config is required or not."
          },
          "cardHolderDigitalConfig": {
            "$ref": "#/components/schemas/DigitalIdConfig"
          },
          "cardHolderDigitalConfigId": {
            "type": "string",
            "description": "The UUID of the Card Holder Digital Id config of this smart credential. If not set, the smart credential will not have a Card Holder Digital Id."
          },
          "cardHolderDigitalConfigRequired": {
            "type": "boolean",
            "description": "Indicates if the card holder digitalid config is required or not."
          },
          "certificates": {
            "type": "array",
            "description": "A list of certificates associated with this smart credential.",
            "items": {
              "$ref": "#/components/schemas/DigitalIdCert"
            }
          },
          "chipId": {
            "type": "string",
            "description": "The chip id of the smart card set when the smart credential is encoded."
          },
          "deviceVerified": {
            "type": "boolean",
            "description": "A flag indicating if the smart credential is enrolled on a verified device."
          },
          "digitalIds": {
            "type": "array",
            "description": "A list of digital ids associated with this smart credential.",
            "items": {
              "$ref": "#/components/schemas/DigitalId"
            }
          },
          "encodeMsg": {
            "type": "string",
            "description": "For smart credentials that have failed to encode, the encode message stores a message providing information about the failure."
          },
          "encodeState": {
            "type": "string",
            "description": "The encode state of a smart credential indicates if encoding has started, completed successfully or failed.",
            "enum": [
              "ENCODE_START",
              "ENCODE_DONE",
              "ENCODE_ERROR"
            ]
          },
          "enrollState": {
            "type": "string",
            "description": "The enrollment state of a smart credential indicates if all of the necessary enrollment values have been collected. Only smart credentials in the ENROLLED state can be activated.",
            "enum": [
              "ENROLLING",
              "ENROLLED"
            ]
          },
          "expiryDate": {
            "type": "string",
            "description": "For issued smart credentials, the expiry date is the date on which the smart credential will expire.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID assigned to the smart credential when it is created."
          },
          "issueDate": {
            "type": "string",
            "description": "The date on which the smart credential was issued.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "notifyEnabled": {
            "type": "boolean",
            "description": "A flag indicating if notification is enabled for this smart credential."
          },
          "platform": {
            "type": "string",
            "description": "The platform of the Mobile SC application on which this smart credential was encoded."
          },
          "scDefnId": {
            "type": "string",
            "description": "The UUID of the Smart Credential Definition that defines this smart credential."
          },
          "scDefnName": {
            "type": "string",
            "description": "The name of the smart credential definition of this smart credential."
          },
          "serialNumber": {
            "type": "string",
            "description": "The unique serial number of the smart credential generated when it is created."
          },
          "state": {
            "type": "string",
            "description": "The state of the smart credential.  Only smart credentials in the ACTIVE state can be used for authentication.",
            "enum": [
              "ACTIVE",
              "INACTIVE"
            ]
          },
          "userId": {
            "type": "string",
            "description": "The UUID of the user that owns this smart credential."
          },
          "userUserId": {
            "type": "string",
            "description": "The user Id of the user that owns this smart credential."
          },
          "variableValues": {
            "type": "array",
            "description": "Variable values for this smart credential",
            "items": {
              "$ref": "#/components/schemas/SCVariableValue"
            }
          },
          "version": {
            "type": "string",
            "description": "The version of the Mobile SC application on which this smart credential was encoded."
          }
        },
        "description": "Information returned from the service about a smart credential."
      },
      "SmsVoice": {
        "type": "object",
        "properties": {
          "allotment": {
            "type": "integer",
            "description": "The number of entitlements allotted to the current account.  If the account is an SP then entitlements can be allocated to child accounts.",
            "format": "int32",
            "example": 400
          },
          "consumed": {
            "type": "integer",
            "description": "The entitlements consumed since start date during the entitlement period.",
            "format": "int32"
          },
          "endDate": {
            "type": "string",
            "description": "The date when the entitlement will end.",
            "format": "date-time",
            "example": "2020-02-19T00:00:00Z"
          },
          "gracePeriodEndDate": {
            "type": "string",
            "description": "The date when the grace period for the entitlement will end.",
            "format": "date-time",
            "example": "2020-02-19T00:00:00Z"
          },
          "overageType": {
            "type": "string",
            "description": "The overage type of this entitlement.",
            "example": "YES",
            "enum": [
              "YES",
              "NO",
              "UNLIMITED"
            ]
          },
          "quantity": {
            "type": "integer",
            "description": "The number of SMS/Voice credits allowed during the period.",
            "format": "int32",
            "example": 1000
          },
          "renewalQuantity": {
            "type": "integer",
            "description": "The number of SMS/Voice credits allowed when the entitlement is renewed.",
            "format": "int32",
            "example": 1000
          },
          "startDate": {
            "type": "string",
            "description": "The date when the entitlement starts.",
            "format": "date-time",
            "example": "2019-02-19T00:00:00Z"
          }
        },
        "description": "Sms/Voice entitlements of a tenant."
      },
      "SmsVoiceParms": {
        "type": "object",
        "properties": {
          "deleteEntitlement": {
            "type": "boolean",
            "description": "If set to true when updating an SMSVOICE entitlement, the existing entitlement is removed. This attribute is ignored when creating an SMSVOICE entitlement."
          },
          "endDate": {
            "type": "string",
            "description": "The date when the entitlement period will end.  The value must be after the start date. ",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "quantity": {
            "type": "integer",
            "description": "The number of SMS/Voice credits allowed during the entitlement period.",
            "format": "int32",
            "example": 1000
          },
          "renewalQuantity": {
            "type": "integer",
            "description": "The number of SMS/Voice credits allowed when the entitlement is renewed.",
            "format": "int32",
            "example": 1000
          },
          "startDate": {
            "type": "string",
            "description": "The date when the entitlement period starts. This value cannot be in the future. If not specified, it defaults to the current date.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          }
        },
        "description": "Parameters passed when setting the SMS/Voice entitlements of a tenant."
      },
      "SpIdentityProvider": {
        "required": [
          "enabled",
          "name"
        ],
        "type": "object",
        "properties": {
          "clientId": {
            "type": "string",
            "description": "The client id of this tenant management."
          },
          "defaultMaxAge": {
            "type": "integer",
            "description": "The default max age of this tenant management.",
            "format": "int32"
          },
          "displayConsent": {
            "type": "boolean",
            "description": "Whether this tenant management should display consent."
          },
          "enabled": {
            "type": "boolean",
            "description": "Whether tenant management is enabled."
          },
          "initiateLoginUri": {
            "type": "string",
            "description": "The initiate login URI of this tenant management."
          },
          "name": {
            "type": "string",
            "description": "The name of this tenant management."
          },
          "signingKeyId": {
            "type": "string",
            "description": "The signing key of this tenant management."
          }
        },
        "description": "A tenant management configuration."
      },
      "SpIdentityProviderParms": {
        "required": [
          "enabled"
        ],
        "type": "object",
        "properties": {
          "createDefaultResourceRule": {
            "type": "boolean",
            "description": "Whether an initial default resource rule accessible to all users should be created for this tenant management. This is only used if tenant management was previously disabled. If not set, it defaults to false."
          },
          "defaultMaxAge": {
            "type": "integer",
            "description": "The default max age of this tenant management. If not set, it is not used.",
            "format": "int32"
          },
          "disableSSODefaultResourceRule": {
            "type": "boolean",
            "description": "If an initial default resource rule is enabled, whether to disable SSO. This is only used if an initial default resource rule is being enabled. If not set, it defaults to false."
          },
          "displayConsent": {
            "type": "boolean",
            "description": "Whether this tenant management should display consent. If not set, it defaults to false."
          },
          "enabled": {
            "type": "boolean",
            "description": "Whether tenant management is enabled."
          },
          "signingKeyId": {
            "type": "string",
            "description": "The signing key of this tenant management."
          }
        },
        "description": "Parameters passed when setting tenant management."
      },
      "TempAccessCode": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "The actual temporary access code.  This value will only be returned if the administrator has the TEMPACCESSCODECONTENTS:VIEW permission."
          },
          "createDate": {
            "type": "string",
            "description": "The date on which this temporary access code was created.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "expired": {
            "type": "boolean",
            "description": "A flag indicating if this temporary access code is expired now."
          },
          "expiryDate": {
            "type": "string",
            "description": "The expiry date of this temporary access code.  If not set, it never expires.",
            "format": "date-time",
            "example": "2019-03-19T13:15:27Z"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID assigned to the temporary access code when it is created."
          },
          "maxUses": {
            "type": "integer",
            "description": "The maximum number of times this temporary access code can be used.  If not set, there are no limits.",
            "format": "int32"
          },
          "numUses": {
            "type": "integer",
            "description": "The number of times this temporary access code has been used.",
            "format": "int32"
          }
        },
        "description": "Information returned from the service about a temporary access code."
      },
      "Tenant": {
        "required": [
          "authenticationAccount",
          "companyName",
          "hostname",
          "id",
          "issuanceAccount",
          "locked",
          "serviceProvider",
          "spIdp"
        ],
        "type": "object",
        "properties": {
          "authenticationAccount": {
            "type": "boolean",
            "description": "A flag indicating if this tenant is an authentication account."
          },
          "companyName": {
            "type": "string",
            "description": "The name of the company that owns this tenant.",
            "example": "MyCompany Corp."
          },
          "contractMode": {
            "type": "string",
            "description": "The contract mode of a tenant, allowable values = 'PRODUCTION', 'TRIAL', example='TRIAL'.",
            "enum": [
              "PRODUCTION",
              "TRIAL",
              "UNKNOWN"
            ]
          },
          "hostname": {
            "type": "string",
            "description": "The hostname of the tenant.",
            "example": "mycompany.us.trustedauth.com"
          },
          "id": {
            "type": "string",
            "description": "The UUID of this tenant within the service provider."
          },
          "issuanceAccount": {
            "type": "boolean",
            "description": "A flag indicating if this tenant is an issuance account."
          },
          "locked": {
            "type": "boolean",
            "description": "A flag indicating if this tenant has been locked."
          },
          "otpProviderId": {
            "type": "string",
            "description": "The ID of the preferred OTP provider associated with this tenant, if any. Only visible to root tenant."
          },
          "previousHostname": {
            "type": "string",
            "description": "The previous hostname of the tenant.",
            "example": "mycompany.us.trustedauth.com"
          },
          "serviceProvider": {
            "type": "boolean",
            "description": "A flag indicating if this child tenant is a service provider."
          },
          "spIdp": {
            "type": "boolean",
            "description": "A flag indicating if this tenant is enabled for tenant management authentication."
          }
        },
        "description": "Information returned about a tenant of a service provider."
      },
      "TenantParms": {
        "required": [
          "companyName",
          "domain"
        ],
        "type": "object",
        "properties": {
          "authenticationAccount": {
            "type": "boolean",
            "description": "When creating a new tenant as a child of the root service provider set this to true if the tenant is to be an authentication service. If not specified, it defaults to true. You cannot set the authenticate and issuance values to both true or both false. A child of a non-root service provider inherits the value of its service provider and if specified, this value is ignored.",
            "example": true
          },
          "companyCountry": {
            "type": "string",
            "description": "The country two-letter code (ISO 3166-1) of the location of the company that will own this account.",
            "example": "ca"
          },
          "companyName": {
            "type": "string",
            "description": "The name of the company that will own this account.  This value is required.",
            "example": "MyCompany Corp."
          },
          "companyState": {
            "type": "string",
            "description": "The province/state two-letter code (postal abbreviation) of the location of the company that will own this account. This value is required for companies in the United States or Canada when the companyCountry attribute is provided.",
            "example": "ON"
          },
          "domain": {
            "type": "string",
            "description": "The domain for this account. This value is required when creating a tenant",
            "example": "mycompany"
          },
          "issuanceAccount": {
            "type": "boolean",
            "description": "When creating a new tenant as a child of the root service provider set this to true if the tenant is to be an issuance service. If not specified, it defaults to false. You cannot set the authenticate and issuance values to both true or both false. A child of a non-root service provider inherits the value of its service provider and if specified, this value is ignored.",
            "example": false
          },
          "serviceProvider": {
            "type": "boolean",
            "description": "When creating a new tenant set this to true if the tenant is to be a service provider.",
            "example": true
          }
        },
        "description": "Parameters passed when creating a tenant."
      },
      "TenantsPage": {
        "required": [
          "results"
        ],
        "type": "object",
        "properties": {
          "paging": {
            "$ref": "#/components/schemas/Paging"
          },
          "results": {
            "type": "array",
            "description": "A single page with the list of tenants found.",
            "items": {
              "$ref": "#/components/schemas/Tenant"
            }
          }
        },
        "description": "Contains paging information and the results from a tenants search."
      },
      "Token": {
        "required": [
          "appVerified",
          "deviceVerified"
        ],
        "type": "object",
        "properties": {
          "algorithmType": {
            "type": "string",
            "description": "The algorithm type used by the token that was created or loaded into the system to generate OTP values.",
            "enum": [
              "AT",
              "OATH_HOTP",
              "OATH_OCRA",
              "OATH_TOTP",
              "VENDOR"
            ]
          },
          "allowedActions": {
            "type": "array",
            "description": "Actions that can be performed on this token.",
            "items": {
              "type": "string",
              "description": "Actions that can be performed on this token.",
              "enum": [
                "ACTIVATE",
                "REACTIVATE",
                "ACTIVATE_COMPLETE",
                "DELETE",
                "UNLOCK",
                "ENABLE",
                "DISABLE",
                "RESET",
                "ASSIGN",
                "UNASSIGN"
              ]
            }
          },
          "appVerified": {
            "type": "boolean",
            "description": "A flag indicating if the token was activated on a verified app."
          },
          "description": {
            "type": "string",
            "description": "Optional text describing this token."
          },
          "deviceVerified": {
            "type": "boolean",
            "description": "A flag indicating if the token is activated on a verified device."
          },
          "groups": {
            "type": "array",
            "description": "The UUIDs of groups to which this token belongs.  This value is only used for unassigned tokens. Only groups to which the current administrator has access will be returned.",
            "items": {
              "type": "string",
              "description": "The UUIDs of groups to which this token belongs.  This value is only used for unassigned tokens. Only groups to which the current administrator has access will be returned."
            }
          },
          "id": {
            "type": "string",
            "description": "The unique UUID assigned to the token when it is created."
          },
          "identityVerificationStatus": {
            "type": "string",
            "description": "The identity verification status of the token.",
            "enum": [
              "NOT_REQUIRED",
              "REQUIRED",
              "PENDING",
              "VERIFIED",
              "FAILED"
            ]
          },
          "label": {
            "type": "string",
            "description": "Optional label to identify an assigned token: a String up to 100 characters.",
            "example": "PENDING"
          },
          "lastUsedDate": {
            "type": "string",
            "description": "The date on which the token was last used for authentication.  This value will be null if the token has never been used.",
            "format": "date-time",
            "example": "2019-02-20T10:05:27Z"
          },
          "loadDate": {
            "type": "string",
            "description": "The date on which the token was created or loaded into the system.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "logo": {
            "type": "string",
            "description": "Base-64 encoded logo. If a custom logo is provided by the customer it is returned. Otherwise a system default logo is returned."
          },
          "name": {
            "type": "string",
            "description": "An optional name for the token."
          },
          "platform": {
            "type": "string",
            "description": "The mobile device platform on which an Entrust Soft Token was activated."
          },
          "registeredForTransactions": {
            "type": "boolean",
            "description": "A flag indicating if the Entrust Soft Token has registered for transactions. Only tokens that are registered can perform token push authentication."
          },
          "serialNumber": {
            "type": "string",
            "description": "The serial number of the token either generated when the token was created or loaded into the system."
          },
          "state": {
            "type": "string",
            "description": "The state of the token.  For most tokens, only tokens in the ACTIVE state can be used for authentication. Google Authenticator tokens in the ACTIVATING state can also be used for authentication.",
            "enum": [
              "NEW",
              "ACTIVATING",
              "ACTIVE",
              "INACTIVE",
              "UNASSIGNED"
            ]
          },
          "supportsChallengeResponse": {
            "type": "boolean",
            "description": "A flag indicating if the Token supports challenge response processing.",
            "example": false
          },
          "supportsResponse": {
            "type": "boolean",
            "description": "A flag indicating if the Token supports response processing.",
            "example": true
          },
          "supportsSignature": {
            "type": "boolean",
            "description": "A flag indicating if the Token supports signature processing.",
            "example": false
          },
          "supportsUnlock": {
            "type": "boolean",
            "description": "A flag indicating if the Token supports unlock processing.",
            "example": true
          },
          "supportsUnlockTOTP": {
            "type": "boolean",
            "description": "A flag indicating if the Token supports unlock using TOTP processing.",
            "example": false
          },
          "type": {
            "type": "string",
            "description": "The type of token specified when the token was created or loaded into the system.",
            "enum": [
              "ENTRUST_PHYSICAL_TOKEN",
              "ENTRUST_SOFT_TOKEN",
              "GOOGLE_AUTHENTICATOR",
              "OATH_PHYSICAL_TOKEN",
              "ENTRUST_LEGACY_TOKEN"
            ]
          },
          "userId": {
            "type": "string",
            "description": "If the token is assigned to a user, this value specifies that user's user id."
          }
        },
        "description": "Information returned from the service about a token."
      },
      "UpdatePrinterV2Request": {
        "type": "object",
        "properties": {
          "location": {
            "type": "string",
            "description": "The physical location of the printer.",
            "example": "321 Plesant, MyCompany, Floor 2"
          },
          "name": {
            "type": "string",
            "description": "The printer's name.",
            "example": "Printer at front desk"
          }
        }
      },
      "UsageInfo": {
        "required": [
          "aggregationPeriod",
          "count",
          "endTime",
          "id",
          "startTime",
          "tenantId",
          "trial",
          "usageType"
        ],
        "type": "object",
        "properties": {
          "aggregationPeriod": {
            "type": "string",
            "description": "The aggregation period used.",
            "example": "DAILY",
            "enum": [
              "DAILY",
              "WEEKLY",
              "MONTHLY"
            ]
          },
          "bundleType": {
            "type": "string",
            "description": "The service bundle."
          },
          "count": {
            "type": "integer",
            "description": "The entitlements used in the aggregation period.",
            "format": "int64"
          },
          "endTime": {
            "type": "string",
            "description": "The end time of the aggregation period.",
            "example": "2019-02-19T00:00:00Z"
          },
          "id": {
            "type": "string",
            "description": "The unique UUID for this usage info."
          },
          "startTime": {
            "type": "string",
            "description": "The start time of the aggregation period.",
            "example": "2019-02-19T00:00:00Z"
          },
          "tenantId": {
            "type": "string",
            "description": "The unique UUID of the tenant."
          },
          "trial": {
            "type": "boolean",
            "description": "Whether the usage is associated to a trial tenant.",
            "example": true
          },
          "usageType": {
            "type": "string",
            "description": "The type of this entitlement.",
            "example": "USERS",
            "enum": [
              "USERS",
              "ISSUANCE"
            ]
          }
        },
        "description": "Entitlement usage information of a tenant."
      },
      "UsageInfoPage": {
        "required": [
          "results"
        ],
        "type": "object",
        "properties": {
          "paging": {
            "$ref": "#/components/schemas/Paging"
          },
          "results": {
            "type": "array",
            "description": "A single page with the list of usage info found.",
            "items": {
              "$ref": "#/components/schemas/UsageInfo"
            }
          }
        },
        "description": "Contains paging information and the results from a tenant usage info search."
      },
      "User": {
        "type": "object",
        "properties": {
          "alternateEmails": {
            "type": "array",
            "description": "A list of all the users alternate emails.",
            "items": {
              "$ref": "#/components/schemas/UserAlternateEmails"
            }
          },
          "authenticatorLockoutStatus": {
            "type": "array",
            "description": "A list of all authenticators that the user has with their lockout status.",
            "items": {
              "$ref": "#/components/schemas/UserAuthenticatorLockoutStatus"
            }
          },
          "directoryDN": {
            "type": "string",
            "description": "The DN of the user in the directory the user was synchronized from."
          },
          "directoryId": {
            "type": "string",
            "description": "If the user was synchronized from a directory, the UUID of that directory."
          },
          "directoryName": {
            "type": "string",
            "description": "If the user was synchronized from a directory, the name of that directory."
          },
          "directoryObjectGUID": {
            "type": "string",
            "description": "The objectGUID of the user in the directory the user was synchronized from."
          },
          "directoryType": {
            "type": "string",
            "description": "The type of the directory user was synchronized from.",
            "enum": [
              "ON_PREM",
              "AZURE",
              "AD_CONNECTOR"
            ]
          },
          "email": {
            "type": "string",
            "description": "The email address of this user.  This value may or may not be required depending on configuration. It must be set to use EMAIL OTP authentication and other features that require an email address."
          },
          "externalId": {
            "type": "string",
            "description": "An optional external ID for this user.  This value can be used to track the external identity of an Identity as a Service user. ",
            "example": "John"
          },
          "externalSource": {
            "type": "string",
            "description": "An optional value that describes the source when the user is synchronized from an external source."
          },
          "fidoTokens": {
            "type": "array",
            "description": "A list of all the FIDO tokens owned by this user.",
            "items": {
              "$ref": "#/components/schemas/FIDOToken"
            }
          },
          "firstName": {
            "type": "string",
            "description": "The first name of this user.  This value may or may not be required depending on configuration."
          },
          "frozen": {
            "type": "boolean",
            "description": "Indicates whether a user is unable to authenticate due to inactivity.",
            "example": true
          },
          "frozenGracePeriod": {
            "type": "string",
            "description": "Indicates a user's frozen grace period.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "grids": {
            "type": "array",
            "description": "A list of all the grids owned by this user.",
            "items": {
              "$ref": "#/components/schemas/Grid"
            }
          },
          "groups": {
            "type": "array",
            "description": "A list of all groups to which this user belongs.",
            "items": {
              "$ref": "#/components/schemas/Group"
            }
          },
          "id": {
            "type": "string",
            "description": "The unique UUID for this user.  This value is generated by the service when a user is created."
          },
          "lastAuthTime": {
            "type": "string",
            "description": "The last time this user successfully authenticated.  Null if the user has never authenticated.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "lastModified": {
            "type": "string",
            "description": "When the user was last modified.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "lastName": {
            "type": "string",
            "description": "The last name of this user.  This value may or may not be required depending on configuration."
          },
          "locale": {
            "type": "string",
            "description": "The locale of this user.  If not set, the default account locale will be used."
          },
          "locked": {
            "type": "boolean",
            "description": "A flag indicating if this user is locked."
          },
          "lockedAuthenticatorTypes": {
            "type": "array",
            "description": "The user authenticators that are locked.",
            "items": {
              "type": "string",
              "description": "The user authenticators that are locked.",
              "enum": [
                "MACHINE",
                "PASSWORD",
                "EXTERNAL",
                "KBA",
                "TEMP_ACCESS_CODE",
                "OTP",
                "GRID",
                "TOKEN",
                "TOKENCR",
                "TOKENPUSH",
                "FIDO",
                "SMARTCREDENTIALPUSH",
                "PASSWORD_AND_SECONDFACTOR",
                "SMART_LOGIN",
                "IDP",
                "PASSKEY",
                "IDP_AND_SECONDFACTOR",
                "USER_CERTIFICATE",
                "FACE",
                "PASSTHROUGH",
                "MAGICLINK"
              ]
            }
          },
          "lockedAuthenticators": {
            "type": "array",
            "description": "The user authenticators that are locked. Deprecated: use lockedAuthenticatorTypes",
            "deprecated": true,
            "items": {
              "type": "string",
              "description": "The user authenticators that are locked. Deprecated: use lockedAuthenticatorTypes",
              "deprecated": true,
              "enum": [
                "PASSWORD",
                "KBA",
                "TEMP_ACCESS_CODE",
                "GRID",
                "OTP_EMAIL",
                "OTP_SMS",
                "OTP_VOICE",
                "ENTRUST_SOFT_TOKEN",
                "ENTRUST_SOFT_TOKEN_PUSH",
                "GOOGLE_AUTHENTICATOR",
                "HARDWARE_TOKEN",
                "FIDO",
                "SMARTCREDENTIALPUSH",
                "USER_CERTIFICATE",
                "MACHINE",
                "FACE",
                "PASSTHROUGH",
                "TOKENCR",
                "MAGICLINK"
              ]
            }
          },
          "lockoutExpiry": {
            "type": "string",
            "description": "If the user is locked, this value will specify the time at which the lockout will expire.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "magicLinkEnabled": {
            "type": "boolean",
            "description": "Indicates whether Magic Links are enabled for this user.",
            "example": true
          },
          "migrated": {
            "type": "boolean",
            "description": "A flag indicating if this user was migrated from Entrust IdentityGuard."
          },
          "mobile": {
            "type": "string",
            "description": "The mobile number of this user.  This value may or may not be required depending on configuration. It must be set to use SMS OTP authentication."
          },
          "oauthRoles": {
            "type": "array",
            "description": "A list of all oauth roles to which this user belongs.",
            "items": {
              "$ref": "#/components/schemas/OAuthRole"
            }
          },
          "organizations": {
            "type": "array",
            "description": "A list of the user organizations.",
            "items": {
              "$ref": "#/components/schemas/Organization"
            }
          },
          "otpCreateTime": {
            "type": "string",
            "description": "If the user has an OTP, this attribute specifies when the user's OTP was created.",
            "format": "date-time",
            "example": "2019-02-11T11:45:27Z"
          },
          "passwordCompromised": {
            "type": "boolean",
            "description": "A flag indicating if the user password is compromised."
          },
          "passwordExpirationTime": {
            "type": "string",
            "description": "The password expiration time.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "phone": {
            "type": "string",
            "description": "The phone number of this user.  This value may or may not be required depending on configuration. It must be set to use VOICE OTP authentication."
          },
          "preferredOtpDelivery": {
            "type": "string",
            "description": "Preferred OTP delivery type (SMS, EMAIL or VOICE) or SYSTEM to use the system defined default.",
            "example": "SYSTEM",
            "enum": [
              "EMAIL",
              "SMS",
              "VOICE",
              "SYSTEM"
            ]
          },
          "preferredOtpDeliveryContactAttributes": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "Preferred OTP delivery contact attribute for the given type (i.e., OTP_EMAIL, OTP_SMS, OTP_VOICE. An empty string means no override for that type).",
              "example": "{\"OTP_EMAIL\":\"Email\",\"OTP_SMS\":\"Personal Mobile\",\"OTP_VOICE\":\"default\"}"
            },
            "description": "Preferred OTP delivery contact attribute for the given type (i.e., OTP_EMAIL, OTP_SMS, OTP_VOICE. An empty string means no override for that type).",
            "example": {
              "OTP_EMAIL": "Email",
              "OTP_SMS": "Personal Mobile",
              "OTP_VOICE": "default"
            }
          },
          "registrationEnabled": {
            "type": "boolean",
            "description": "Indicates whether registration is enabled for this user.",
            "example": true
          },
          "registrationRequired": {
            "type": "boolean",
            "description": "Indicates whether self-registration is required. This attribute doesn't apply to administrators.",
            "example": true
          },
          "securityId": {
            "type": "string",
            "description": "The security ID of this user. The security ID is a unique value used to identity the user when performing smart card login to Microsoft Windows.",
            "example": "8c35d5f2-a18a-11ed-a8fc-0242ac120002"
          },
          "showNotification": {
            "type": "boolean",
            "description": "Indicates whether to show notifications to this user.",
            "example": true
          },
          "smartCredentials": {
            "type": "array",
            "description": "A list of all the smart credentials owned by this user.",
            "items": {
              "$ref": "#/components/schemas/SmartCredential"
            }
          },
          "state": {
            "type": "string",
            "description": "The state of this user.  Only users in the ACTIVE state can perform authentication.",
            "enum": [
              "ACTIVE",
              "INACTIVE"
            ]
          },
          "tempAccessCode": {
            "$ref": "#/components/schemas/TempAccessCode"
          },
          "tokens": {
            "type": "array",
            "description": "A list of all the tokens owned by this user.",
            "items": {
              "$ref": "#/components/schemas/Token"
            }
          },
          "type": {
            "type": "string",
            "description": "The type of user.  A value of LDAP_AD means the user was synchronized from a directory. A value of MGMT_UI means the user was created in Identity as a Service. A value of EXTERNAL means the user was synchronized from an external source.",
            "enum": [
              "LDAP_AD",
              "MGMT_UI",
              "EXTERNAL"
            ]
          },
          "userAliases": {
            "type": "array",
            "description": "A list of user aliases for this user.",
            "items": {
              "$ref": "#/components/schemas/UserAlias"
            }
          },
          "userAttributeValues": {
            "type": "array",
            "description": "A list of user attribute values for this user.",
            "items": {
              "$ref": "#/components/schemas/UserAttributeValue"
            }
          },
          "userAuthenticatorPreference": {
            "type": "array",
            "description": "The user authenticator preference list.",
            "items": {
              "type": "string",
              "description": "The user authenticator preference list.",
              "enum": [
                "MACHINE",
                "PASSWORD",
                "EXTERNAL",
                "KBA",
                "TEMP_ACCESS_CODE",
                "OTP",
                "GRID",
                "TOKEN",
                "TOKENCR",
                "TOKENPUSH",
                "FIDO",
                "SMARTCREDENTIALPUSH",
                "PASSWORD_AND_SECONDFACTOR",
                "SMART_LOGIN",
                "IDP",
                "PASSKEY",
                "IDP_AND_SECONDFACTOR",
                "USER_CERTIFICATE",
                "FACE",
                "PASSTHROUGH",
                "MAGICLINK"
              ]
            }
          },
          "userCreationTime": {
            "type": "string",
            "description": "The time this user was created. ",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "userExtraAttributes": {
            "type": "array",
            "description": "A list of extra optional attributes for this user.",
            "items": {
              "$ref": "#/components/schemas/UserExtraAttribute"
            }
          },
          "userId": {
            "type": "string",
            "description": "The user ID for this user."
          },
          "userPrincipalName": {
            "type": "string",
            "description": "The user principal name of this user.  This value may or may not be required depending on configuration."
          },
          "verificationEnabled": {
            "type": "boolean",
            "description": "Indicates whether verification is enabled for this user.",
            "example": true
          },
          "verificationRequired": {
            "type": "boolean",
            "description": "Indicates whether verification is required. This attribute doesn't apply to administrators.",
            "example": true
          }
        },
        "description": "The values stored for a user.  This structure is passed when creating or modifying a user.  It is returned when querying a user."
      },
      "UserAlias": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The UUID of this user alias set when the user alias is created.",
            "example": "76234da-3cf2-4t6u-8d02-8234fdfc472"
          },
          "type": {
            "type": "string",
            "description": "The type of user alias. A value of USERID is used for an alias that will represent the actual user id value. A value of CUSTOM is used for aliases manually created by an administrator.  A value of DERIVED is defined for future use and should not be used at this time.",
            "enum": [
              "CUSTOM",
              "DERIVED",
              "USERID"
            ]
          },
          "userId": {
            "type": "string",
            "description": "The UUID of the user to which this user alias belongs.",
            "example": "42133ed4-3cf2-4t6u-8d02-8234fdfc472"
          },
          "value": {
            "type": "string",
            "description": "The value for the user alias.",
            "example": "some-alias"
          }
        },
        "description": "Specifies an alias for a particular user."
      },
      "UserAlternateEmails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the email attribute.",
            "example": "Secondary email"
          },
          "value": {
            "type": "string",
            "description": "Value of the email attribute.",
            "example": "secondary@mycompany.com"
          }
        },
        "description": "Specifies alternate emails for a particular user."
      },
      "UserAttribute": {
        "required": [
          "mandatory",
          "name",
          "systemDefined",
          "unique"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The UUID for this user attribute.  Generated when the user attribute is created."
          },
          "mandatory": {
            "type": "boolean",
            "description": "A flag indicating if users must have a value for this user attribute."
          },
          "name": {
            "type": "string",
            "description": "The name of this user attribute."
          },
          "systemDefined": {
            "type": "boolean",
            "description": "A flag indicating if this user attribute is one of the system defined user attributes."
          },
          "type": {
            "type": "string",
            "description": "Type of user attribute. Currently only used to specify the type of contact if the attribute is to be used for OTP delivery.",
            "example": "OTP_EMAIL",
            "enum": [
              "NONE",
              "OTP_EMAIL",
              "OTP_SMS",
              "OTP_VOICE",
              "OTP_WECHAT",
              "OTP_WHATSAPP"
            ]
          },
          "unique": {
            "type": "boolean",
            "description": "A flag indicating if this attribute is intended to be unique."
          }
        },
        "description": "Information about user attribute definitions."
      },
      "UserAttributeValue": {
        "type": "object",
        "properties": {
          "editable": {
            "type": "boolean",
            "description": "A flag indicating if this user attribute value can be modified."
          },
          "id": {
            "type": "string",
            "description": "The UUID of this user attribute value set when the user attribute value is created.",
            "example": "76234da-3cf2-4t6u-8d02-8234fdfc472"
          },
          "lastUpdate": {
            "type": "string",
            "description": "The last time the attribute value was updated.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "userAttribute": {
            "$ref": "#/components/schemas/UserAttribute"
          },
          "userAttributeId": {
            "type": "string",
            "description": "The UUID of the user attribute that defines this user attribute value.  The userAttributeId must be provided when creating or modifying a user attribute value.",
            "example": "76234da-3cf2-4t6u-8d02-8234fdfc472"
          },
          "userId": {
            "type": "string",
            "description": "The UUID of the user to which this user attribute value belongs.",
            "example": "John"
          },
          "value": {
            "type": "string",
            "description": "The value for the user attribute.",
            "example": "value"
          }
        },
        "description": "Specifies the value of a user attribute for a particular user."
      },
      "UserAuthenticatorLockoutStatus": {
        "type": "object",
        "properties": {
          "lockoutDate": {
            "type": "string",
            "description": "The date the user was locked. Null means the user is not locked.",
            "format": "date-time",
            "example": "2019-02-19T13:15:27Z"
          },
          "lockoutExpiryDate": {
            "type": "string",
            "description": "if remainingAuthenticationAttempts is 0 then a lockoutExpiryDate of null means the lockout never expires. Otherwise a value of null means the user isn't locked out.",
            "format": "date-time",
            "example": "2019-02-20T13:15:27Z"
          },
          "name": {
            "type": "string",
            "description": "The users named password authentication that is locked out."
          },
          "remainingAuthenticationAttempts": {
            "type": "integer",
            "description": "The number of authentication attempts remaining before the user is locked out.",
            "format": "int32"
          },
          "type": {
            "type": "string",
            "description": "The type of the authenticator.",
            "example": "OTP",
            "enum": [
              "MACHINE",
              "PASSWORD",
              "EXTERNAL",
              "KBA",
              "TEMP_ACCESS_CODE",
              "OTP",
              "GRID",
              "TOKEN",
              "TOKENCR",
              "TOKENPUSH",
              "FIDO",
              "SMARTCREDENTIALPUSH",
              "PASSWORD_AND_SECONDFACTOR",
              "SMART_LOGIN",
              "IDP",
              "PASSKEY",
              "IDP_AND_SECONDFACTOR",
              "USER_CERTIFICATE",
              "FACE",
              "PASSTHROUGH",
              "MAGICLINK"
            ]
          }
        },
        "description": "Detailed lockout information for each authenticator for a particular user."
      },
      "UserExtraAttribute": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The UUID of this extra user attribute.",
            "readOnly": true,
            "example": "76234da-3cf2-4t6u-8d02-8234fdfc472"
          },
          "name": {
            "type": "string",
            "description": "The name for the extra user attribute.",
            "example": "some-attr-name"
          },
          "type": {
            "type": "string",
            "description": "Type of custom user attribute.",
            "example": "OTP_SMS",
            "enum": [
              "NONE",
              "OTP_EMAIL",
              "OTP_SMS",
              "OTP_VOICE",
              "OTP_WECHAT",
              "OTP_WHATSAPP"
            ]
          },
          "value": {
            "type": "string",
            "description": "The value for the extra user attribute.",
            "example": "some-value"
          }
        },
        "description": "Specifies an extra optional attribute for a particular user."
      },
      "UserParms": {
        "type": "object",
        "properties": {
          "applyGracePeriod": {
            "type": "boolean",
            "description": "Indicates if the user is granted a new frozen grace period. This value is not used when creating a user. If provided, it will be ignored.",
            "example": true
          },
          "email": {
            "type": "string",
            "description": "The email address of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  It must be set to use EMAIL OTP authentication and other features that require an email address.  To remove the existing value, set the value to an empty string.",
            "example": "johnsmith@organization.com"
          },
          "emailVerification": {
            "type": "boolean",
            "description": "Indicates if a verification email message should be sent to the user if the user now requires verification. The user's policy requiring user verification must also be enabled for the user. If not set, this value defaults to true.",
            "example": true
          },
          "externalId": {
            "type": "string",
            "description": "An optional external ID for this user.  This value can be used to track the external identity of an Identity as a Service user. To unset the external ID, specify an empty string."
          },
          "externalSource": {
            "type": "string",
            "description": "An optional value that describes the source when the user is synchronized from an external source. To unset the external source, specify an empty string."
          },
          "firstName": {
            "type": "string",
            "description": "The first name of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  To remove the existing value, set the value to an empty string.",
            "example": "John"
          },
          "groups": {
            "type": "array",
            "description": "A list of group UUIDs to be assigned to this user.  If specified, these groups replace existing groups.",
            "items": {
              "type": "string",
              "description": "A list of group UUIDs to be assigned to this user.  If specified, these groups replace existing groups."
            }
          },
          "lastName": {
            "type": "string",
            "description": "The last name of this user.    This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  To remove the existing value, set the value to an empty string.",
            "example": "Smith"
          },
          "locale": {
            "type": "string",
            "description": "The locale of this user.  If not set, the default account locale will be used. To remove the existing value, set the value to an empty string.",
            "example": "en",
            "enum": [
              "da",
              "de",
              "en",
              "es",
              "fr",
              "it",
              "ja",
              "ko",
              "nl",
              "nb",
              "pl",
              "pt",
              "ru",
              "sv",
              "th",
              "tr",
              "zh-cn",
              "zh-tw"
            ]
          },
          "lock": {
            "type": "boolean",
            "description": "Indicates if all the user's authenticators are locked or not.",
            "example": true
          },
          "mobile": {
            "type": "string",
            "description": "The mobile number of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  It must be set to use SMS OTP authentication.  To remove the existing value, set the value to an empty string.",
            "example": "+16138691234"
          },
          "oauthRoles": {
            "type": "array",
            "description": "A list of oauth role UUIDs to be assigned to this user.  If specified, these oauth roles replace existing oauth roles.",
            "items": {
              "type": "string",
              "description": "A list of oauth role UUIDs to be assigned to this user.  If specified, these oauth roles replace existing oauth roles."
            }
          },
          "organizations": {
            "type": "array",
            "description": "A list of organization UUIDs to be assigned to this user.  If specified, these organizations replace existing organizations.",
            "items": {
              "type": "string",
              "description": "A list of organization UUIDs to be assigned to this user.  If specified, these organizations replace existing organizations."
            }
          },
          "phone": {
            "type": "string",
            "description": "The phone number of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  It must be set to use VOICE OTP authentication.  To remove the existing value, set the value to an empty string.",
            "example": "+16138691234"
          },
          "preferredOtpDelivery": {
            "type": "string",
            "description": "Preferred OTP delivery type (SMS, EMAIL or VOICE) or SYSTEM to use the system defined default.",
            "example": "SYSTEM",
            "enum": [
              "EMAIL",
              "SMS",
              "VOICE",
              "SYSTEM"
            ]
          },
          "preferredOtpDeliveryContactAttributes": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "Preferred OTP delivery contact attribute for the given type (i.e., OTP_EMAIL, OTP_SMS, OTP_VOICE. An empty string means no override for that type).",
              "example": "{\"OTP_EMAIL\":\"Email\",\"OTP_SMS\":\"Personal Mobile\",\"OTP_VOICE\":\"default\"}"
            },
            "description": "Preferred OTP delivery contact attribute for the given type (i.e., OTP_EMAIL, OTP_SMS, OTP_VOICE. An empty string means no override for that type).",
            "example": {
              "OTP_EMAIL": "Email",
              "OTP_SMS": "Personal Mobile",
              "OTP_VOICE": "default"
            }
          },
          "registrationRequired": {
            "type": "boolean",
            "description": "Indicates whether self-registration is required. If not set when the user is created, this value defaults to true.",
            "example": true
          },
          "securityId": {
            "type": "string",
            "description": "The security ID of this user. The security ID is a unique value used to identity the user when performing smart card login to Microsoft Windows.",
            "example": "8c35d5f2-a18a-11ed-a8fc-0242ac120002"
          },
          "state": {
            "type": "string",
            "description": "The state of this user.  Only users in the ACTIVE state can perform authentication. If not set when the user is created, this value defaults to ACTIVE.",
            "example": "ACTIVE",
            "enum": [
              "ACTIVE",
              "INACTIVE"
            ]
          },
          "userAliases": {
            "type": "array",
            "description": "A list of user aliases for this user. Alias values must be unique with respect to the userId and other aliases of this user and other users.",
            "items": {
              "$ref": "#/components/schemas/UserAlias"
            }
          },
          "userAttributeValues": {
            "type": "array",
            "description": "A list of user attribute values for this user.",
            "items": {
              "$ref": "#/components/schemas/UserAttributeValue"
            }
          },
          "userExtraAttributes": {
            "type": "array",
            "description": "A list of extra optional attributes for this user.",
            "items": {
              "$ref": "#/components/schemas/UserExtraAttribute"
            }
          },
          "userId": {
            "type": "string",
            "description": "The user ID for this user.  This value is required when creating the user, optional during update. The userId must be unique with respect to aliases of this user and the userId and aliases of all other users.",
            "example": "jsmith"
          },
          "userPrincipalName": {
            "type": "string",
            "description": "The user principal name of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  To remove the existing value, set the value to an empty string.",
            "example": "johnsmith@organization.com"
          },
          "verificationRequired": {
            "type": "boolean",
            "description": "Indicates whether verification is required. If not set when the user is created, this value defaults to true.",
            "example": true
          }
        },
        "description": "Attributes for the new user."
      },
      "Webhook": {
        "required": [
          "callbackUrl",
          "enabled",
          "id"
        ],
        "type": "object",
        "properties": {
          "callbackUrl": {
            "type": "string",
            "description": "The callback url of the webhook.",
            "example": "https://mycompany.com/api"
          },
          "enabled": {
            "type": "boolean",
            "description": "A flag indicating if the webhook is enabled.",
            "example": true
          },
          "events": {
            "type": "array",
            "description": "The events of the webhook.",
            "items": {
              "$ref": "#/components/schemas/WebhookEvent"
            }
          },
          "expired": {
            "type": "boolean",
            "description": "A flag indicating if the webhook has expired.",
            "example": false
          },
          "expiryDate": {
            "type": "string",
            "description": "The timestamp of when the webhook is set to expire. If no expiry is set, this value will be NULL.",
            "example": "2019-02-19T13:15:27"
          },
          "id": {
            "type": "string",
            "description": "The ID of the webhook. This value is generated when the webhook is created."
          },
          "token": {
            "type": "string",
            "description": "The unique webhook token.",
            "example": "Base64 Encoded String"
          }
        },
        "description": "Information returned about a webhook."
      },
      "WebhookEvent": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "filter": {
            "type": "string",
            "description": "Subset of resource, or group IDs of the webhook event. All resources are selected by default if this parameter is not specified.",
            "example": "[{\"enrollmentDesignId\":\"fd1d1b86-d258-4332-ad89-ead30d2dae7f\"}]"
          },
          "id": {
            "type": "string",
            "description": "The ID of the webhook event. This value is not needed when creating/updating a webhook."
          },
          "type": {
            "type": "string",
            "description": "The event type set to trigger the webhook.",
            "example": "credential.create | credential.update | credential.delete | user.create"
          }
        },
        "description": "Information returned about the events of a webhook."
      },
      "WebhookParms": {
        "required": [
          "callbackUrl",
          "events"
        ],
        "type": "object",
        "properties": {
          "callbackUrl": {
            "type": "string",
            "description": "The client callback url for this webhook.",
            "example": "https://mycompany.com/api"
          },
          "enabled": {
            "type": "boolean",
            "description": "A flag indicating if the webhook is enabled.",
            "example": true,
            "default": true
          },
          "events": {
            "type": "array",
            "description": "The list of webhook events.",
            "items": {
              "$ref": "#/components/schemas/WebhookEvent"
            }
          },
          "expiry": {
            "maximum": 1000,
            "minimum": 0,
            "type": "integer",
            "description": "How long to keep the webhook alive for <b>(in days)</b>. Value of 0 means no expiration. Once a webhook has reached expiry, it will be marked as <b>disabled</b>. This parameter is optional and is not set by default.",
            "format": "int32",
            "example": 90
          }
        },
        "description": "Parameters including the callback URL and list of events to trigger the webhook."
      }
    },
    "securitySchemes": {
      "AdminAPIAuthentication": {
        "type": "apiKey",
        "name": "Authorization",
        "in": "header"
      }
    }
  }
}