{
  "openapi": "3.0.1",
  "info": {
    "title": "Web AuthN",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "/webauthn"
    }
  ],
  "paths": {
    "/vendormetadata/{communityId}": {
      "put": {
        "tags": [
          "Vendor Meta Data"
        ],
        "summary": "Create vendor metadata record)",
        "operationId": "createVendorMetaData",
        "parameters": [
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "allowEmptyValue": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          {
            "name": "licensekey",
            "in": "header",
            "required": true,
            "allowEmptyValue": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "requestBody": {
          "description": "Create vendor metadata record",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VendorCreateEntity"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "success or error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VendormetadataCreateResponse"
                }
              }
            }
          }
        }
      }
    },
    "/u1/link/community/{communityId}/did/{did}/user/{userId}/fidokey/{fidoKeyHash}": {
      "put": {
        "tags": [
          "U1 Web AuthN Linking"
        ],
        "description": "Header parameter can be passed without ecdsa encryption",
        "operationId": "u1linkDidKey",
        "parameters": [
          {
            "name": "licensekey",
            "in": "header",
            "required": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "did",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fidoKeyHash",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Link200Response"
                }
              }
            }
          }
        }
      }
    },
    "/link/community/{communityId}/did/{did}/user/{userId}/fidokey/{fidoKeyHash}": {
      "put": {
        "tags": [
          "Web AuthN Linking and De-Registration"
        ],
        "operationId": "linkDidKey",
        "parameters": [
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "did",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fidoKeyHash",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Link200Response"
                }
              }
            }
          }
        },
        "security": [
          {
            "licensekey": []
          },
          {
            "publicKey": []
          },
          {
            "privateKey": []
          }
        ]
      }
    },
    "/vendormetadata/{communityId}/fetch": {
      "post": {
        "tags": [
          "Vendor Meta Data"
        ],
        "summary": "Fetch vendor metadata records that match communityId (Note: load all records matching special communityId 'any' need system or service license)",
        "operationId": "fetchVendorMetaData",
        "parameters": [
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "allowEmptyValue": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          {
            "name": "licensekey",
            "in": "header",
            "required": true,
            "allowEmptyValue": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "requestBody": {
          "description": "If aaguids is not given or empty, the fetch all records.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VendormetadataFetchRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/VendormetadataEntity"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/u1/attestation/result": {
      "post": {
        "tags": [
          "U1 Fido Registration"
        ],
        "description": "Header parameter can be passed without ecdsa encryption",
        "operationId": "attestationResult",
        "parameters": [
          {
            "name": "sessionInfo",
            "in": "header",
            "required": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          {
            "name": "licensekey",
            "in": "header",
            "required": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AttestationResultRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttestationResult200Response"
                }
              }
            }
          },
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonNode"
                }
              }
            }
          }
        }
      }
    },
    "/u1/attestation/options": {
      "post": {
        "tags": [
          "U1 Fido Registration"
        ],
        "description": "Header parameter can be passed without ecdsa encryption",
        "operationId": "attestationOptions",
        "parameters": [
          {
            "name": "licensekey",
            "in": "header",
            "required": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AttestationOptionsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttestationOptions200Response"
                }
              }
            }
          }
        }
      }
    },
    "/u1/assertion/result": {
      "post": {
        "tags": [
          "U1 Fido AuthN Authenticator"
        ],
        "description": "Header parameter can be passed without ecdsa encryption",
        "operationId": "assertionResult",
        "parameters": [
          {
            "name": "sessionInfo",
            "in": "header",
            "required": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          {
            "name": "licensekey",
            "in": "header",
            "required": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssertionResultRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssertionResult200Response"
                }
              }
            }
          }
        }
      }
    },
    "/u1/assertion/options": {
      "post": {
        "tags": [
          "U1 Fido AuthN Authenticator"
        ],
        "description": "Header parameter can be passed without ecdsa encryption",
        "operationId": "assertionOptions",
        "parameters": [
          {
            "name": "licensekey",
            "in": "header",
            "required": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssertionOptionsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssertionOptions200Response"
                }
              }
            }
          }
        }
      }
    },
    "/attestation/result": {
      "post": {
        "tags": [
          "Fido Registration"
        ],
        "description": "Request Body \n\nPlease add ECDSA encrypted string of below json in request \n\n\t{ \n\n\t\"rawId\": string \n\n\t\"authenticatorAttachment\": string \n\n\t\"getClientExtensionResults\": {} \n\n\t\"id\": string \n\n\t\"type\": string \n\n\t\"dns\": string \n\n\t\"communityId\": string \n\n\t\"tenantId\": string \n\n\t\"response\": { \n\n\t\t\"getAuthenticatorData\": {} \n\n\t\t\"getPublicKey\": {} \n\n\t\t\"getPublicKeyAlgorithm\": {} \n\n\t\t\"getTransports\": {} \n\n\t\t\"clientDataJSON\": string \n\n\t  } \n\n\t}",
        "operationId": "attestationResult_1",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Request"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttestationResult200Response"
                }
              }
            }
          },
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonNode"
                }
              }
            }
          }
        },
        "security": [
          {
            "licensekey": []
          },
          {
            "publicKey": []
          },
          {
            "privateKey": []
          }
        ]
      }
    },
    "/attestation/options": {
      "post": {
        "tags": [
          "Fido Registration"
        ],
        "description": "Request Body \n\nPlease add ECDSA encrypted string of below json in request \n\n\t{ \n\n\t\"dns\": string \n\n\t\"username\": string \n\n\t\"displayName\": string \n\n\t\"communityId\": string \n\n\t\"tenantId\": string \n\n\t\"attestation\": string \n\n\t}",
        "operationId": "attestationOptions_1",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Request"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttestationOptions200Response"
                }
              }
            }
          }
        },
        "security": [
          {
            "licensekey": []
          },
          {
            "publicKey": []
          },
          {
            "privateKey": []
          }
        ]
      }
    },
    "/assertion/result": {
      "post": {
        "tags": [
          "Fido AuthN Authenticator"
        ],
        "description": "Request Body \n\nPlease add ECDSA encrypted string of below json in request \n\n\t{ \n\n\t\"rawId\": string \n\n\t\"getClientExtensionResults\": {} \n\n\t\"id\": string \n\n\t\"type\": string \n\n\t\"dns\": string \n\n\t\"communityId\": string \n\n\t\"tenantId\": string \n\n\t\"response\": { \n\n\t\t\"authenticatorData\": {} \n\n\t\t\"signature\": {} \n\n\t\t\"userHandle\": {} \n\n\t\t\"clientDataJSON\": {} \n\n\t\t} \n\n\t}",
        "operationId": "assertionResult_1",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Request"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssertionResult200Response"
                }
              }
            }
          }
        },
        "security": [
          {
            "licensekey": []
          },
          {
            "publicKey": []
          },
          {
            "privateKey": []
          }
        ]
      }
    },
    "/assertion/options": {
      "post": {
        "tags": [
          "Fido AuthN Authenticator"
        ],
        "description": "Request Body \n\nPlease add ECDSA encrypted string of below json in request \n\n\t{ \n\n\t\"dns\": string \n\n\t\"username\": string \n\n\t\"displayName\": string \n\n\t\"communityId\": string \n\n\t\"tenantId\": string \n\n\t}",
        "operationId": "assertionOptions_1",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Request"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AssertionOptions200Response"
                }
              }
            }
          }
        },
        "security": [
          {
            "licensekey": []
          },
          {
            "publicKey": []
          },
          {
            "privateKey": []
          }
        ]
      }
    },
    "/vendormetadata/{communityId}/aaguid/{aaguid}": {
      "patch": {
        "tags": [
          "Vendor Meta Data"
        ],
        "summary": "Update vendor metadata record)",
        "operationId": "updateVendorMetaData",
        "parameters": [
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "allowEmptyValue": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          {
            "name": "licensekey",
            "in": "header",
            "required": true,
            "allowEmptyValue": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          {
            "name": "aaguid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Update vendor metadata record",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VendorUpdateEntity"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "success or error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Link200Response"
                }
              }
            }
          }
        }
      }
    },
    "/u1/link/community/{communityId}/user/{userId}/status": {
      "get": {
        "tags": [
          "U1 Web AuthN Linking"
        ],
        "operationId": "u1CheckLinkStatus",
        "parameters": [
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "object"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/sd": {
      "get": {
        "tags": [
          "Service Directory"
        ],
        "summary": "Get all service directories.",
        "description": "Returns all service directories.",
        "operationId": "getServiceDirectory",
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceDirectory"
                }
              }
            }
          }
        }
      }
    },
    "/publickeys": {
      "get": {
        "tags": [
          "Public Key"
        ],
        "operationId": "fetchPublicKeys",
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PublicKeyResponse"
                }
              }
            }
          }
        }
      }
    },
    "/link/community/{communityId}/user/{userId}/status": {
      "get": {
        "tags": [
          "Web AuthN Linking and De-Registration"
        ],
        "operationId": "checkLinkStatus",
        "parameters": [
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Link200Response"
                }
              }
            }
          }
        },
        "security": [
          {
            "licensekey": []
          },
          {
            "publicKey": []
          },
          {
            "privateKey": []
          }
        ]
      }
    },
    "/healthz": {
      "get": {
        "tags": [
          "Healthz"
        ],
        "summary": "This is Health endpoint",
        "operationId": "health",
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HealthZ200Response"
                }
              }
            }
          }
        }
      }
    },
    "/environment": {
      "get": {
        "tags": [
          "Environment"
        ],
        "summary": "Fetch Environment",
        "operationId": "getEnvironment",
        "parameters": [
          {
            "name": "licensekey",
            "in": "header",
            "allowEmptyValue": true,
            "content": {
              "*/*": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CaaSEnvironment"
                }
              }
            }
          }
        }
      }
    },
    "/unregister/community/{communityId}/user/{userId}/did_or_fidokey/{identifier}": {
      "delete": {
        "tags": [
          "Web AuthN Linking and De-Registration"
        ],
        "operationId": "unregisterByUserId",
        "parameters": [
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "identifier",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonNode"
                }
              }
            }
          }
        },
        "security": [
          {
            "licensekey": []
          },
          {
            "publicKey": []
          },
          {
            "privateKey": []
          }
        ]
      }
    },
    "/unregister/community/{communityId}/did_or_fidokey/{identifier}": {
      "delete": {
        "tags": [
          "Web AuthN Linking and De-Registration"
        ],
        "operationId": "unregister",
        "parameters": [
          {
            "name": "communityId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "identifier",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDetails"
                }
              }
            }
          },
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonNode"
                }
              }
            }
          }
        },
        "security": [
          {
            "licensekey": []
          },
          {
            "publicKey": []
          },
          {
            "privateKey": []
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "ErrorDetails": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string"
          },
          "details": {
            "type": "string"
          },
          "timestamp": {
            "type": "string",
            "format": "date-time"
          },
          "httpstatus": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "VendorCreateEntity": {
        "required": [
          "aaguid",
          "metadata",
          "name",
          "updatedBy"
        ],
        "type": "object",
        "properties": {
          "aaguid": {
            "type": "string"
          },
          "metadata": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "disabled": {
            "type": "boolean"
          },
          "updatedBy": {
            "type": "string"
          }
        }
      },
      "VendormetadataCreateResponse": {
        "type": "object",
        "properties": {
          "aaguid": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "errorMessage": {
            "type": "string"
          }
        }
      },
      "Link200Response": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string"
          },
          "errorMessage": {
            "type": "string"
          }
        }
      },
      "VendormetadataFetchRequest": {
        "type": "object",
        "properties": {
          "aaguids": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "VendormetadataEntity": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "aaguid": {
            "type": "string"
          },
          "communityId": {
            "type": "string"
          },
          "metadata": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "disabled": {
            "type": "boolean"
          },
          "updatedBy": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "AttestationResultRequest": {
        "type": "object",
        "properties": {
          "rawId": {
            "type": "string"
          },
          "response": {
            "$ref": "#/components/schemas/Response"
          },
          "authenticatorAttachment": {
            "type": "string"
          },
          "getClientExtensionResults": {
            "$ref": "#/components/schemas/GetClientExtensionResults"
          },
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "dns": {
            "type": "string"
          },
          "communityId": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          }
        }
      },
      "GetAuthenticatorData": {
        "type": "object"
      },
      "GetClientExtensionResults": {
        "type": "object"
      },
      "GetPublicKey": {
        "type": "object"
      },
      "GetPublicKeyAlgorithm": {
        "type": "object"
      },
      "GetTransports": {
        "type": "object"
      },
      "Response": {
        "type": "object",
        "properties": {
          "attestationObject": {
            "type": "string"
          },
          "getAuthenticatorData": {
            "$ref": "#/components/schemas/GetAuthenticatorData"
          },
          "getPublicKey": {
            "$ref": "#/components/schemas/GetPublicKey"
          },
          "getPublicKeyAlgorithm": {
            "$ref": "#/components/schemas/GetPublicKeyAlgorithm"
          },
          "getTransports": {
            "$ref": "#/components/schemas/GetTransports"
          },
          "clientDataJSON": {
            "type": "string"
          }
        }
      },
      "AttestationResult200Response": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AttestationResultResponse"
          },
          "publicKey": {
            "type": "string"
          }
        }
      },
      "AttestationResultResponse": {
        "type": "object",
        "properties": {
          "sub": {
            "type": "string"
          }
        }
      },
      "JsonNode": {
        "type": "object"
      },
      "AttestationOptionsRequest": {
        "type": "object",
        "properties": {
          "dns": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "communityId": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          },
          "attestation": {
            "type": "string"
          }
        }
      },
      "AttestationOptions200Response": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AttestationOptionsResponse"
          },
          "publickey": {
            "type": "string"
          }
        }
      },
      "AttestationOptionsResponse": {
        "type": "object",
        "properties": {
          "rp": {
            "$ref": "#/components/schemas/RP"
          },
          "user": {
            "$ref": "#/components/schemas/USER"
          },
          "attestation": {
            "type": "string"
          },
          "pubKeyCredParams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PubKeyCredParams"
            }
          },
          "timeout": {
            "type": "integer",
            "format": "int64"
          },
          "authenticatorSelection": {
            "$ref": "#/components/schemas/AuthenticatorSelection"
          },
          "challenge": {
            "type": "string"
          },
          "excludeCredentials": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ExcludeCredentials"
            }
          },
          "status": {
            "type": "string"
          },
          "errorMessage": {
            "type": "string"
          }
        }
      },
      "AuthenticatorSelection": {
        "type": "object",
        "properties": {
          "userVerification": {
            "type": "string"
          },
          "requireResidentKey": {
            "type": "boolean"
          }
        }
      },
      "ExcludeCredentials": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "id": {
            "type": "string"
          }
        }
      },
      "PubKeyCredParams": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "alg": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "RP": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "id": {
            "type": "string"
          }
        }
      },
      "USER": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          }
        }
      },
      "AssertionResultRequest": {
        "type": "object",
        "properties": {
          "rawId": {
            "type": "string"
          },
          "response": {
            "$ref": "#/components/schemas/Response3"
          },
          "getClientExtensionResults": {
            "$ref": "#/components/schemas/GetClientExtensionResults2"
          },
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          },
          "communityId": {
            "type": "string"
          },
          "dns": {
            "type": "string"
          }
        }
      },
      "GetClientExtensionResults2": {
        "type": "object"
      },
      "Response3": {
        "type": "object",
        "properties": {
          "authenticatorData": {
            "type": "string"
          },
          "signature": {
            "type": "string"
          },
          "userHandle": {
            "type": "string"
          },
          "clientDataJSON": {
            "type": "string"
          }
        }
      },
      "AssertionResult200Response": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AssertionResultResponse"
          },
          "status": {
            "type": "string"
          },
          "signature_token": {
            "type": "string"
          }
        }
      },
      "AssertionResultResponse": {
        "type": "object",
        "properties": {
          "sub": {
            "type": "string"
          }
        }
      },
      "AssertionOptionsRequest": {
        "type": "object",
        "properties": {
          "username": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "dns": {
            "type": "string"
          },
          "communityId": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          },
          "dguid": {
            "type": "string"
          }
        }
      },
      "AllowCredential": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "transports": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "id": {
            "type": "string"
          }
        }
      },
      "AssertionOptions200Response": {
        "type": "object",
        "properties": {
          "challenge": {
            "type": "string"
          },
          "rpId": {
            "type": "string"
          },
          "timeout": {
            "type": "integer",
            "format": "int32"
          },
          "userVerification": {
            "type": "string"
          },
          "allowCredentials": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AllowCredential"
            }
          },
          "status": {
            "type": "string"
          },
          "errorMessage": {
            "type": "string"
          }
        }
      },
      "Request": {
        "type": "object",
        "properties": {
          "data": {
            "type": "string"
          }
        }
      },
      "VendorUpdateEntity": {
        "required": [
          "updatedBy"
        ],
        "type": "object",
        "properties": {
          "metadata": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "disabled": {
            "type": "boolean"
          },
          "updatedBy": {
            "type": "string"
          }
        }
      },
      "ServiceDirectory": {
        "type": "object",
        "properties": {
          "adminconsole": {
            "type": "string"
          },
          "sessions": {
            "type": "string"
          },
          "licenses": {
            "type": "string"
          },
          "global_caas": {
            "type": "string"
          },
          "user_management": {
            "type": "string"
          },
          "acr": {
            "type": "string"
          },
          "local_caas": {
            "type": "string"
          }
        }
      },
      "PublicKeyResponse": {
        "type": "object",
        "properties": {
          "publicKey": {
            "type": "string"
          }
        }
      },
      "HealthZ200Response": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "version": {
            "type": "string"
          }
        }
      },
      "CaaSEnvironment": {
        "type": "object",
        "properties": {
          "sessionMaxAgeMinute": {
            "type": "integer",
            "format": "int32"
          },
          "appSessionIdleTimeout": {
            "type": "integer",
            "format": "int32"
          },
          "instanceType": {
            "type": "string"
          },
          "allowed_time_span": {
            "type": "integer",
            "format": "int32"
          },
          "samlNotOrAfterSkewMinutes": {
            "type": "integer",
            "format": "int32"
          },
          "jwtExpirationInMs": {
            "type": "integer",
            "format": "int64"
          },
          "wxMaxBuffer": {
            "type": "integer",
            "format": "int32"
          },
          "ec_curve_name": {
            "type": "string"
          },
          "env": {
            "$ref": "#/components/schemas/ServerEnvironment"
          }
        }
      },
      "ServerEnvironment": {
        "type": "object",
        "properties": {
          "direct": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          },
          "application": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          },
          "system": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          },
          "os": {
            "type": "object",
            "additionalProperties": {
              "type": "object"
            }
          }
        }
      }
    },
    "securitySchemes": {
      "privateKey": {
        "type": "apiKey",
        "name": "privateKey",
        "in": "header"
      },
      "publicKey": {
        "type": "apiKey",
        "name": "publicKey",
        "in": "header"
      },
      "licensekey": {
        "type": "apiKey",
        "name": "licensekey",
        "in": "header"
      }
    }
  }
}