{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2025-09-09",
    "auth":["aws.auth#sigv4"],
    "endpointPrefix":"lambda",
    "protocol":"rest-json",
    "protocols":["rest-json"],
    "serviceFullName":"Lambda MicroVMs",
    "serviceId":"Lambda Microvms",
    "signatureVersion":"v4",
    "signingName":"lambda",
    "uid":"lambda-microvms-2025-09-09"
  },
  "operations":{
    "CreateMicrovmAuthToken":{
      "name":"CreateMicrovmAuthToken",
      "http":{
        "method":"POST",
        "requestUri":"/2025-09-09/microvms/{microvmIdentifier}/auth-token",
        "responseCode":200
      },
      "input":{"shape":"CreateMicrovmAuthTokenRequest"},
      "output":{"shape":"CreateMicrovmAuthTokenResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"}
      ]
    },
    "CreateMicrovmImage":{
      "name":"CreateMicrovmImage",
      "http":{
        "method":"POST",
        "requestUri":"/2025-09-09/microvm-images",
        "responseCode":201
      },
      "input":{"shape":"CreateMicrovmImageRequest"},
      "output":{"shape":"CreateMicrovmImageResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"}
      ]
    },
    "CreateMicrovmShellAuthToken":{
      "name":"CreateMicrovmShellAuthToken",
      "http":{
        "method":"POST",
        "requestUri":"/2025-09-09/microvms/{microvmIdentifier}/shell-auth-token",
        "responseCode":200
      },
      "input":{"shape":"CreateMicrovmShellAuthTokenRequest"},
      "output":{"shape":"CreateMicrovmShellAuthTokenResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"}
      ]
    },
    "DeleteMicrovmImage":{
      "name":"DeleteMicrovmImage",
      "http":{
        "method":"DELETE",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"DeleteMicrovmImageInput"},
      "output":{"shape":"DeleteMicrovmImageOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"}
      ],
      "idempotent":true
    },
    "DeleteMicrovmImageVersion":{
      "name":"DeleteMicrovmImageVersion",
      "http":{
        "method":"DELETE",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}/versions/{imageVersion}",
        "responseCode":200
      },
      "input":{"shape":"DeleteMicrovmImageVersionInput"},
      "output":{"shape":"DeleteMicrovmImageVersionOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"}
      ],
      "idempotent":true
    },
    "GetMicrovm":{
      "name":"GetMicrovm",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/microvms/{microvmIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"GetMicrovmRequest"},
      "output":{"shape":"GetMicrovmResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "GetMicrovmImage":{
      "name":"GetMicrovmImage",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"GetMicrovmImageInput"},
      "output":{"shape":"GetMicrovmImageOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "GetMicrovmImageBuild":{
      "name":"GetMicrovmImageBuild",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}/versions/{imageVersion}/builds/{buildId}",
        "responseCode":200
      },
      "input":{"shape":"GetMicrovmImageBuildInput"},
      "output":{"shape":"GetMicrovmImageBuildOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "GetMicrovmImageVersion":{
      "name":"GetMicrovmImageVersion",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}/versions/{imageVersion}",
        "responseCode":200
      },
      "input":{"shape":"GetMicrovmImageVersionInput"},
      "output":{"shape":"GetMicrovmImageVersionOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "ListManagedMicrovmImageVersions":{
      "name":"ListManagedMicrovmImageVersions",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/managed-microvm-images/{imageIdentifier}/versions",
        "responseCode":200
      },
      "input":{"shape":"ListManagedMicrovmImageVersionsInput"},
      "output":{"shape":"ListManagedMicrovmImageVersionsOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "ListManagedMicrovmImages":{
      "name":"ListManagedMicrovmImages",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/managed-microvm-images",
        "responseCode":200
      },
      "input":{"shape":"ListManagedMicrovmImagesInput"},
      "output":{"shape":"ListManagedMicrovmImagesOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "ListMicrovmImageBuilds":{
      "name":"ListMicrovmImageBuilds",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}/versions/{imageVersion}/builds",
        "responseCode":200
      },
      "input":{"shape":"ListMicrovmImageBuildsInput"},
      "output":{"shape":"ListMicrovmImageBuildsOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "ListMicrovmImageVersions":{
      "name":"ListMicrovmImageVersions",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}/versions",
        "responseCode":200
      },
      "input":{"shape":"ListMicrovmImageVersionsInput"},
      "output":{"shape":"ListMicrovmImageVersionsOutput"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "ListMicrovmImages":{
      "name":"ListMicrovmImages",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/microvm-images",
        "responseCode":200
      },
      "input":{"shape":"ListMicrovmImagesRequest"},
      "output":{"shape":"ListMicrovmImagesResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "ListMicrovms":{
      "name":"ListMicrovms",
      "http":{
        "method":"GET",
        "requestUri":"/2025-09-09/microvms",
        "responseCode":200
      },
      "input":{"shape":"ListMicrovmsRequest"},
      "output":{"shape":"ListMicrovmsResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ValidationException"}
      ],
      "readonly":true
    },
    "ListTags":{
      "name":"ListTags",
      "http":{
        "method":"GET",
        "requestUri":"/2017-03-31/tags/{Resource}",
        "responseCode":200
      },
      "input":{"shape":"ListTagsRequest"},
      "output":{"shape":"ListTagsResponse"},
      "errors":[
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ServiceException"},
        {"shape":"ValidationException"},
        {"shape":"InvalidParameterValueException"}
      ],
      "readonly":true
    },
    "ResumeMicrovm":{
      "name":"ResumeMicrovm",
      "http":{
        "method":"POST",
        "requestUri":"/2025-09-09/microvms/{microvmIdentifier}/resume",
        "responseCode":200
      },
      "input":{"shape":"ResumeMicrovmRequest"},
      "output":{"shape":"ResumeMicrovmResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"}
      ],
      "idempotent":true
    },
    "RunMicrovm":{
      "name":"RunMicrovm",
      "http":{
        "method":"POST",
        "requestUri":"/2025-09-09/microvms",
        "responseCode":200
      },
      "input":{"shape":"RunMicrovmRequest"},
      "output":{"shape":"RunMicrovmResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"InsufficientCapacityException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"}
      ]
    },
    "SuspendMicrovm":{
      "name":"SuspendMicrovm",
      "http":{
        "method":"POST",
        "requestUri":"/2025-09-09/microvms/{microvmIdentifier}/suspend",
        "responseCode":200
      },
      "input":{"shape":"SuspendMicrovmRequest"},
      "output":{"shape":"SuspendMicrovmResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"}
      ],
      "idempotent":true
    },
    "TagResource":{
      "name":"TagResource",
      "http":{
        "method":"POST",
        "requestUri":"/2017-03-31/tags/{Resource}",
        "responseCode":204
      },
      "input":{"shape":"TagResourceRequest"},
      "errors":[
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ServiceException"},
        {"shape":"ValidationException"},
        {"shape":"InvalidParameterValueException"},
        {"shape":"ResourceConflictException"}
      ],
      "idempotent":true
    },
    "TerminateMicrovm":{
      "name":"TerminateMicrovm",
      "http":{
        "method":"DELETE",
        "requestUri":"/2025-09-09/microvms/{microvmIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"TerminateMicrovmRequest"},
      "output":{"shape":"TerminateMicrovmResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"}
      ],
      "idempotent":true
    },
    "UntagResource":{
      "name":"UntagResource",
      "http":{
        "method":"DELETE",
        "requestUri":"/2017-03-31/tags/{Resource}",
        "responseCode":204
      },
      "input":{"shape":"UntagResourceRequest"},
      "errors":[
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ServiceException"},
        {"shape":"ValidationException"},
        {"shape":"InvalidParameterValueException"},
        {"shape":"ResourceConflictException"}
      ],
      "idempotent":true
    },
    "UpdateMicrovmImage":{
      "name":"UpdateMicrovmImage",
      "http":{
        "method":"PUT",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}",
        "responseCode":200
      },
      "input":{"shape":"UpdateMicrovmImageRequest"},
      "output":{"shape":"UpdateMicrovmImageResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"ServiceQuotaExceededException"}
      ],
      "idempotent":true
    },
    "UpdateMicrovmImageVersion":{
      "name":"UpdateMicrovmImageVersion",
      "http":{
        "method":"PATCH",
        "requestUri":"/2025-09-09/microvm-images/{imageIdentifier}/versions/{imageVersion}",
        "responseCode":200
      },
      "input":{"shape":"UpdateMicrovmImageVersionRequest"},
      "output":{"shape":"UpdateMicrovmImageVersionResponse"},
      "errors":[
        {"shape":"InternalServerException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ThrottlingException"},
        {"shape":"ConflictException"},
        {"shape":"ValidationException"}
      ]
    }
  },
  "shapes":{
    "AccessDeniedException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":403,
        "senderFault":true
      },
      "exception":true
    },
    "Architecture":{
      "type":"string",
      "enum":[
        "ARM_64",
        "X86_64"
      ]
    },
    "AuthTokenKey":{
      "type":"string",
      "max":256,
      "min":1,
      "pattern":"[^\\s]+"
    },
    "AuthTokenValue":{
      "type":"string",
      "max":8000,
      "min":0,
      "sensitive":true
    },
    "Boolean":{
      "type":"boolean",
      "box":true
    },
    "BuildState":{
      "type":"string",
      "enum":[
        "PENDING",
        "IN_PROGRESS",
        "SUCCESSFUL",
        "FAILED"
      ]
    },
    "Capability":{
      "type":"string",
      "enum":["ALL"]
    },
    "CapabilityList":{
      "type":"list",
      "member":{"shape":"Capability"}
    },
    "Chipset":{
      "type":"string",
      "enum":[
        "GRAVITON",
        "INTEL"
      ]
    },
    "CloudWatchLogging":{
      "type":"structure",
      "members":{
        "logGroup":{"shape":"CloudWatchLoggingLogGroupString"},
        "logStream":{"shape":"CloudWatchLoggingLogStreamString"}
      }
    },
    "CloudWatchLoggingLogGroupString":{
      "type":"string",
      "max":512,
      "min":1,
      "pattern":"[a-zA-Z0-9_\\-/.#]+"
    },
    "CloudWatchLoggingLogStreamString":{
      "type":"string",
      "max":512,
      "min":1,
      "pattern":"[^:*]*"
    },
    "CodeArtifact":{
      "type":"structure",
      "members":{
        "uri":{"shape":"NonBlankString"}
      },
      "union":true
    },
    "ConflictException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"},
        "resourceId":{"shape":"String"},
        "resourceType":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":409,
        "senderFault":true
      },
      "exception":true,
      "retryable":{"throttling":false}
    },
    "CpuConfiguration":{
      "type":"structure",
      "required":["architecture"],
      "members":{
        "architecture":{"shape":"Architecture"}
      }
    },
    "CpuConfigurationList":{
      "type":"list",
      "member":{"shape":"CpuConfiguration"}
    },
    "CreateMicrovmAuthTokenRequest":{
      "type":"structure",
      "required":[
        "microvmIdentifier",
        "expirationInMinutes",
        "allowedPorts"
      ],
      "members":{
        "microvmIdentifier":{
          "shape":"MicrovmIdentifier",
          "location":"uri",
          "locationName":"microvmIdentifier"
        },
        "expirationInMinutes":{"shape":"PositiveInteger"},
        "allowedPorts":{"shape":"ListOfPortSpecification"}
      }
    },
    "CreateMicrovmAuthTokenResponse":{
      "type":"structure",
      "required":["authToken"],
      "members":{
        "authToken":{"shape":"TokenParts"}
      }
    },
    "CreateMicrovmImageRequest":{
      "type":"structure",
      "required":[
        "baseImageArn",
        "buildRoleArn",
        "codeArtifact",
        "name"
      ],
      "members":{
        "baseImageArn":{"shape":"NonBlankString"},
        "baseImageVersion":{"shape":"Version"},
        "buildRoleArn":{"shape":"RoleArn"},
        "description":{"shape":"String"},
        "codeArtifact":{"shape":"CodeArtifact"},
        "logging":{"shape":"Logging"},
        "egressNetworkConnectors":{"shape":"CreateMicrovmImageRequestEgressNetworkConnectorsList"},
        "cpuConfigurations":{"shape":"CpuConfigurationList"},
        "resources":{"shape":"ResourcesList"},
        "additionalOsCapabilities":{"shape":"CapabilityList"},
        "hooks":{"shape":"Hooks"},
        "environmentVariables":{"shape":"EnvironmentVariableMap"},
        "name":{"shape":"ImageName"},
        "tags":{"shape":"Tags"},
        "clientToken":{
          "shape":"CreateMicrovmImageRequestClientTokenString",
          "idempotencyToken":true
        }
      }
    },
    "CreateMicrovmImageRequestClientTokenString":{
      "type":"string",
      "max":128,
      "min":1
    },
    "CreateMicrovmImageRequestEgressNetworkConnectorsList":{
      "type":"list",
      "member":{"shape":"NetworkConnector"},
      "max":1,
      "min":0
    },
    "CreateMicrovmImageResponse":{
      "type":"structure",
      "required":[
        "imageArn",
        "name",
        "state",
        "createdAt",
        "baseImageArn",
        "buildRoleArn",
        "codeArtifact",
        "imageVersion"
      ],
      "members":{
        "imageArn":{"shape":"NonBlankString"},
        "name":{"shape":"ImageName"},
        "state":{"shape":"MicrovmImageState"},
        "latestActiveImageVersion":{"shape":"NonBlankString"},
        "latestFailedImageVersion":{"shape":"NonBlankString"},
        "createdAt":{"shape":"Timestamp"},
        "baseImageArn":{"shape":"NonBlankString"},
        "baseImageVersion":{"shape":"Version"},
        "buildRoleArn":{"shape":"RoleArn"},
        "description":{"shape":"String"},
        "codeArtifact":{"shape":"CodeArtifact"},
        "logging":{"shape":"Logging"},
        "egressNetworkConnectors":{"shape":"CreateMicrovmImageResponseEgressNetworkConnectorsList"},
        "cpuConfigurations":{"shape":"CpuConfigurationList"},
        "resources":{"shape":"ResourcesList"},
        "additionalOsCapabilities":{"shape":"CapabilityList"},
        "hooks":{"shape":"Hooks"},
        "environmentVariables":{"shape":"EnvironmentVariableMap"},
        "tags":{"shape":"Tags"},
        "updatedAt":{"shape":"Timestamp"},
        "imageVersion":{"shape":"NonBlankString"}
      }
    },
    "CreateMicrovmImageResponseEgressNetworkConnectorsList":{
      "type":"list",
      "member":{"shape":"NetworkConnector"},
      "max":1,
      "min":0
    },
    "CreateMicrovmShellAuthTokenRequest":{
      "type":"structure",
      "required":[
        "microvmIdentifier",
        "expirationInMinutes"
      ],
      "members":{
        "microvmIdentifier":{
          "shape":"MicrovmIdentifier",
          "location":"uri",
          "locationName":"microvmIdentifier"
        },
        "expirationInMinutes":{"shape":"PositiveInteger"}
      }
    },
    "CreateMicrovmShellAuthTokenResponse":{
      "type":"structure",
      "required":["authToken"],
      "members":{
        "authToken":{"shape":"TokenParts"}
      }
    },
    "DeleteMicrovmImageInput":{
      "type":"structure",
      "required":["imageIdentifier"],
      "members":{
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        }
      }
    },
    "DeleteMicrovmImageOutput":{
      "type":"structure",
      "required":[
        "imageIdentifier",
        "state"
      ],
      "members":{
        "imageIdentifier":{"shape":"MicrovmImageIdentifier"},
        "state":{"shape":"MicrovmImageState"}
      }
    },
    "DeleteMicrovmImageVersionInput":{
      "type":"structure",
      "required":[
        "imageIdentifier",
        "imageVersion"
      ],
      "members":{
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        },
        "imageVersion":{
          "shape":"NonBlankString",
          "location":"uri",
          "locationName":"imageVersion"
        }
      }
    },
    "DeleteMicrovmImageVersionOutput":{
      "type":"structure",
      "required":[
        "imageIdentifier",
        "imageVersion",
        "state"
      ],
      "members":{
        "imageIdentifier":{"shape":"MicrovmImageIdentifier"},
        "imageVersion":{"shape":"NonBlankString"},
        "state":{"shape":"MicrovmImageVersionState"}
      }
    },
    "EnvironmentVariableKey":{
      "type":"string",
      "max":256,
      "min":1,
      "pattern":"[^\\s]+"
    },
    "EnvironmentVariableMap":{
      "type":"map",
      "key":{"shape":"EnvironmentVariableKey"},
      "value":{"shape":"EnvironmentVariableValue"},
      "max":100,
      "min":0
    },
    "EnvironmentVariableValue":{
      "type":"string",
      "max":4096,
      "min":0,
      "sensitive":true
    },
    "GetMicrovmImageBuildInput":{
      "type":"structure",
      "required":[
        "imageIdentifier",
        "imageVersion",
        "buildId"
      ],
      "members":{
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        },
        "imageVersion":{
          "shape":"NonBlankString",
          "location":"uri",
          "locationName":"imageVersion"
        },
        "buildId":{
          "shape":"NonBlankString",
          "location":"uri",
          "locationName":"buildId"
        }
      }
    },
    "GetMicrovmImageBuildOutput":{
      "type":"structure",
      "required":[
        "imageArn",
        "imageVersion",
        "buildId",
        "buildState",
        "architecture",
        "chipset",
        "chipsetGeneration",
        "createdAt"
      ],
      "members":{
        "imageArn":{"shape":"NonBlankString"},
        "imageVersion":{"shape":"NonBlankString"},
        "buildId":{"shape":"NonBlankString"},
        "buildState":{"shape":"BuildState"},
        "architecture":{"shape":"Architecture"},
        "chipset":{"shape":"Chipset"},
        "chipsetGeneration":{"shape":"NonBlankString"},
        "stateReason":{"shape":"String"},
        "createdAt":{"shape":"Timestamp"},
        "snapshotBuild":{"shape":"SnapshotBuild"}
      }
    },
    "GetMicrovmImageInput":{
      "type":"structure",
      "required":["imageIdentifier"],
      "members":{
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        }
      }
    },
    "GetMicrovmImageOutput":{
      "type":"structure",
      "required":[
        "imageArn",
        "name",
        "state",
        "createdAt"
      ],
      "members":{
        "imageArn":{"shape":"NonBlankString"},
        "name":{"shape":"ImageName"},
        "state":{"shape":"MicrovmImageState"},
        "latestActiveImageVersion":{"shape":"NonBlankString"},
        "latestFailedImageVersion":{"shape":"NonBlankString"},
        "createdAt":{"shape":"Timestamp"},
        "tags":{"shape":"Tags"},
        "updatedAt":{"shape":"Timestamp"}
      }
    },
    "GetMicrovmImageVersionInput":{
      "type":"structure",
      "required":[
        "imageIdentifier",
        "imageVersion"
      ],
      "members":{
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        },
        "imageVersion":{
          "shape":"NonBlankString",
          "location":"uri",
          "locationName":"imageVersion"
        }
      }
    },
    "GetMicrovmImageVersionOutput":{
      "type":"structure",
      "required":[
        "baseImageArn",
        "buildRoleArn",
        "codeArtifact",
        "imageArn",
        "imageVersion",
        "state",
        "status",
        "createdAt"
      ],
      "members":{
        "baseImageArn":{"shape":"NonBlankString"},
        "baseImageVersion":{"shape":"Version"},
        "buildRoleArn":{"shape":"RoleArn"},
        "description":{"shape":"String"},
        "codeArtifact":{"shape":"CodeArtifact"},
        "logging":{"shape":"Logging"},
        "egressNetworkConnectors":{"shape":"GetMicrovmImageVersionOutputEgressNetworkConnectorsList"},
        "cpuConfigurations":{"shape":"CpuConfigurationList"},
        "resources":{"shape":"ResourcesList"},
        "additionalOsCapabilities":{"shape":"CapabilityList"},
        "hooks":{"shape":"Hooks"},
        "environmentVariables":{"shape":"EnvironmentVariableMap"},
        "imageArn":{"shape":"NonBlankString"},
        "imageVersion":{"shape":"NonBlankString"},
        "state":{"shape":"MicrovmImageVersionState"},
        "status":{"shape":"MicrovmImageVersionStatus"},
        "createdAt":{"shape":"Timestamp"},
        "updatedAt":{"shape":"Timestamp"},
        "stateReason":{"shape":"String"},
        "tags":{"shape":"Tags"}
      }
    },
    "GetMicrovmImageVersionOutputEgressNetworkConnectorsList":{
      "type":"list",
      "member":{"shape":"NetworkConnector"},
      "max":1,
      "min":0
    },
    "GetMicrovmRequest":{
      "type":"structure",
      "required":["microvmIdentifier"],
      "members":{
        "microvmIdentifier":{
          "shape":"MicrovmIdentifier",
          "location":"uri",
          "locationName":"microvmIdentifier"
        }
      }
    },
    "GetMicrovmResponse":{
      "type":"structure",
      "required":[
        "microvmId",
        "state",
        "endpoint",
        "imageArn",
        "imageVersion",
        "maximumDurationInSeconds",
        "startedAt"
      ],
      "members":{
        "microvmId":{"shape":"MicrovmIdentifier"},
        "state":{"shape":"MicrovmState"},
        "endpoint":{"shape":"GetMicrovmResponseEndpointString"},
        "imageArn":{"shape":"MicrovmImageArn"},
        "imageVersion":{"shape":"Version"},
        "executionRoleArn":{"shape":"RoleArn"},
        "idlePolicy":{"shape":"IdlePolicy"},
        "maximumDurationInSeconds":{"shape":"Integer"},
        "startedAt":{"shape":"Timestamp"},
        "terminatedAt":{"shape":"Timestamp"},
        "stateReason":{"shape":"NonBlankString"},
        "ingressNetworkConnectors":{"shape":"NetworkConnectorList"},
        "egressNetworkConnectors":{"shape":"NetworkConnectorList"}
      }
    },
    "GetMicrovmResponseEndpointString":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "HookState":{
      "type":"string",
      "enum":[
        "DISABLED",
        "ENABLED"
      ]
    },
    "Hooks":{
      "type":"structure",
      "members":{
        "port":{"shape":"HooksPortInteger"},
        "microvmHooks":{"shape":"MicrovmHooks"},
        "microvmImageHooks":{"shape":"MicrovmImageHooks"}
      }
    },
    "HooksPortInteger":{
      "type":"integer",
      "box":true,
      "max":65535,
      "min":1
    },
    "IdlePolicy":{
      "type":"structure",
      "required":[
        "maxIdleDurationSeconds",
        "suspendedDurationSeconds",
        "autoResumeEnabled"
      ],
      "members":{
        "maxIdleDurationSeconds":{"shape":"IdlePolicyMaxIdleDurationSecondsInteger"},
        "suspendedDurationSeconds":{"shape":"IdlePolicySuspendedDurationSecondsInteger"},
        "autoResumeEnabled":{"shape":"Boolean"}
      }
    },
    "IdlePolicyMaxIdleDurationSecondsInteger":{
      "type":"integer",
      "box":true,
      "min":60
    },
    "IdlePolicySuspendedDurationSecondsInteger":{
      "type":"integer",
      "box":true,
      "min":0
    },
    "ImageName":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"[a-zA-Z0-9-_]+"
    },
    "InsufficientCapacityException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "error":{"httpStatusCode":500},
      "exception":true,
      "fault":true
    },
    "Integer":{
      "type":"integer",
      "box":true
    },
    "InternalServerException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"},
        "retryAfterSeconds":{
          "shape":"Integer",
          "location":"header",
          "locationName":"Retry-After"
        }
      },
      "error":{"httpStatusCode":500},
      "exception":true,
      "fault":true,
      "retryable":{"throttling":false}
    },
    "InvalidParameterValueException":{
      "type":"structure",
      "members":{
        "Type":{"shape":"String"},
        "message":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    },
    "ListManagedMicrovmImageVersionsInput":{
      "type":"structure",
      "required":["imageIdentifier"],
      "members":{
        "maxResults":{
          "shape":"ListManagedMicrovmImageVersionsInputMaxResultsInteger",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"String",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        }
      }
    },
    "ListManagedMicrovmImageVersionsInputMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":50,
      "min":1
    },
    "ListManagedMicrovmImageVersionsOutput":{
      "type":"structure",
      "required":["items"],
      "members":{
        "nextToken":{"shape":"String"},
        "items":{"shape":"ManagedMicrovmImageVersionList"}
      }
    },
    "ListManagedMicrovmImagesInput":{
      "type":"structure",
      "members":{
        "maxResults":{
          "shape":"ListManagedMicrovmImagesInputMaxResultsInteger",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"String",
          "location":"querystring",
          "locationName":"nextToken"
        }
      }
    },
    "ListManagedMicrovmImagesInputMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":50,
      "min":1
    },
    "ListManagedMicrovmImagesOutput":{
      "type":"structure",
      "required":["items"],
      "members":{
        "nextToken":{"shape":"String"},
        "items":{"shape":"ManagedMicrovmImageSummaryList"}
      }
    },
    "ListMicrovmImageBuildsInput":{
      "type":"structure",
      "required":[
        "imageIdentifier",
        "imageVersion"
      ],
      "members":{
        "maxResults":{
          "shape":"ListMicrovmImageBuildsInputMaxResultsInteger",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"String",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        },
        "imageVersion":{
          "shape":"NonBlankString",
          "location":"uri",
          "locationName":"imageVersion"
        },
        "architecture":{
          "shape":"Architecture",
          "location":"querystring",
          "locationName":"architecture"
        },
        "chipset":{
          "shape":"Chipset",
          "location":"querystring",
          "locationName":"chipset"
        },
        "chipsetGeneration":{
          "shape":"NonBlankString",
          "location":"querystring",
          "locationName":"chipsetGeneration"
        }
      }
    },
    "ListMicrovmImageBuildsInputMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":50,
      "min":1
    },
    "ListMicrovmImageBuildsOutput":{
      "type":"structure",
      "required":["items"],
      "members":{
        "nextToken":{"shape":"String"},
        "items":{"shape":"MicrovmImageBuildSummaries"}
      }
    },
    "ListMicrovmImageVersionsInput":{
      "type":"structure",
      "required":["imageIdentifier"],
      "members":{
        "maxResults":{
          "shape":"ListMicrovmImageVersionsInputMaxResultsInteger",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"String",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        }
      }
    },
    "ListMicrovmImageVersionsInputMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":50,
      "min":1
    },
    "ListMicrovmImageVersionsOutput":{
      "type":"structure",
      "required":["items"],
      "members":{
        "nextToken":{"shape":"String"},
        "items":{"shape":"MicrovmImageVersionSummaryList"}
      }
    },
    "ListMicrovmImagesRequest":{
      "type":"structure",
      "members":{
        "maxResults":{
          "shape":"ListMicrovmImagesRequestMaxResultsInteger",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"String",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "nameFilter":{
          "shape":"NonBlankString",
          "location":"querystring",
          "locationName":"nameFilter"
        }
      }
    },
    "ListMicrovmImagesRequestMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":50,
      "min":1
    },
    "ListMicrovmImagesResponse":{
      "type":"structure",
      "required":["items"],
      "members":{
        "nextToken":{"shape":"String"},
        "items":{"shape":"MicrovmImageSummaries"}
      }
    },
    "ListMicrovmsRequest":{
      "type":"structure",
      "members":{
        "maxResults":{
          "shape":"ListMicrovmsRequestMaxResultsInteger",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"String",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"querystring",
          "locationName":"imageIdentifier"
        },
        "imageVersion":{
          "shape":"String",
          "location":"querystring",
          "locationName":"imageVersion"
        }
      }
    },
    "ListMicrovmsRequestMaxResultsInteger":{
      "type":"integer",
      "box":true,
      "max":50,
      "min":1
    },
    "ListMicrovmsResponse":{
      "type":"structure",
      "required":["items"],
      "members":{
        "nextToken":{"shape":"String"},
        "items":{"shape":"MicrovmItemList"}
      }
    },
    "ListOfPortSpecification":{
      "type":"list",
      "member":{"shape":"PortSpecification"},
      "min":1
    },
    "ListTagsRequest":{
      "type":"structure",
      "required":["Resource"],
      "members":{
        "Resource":{
          "shape":"TaggableResource",
          "location":"uri",
          "locationName":"Resource"
        }
      }
    },
    "ListTagsResponse":{
      "type":"structure",
      "members":{
        "Tags":{"shape":"Tags"}
      }
    },
    "Logging":{
      "type":"structure",
      "members":{
        "disabled":{"shape":"LoggingDisabled"},
        "cloudWatch":{"shape":"CloudWatchLogging"}
      },
      "union":true
    },
    "LoggingDisabled":{
      "type":"structure",
      "members":{}
    },
    "Long":{
      "type":"long",
      "box":true
    },
    "ManagedMicrovmImageSummary":{
      "type":"structure",
      "required":[
        "imageArn",
        "createdAt"
      ],
      "members":{
        "imageArn":{"shape":"NonBlankString"},
        "createdAt":{"shape":"Timestamp"},
        "updatedAt":{"shape":"Timestamp"}
      }
    },
    "ManagedMicrovmImageSummaryList":{
      "type":"list",
      "member":{"shape":"ManagedMicrovmImageSummary"}
    },
    "ManagedMicrovmImageVersion":{
      "type":"structure",
      "required":[
        "imageArn",
        "imageVersion",
        "createdAt"
      ],
      "members":{
        "imageArn":{"shape":"NonBlankString"},
        "imageVersion":{"shape":"NonBlankString"},
        "status":{"shape":"ManagedMicrovmImageVersionStatus"},
        "supportedCpuConfigurations":{"shape":"CpuConfigurationList"},
        "createdAt":{"shape":"Timestamp"},
        "updatedAt":{"shape":"Timestamp"}
      }
    },
    "ManagedMicrovmImageVersionList":{
      "type":"list",
      "member":{"shape":"ManagedMicrovmImageVersion"}
    },
    "ManagedMicrovmImageVersionStatus":{
      "type":"string",
      "enum":[
        "AVAILABLE",
        "DEPRECATED",
        "RECALLED"
      ]
    },
    "MicrovmHooks":{
      "type":"structure",
      "members":{
        "run":{"shape":"HookState"},
        "runTimeoutInSeconds":{"shape":"MicrovmHooksRunTimeoutInSecondsInteger"},
        "resume":{"shape":"HookState"},
        "resumeTimeoutInSeconds":{"shape":"MicrovmHooksResumeTimeoutInSecondsInteger"},
        "suspend":{"shape":"HookState"},
        "suspendTimeoutInSeconds":{"shape":"MicrovmHooksSuspendTimeoutInSecondsInteger"},
        "terminate":{"shape":"HookState"},
        "terminateTimeoutInSeconds":{"shape":"MicrovmHooksTerminateTimeoutInSecondsInteger"}
      }
    },
    "MicrovmHooksResumeTimeoutInSecondsInteger":{
      "type":"integer",
      "box":true,
      "max":60,
      "min":1
    },
    "MicrovmHooksRunTimeoutInSecondsInteger":{
      "type":"integer",
      "box":true,
      "max":60,
      "min":1
    },
    "MicrovmHooksSuspendTimeoutInSecondsInteger":{
      "type":"integer",
      "box":true,
      "max":60,
      "min":1
    },
    "MicrovmHooksTerminateTimeoutInSecondsInteger":{
      "type":"integer",
      "box":true,
      "max":60,
      "min":1
    },
    "MicrovmIdentifier":{
      "type":"string",
      "max":256,
      "min":1
    },
    "MicrovmImageArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"arn:[a-z0-9-]+:lambda:[a-z0-9-]*:[a-z0-9]*:microvm-image:.+"
    },
    "MicrovmImageBuildSummaries":{
      "type":"list",
      "member":{"shape":"MicrovmImageBuildSummary"}
    },
    "MicrovmImageBuildSummary":{
      "type":"structure",
      "required":[
        "imageArn",
        "imageVersion",
        "buildId",
        "buildState",
        "architecture",
        "chipset",
        "chipsetGeneration",
        "createdAt"
      ],
      "members":{
        "imageArn":{"shape":"NonBlankString"},
        "imageVersion":{"shape":"NonBlankString"},
        "buildId":{"shape":"NonBlankString"},
        "buildState":{"shape":"BuildState"},
        "architecture":{"shape":"Architecture"},
        "chipset":{"shape":"Chipset"},
        "chipsetGeneration":{"shape":"NonBlankString"},
        "stateReason":{"shape":"String"},
        "createdAt":{"shape":"Timestamp"}
      }
    },
    "MicrovmImageHooks":{
      "type":"structure",
      "members":{
        "ready":{"shape":"HookState"},
        "readyTimeoutInSeconds":{"shape":"MicrovmImageHooksReadyTimeoutInSecondsInteger"},
        "validate":{"shape":"HookState"},
        "validateTimeoutInSeconds":{"shape":"MicrovmImageHooksValidateTimeoutInSecondsInteger"}
      }
    },
    "MicrovmImageHooksReadyTimeoutInSecondsInteger":{
      "type":"integer",
      "box":true,
      "max":3600,
      "min":1
    },
    "MicrovmImageHooksValidateTimeoutInSecondsInteger":{
      "type":"integer",
      "box":true,
      "max":3600,
      "min":1
    },
    "MicrovmImageIdentifier":{
      "type":"string",
      "max":256,
      "min":1
    },
    "MicrovmImageState":{
      "type":"string",
      "enum":[
        "CREATING",
        "CREATED",
        "CREATE_FAILED",
        "UPDATING",
        "UPDATED",
        "UPDATE_FAILED",
        "DELETING",
        "DELETE_FAILED",
        "DELETED"
      ]
    },
    "MicrovmImageSummaries":{
      "type":"list",
      "member":{"shape":"MicrovmImageSummary"}
    },
    "MicrovmImageSummary":{
      "type":"structure",
      "required":[
        "imageArn",
        "name",
        "state",
        "createdAt"
      ],
      "members":{
        "imageArn":{"shape":"NonBlankString"},
        "name":{"shape":"ImageName"},
        "state":{"shape":"MicrovmImageState"},
        "latestActiveImageVersion":{"shape":"NonBlankString"},
        "latestFailedImageVersion":{"shape":"NonBlankString"},
        "createdAt":{"shape":"Timestamp"}
      }
    },
    "MicrovmImageVersionState":{
      "type":"string",
      "enum":[
        "PENDING",
        "IN_PROGRESS",
        "SUCCESSFUL",
        "FAILED",
        "DELETING",
        "DELETED",
        "DELETE_FAILED"
      ]
    },
    "MicrovmImageVersionStatus":{
      "type":"string",
      "enum":[
        "ACTIVE",
        "INACTIVE"
      ]
    },
    "MicrovmImageVersionSummary":{
      "type":"structure",
      "required":[
        "baseImageArn",
        "buildRoleArn",
        "codeArtifact",
        "imageArn",
        "imageVersion",
        "state",
        "status",
        "createdAt"
      ],
      "members":{
        "baseImageArn":{"shape":"NonBlankString"},
        "baseImageVersion":{"shape":"Version"},
        "buildRoleArn":{"shape":"RoleArn"},
        "description":{"shape":"String"},
        "codeArtifact":{"shape":"CodeArtifact"},
        "logging":{"shape":"Logging"},
        "egressNetworkConnectors":{"shape":"MicrovmImageVersionSummaryEgressNetworkConnectorsList"},
        "cpuConfigurations":{"shape":"CpuConfigurationList"},
        "resources":{"shape":"ResourcesList"},
        "additionalOsCapabilities":{"shape":"CapabilityList"},
        "hooks":{"shape":"Hooks"},
        "environmentVariables":{"shape":"EnvironmentVariableMap"},
        "imageArn":{"shape":"NonBlankString"},
        "imageVersion":{"shape":"NonBlankString"},
        "state":{"shape":"MicrovmImageVersionState"},
        "status":{"shape":"MicrovmImageVersionStatus"},
        "createdAt":{"shape":"Timestamp"},
        "updatedAt":{"shape":"Timestamp"},
        "stateReason":{"shape":"String"},
        "tags":{"shape":"Tags"}
      }
    },
    "MicrovmImageVersionSummaryEgressNetworkConnectorsList":{
      "type":"list",
      "member":{"shape":"NetworkConnector"},
      "max":1,
      "min":0
    },
    "MicrovmImageVersionSummaryList":{
      "type":"list",
      "member":{"shape":"MicrovmImageVersionSummary"}
    },
    "MicrovmItem":{
      "type":"structure",
      "required":[
        "microvmId",
        "state",
        "imageArn",
        "imageVersion",
        "startedAt"
      ],
      "members":{
        "microvmId":{"shape":"MicrovmIdentifier"},
        "state":{"shape":"MicrovmState"},
        "imageArn":{"shape":"MicrovmImageArn"},
        "imageVersion":{"shape":"Version"},
        "startedAt":{"shape":"Timestamp"}
      }
    },
    "MicrovmItemList":{
      "type":"list",
      "member":{"shape":"MicrovmItem"}
    },
    "MicrovmState":{
      "type":"string",
      "enum":[
        "PENDING",
        "RUNNING",
        "SUSPENDING",
        "SUSPENDED",
        "TERMINATING",
        "TERMINATED"
      ]
    },
    "NetworkConnector":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "NetworkConnectorList":{
      "type":"list",
      "member":{"shape":"NetworkConnector"},
      "max":10,
      "min":0
    },
    "NonBlankString":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"[^\\s]+"
    },
    "PortNumber":{
      "type":"integer",
      "box":true,
      "max":65535,
      "min":1
    },
    "PortRange":{
      "type":"structure",
      "required":[
        "startPort",
        "endPort"
      ],
      "members":{
        "startPort":{"shape":"PortNumber"},
        "endPort":{"shape":"PortNumber"}
      }
    },
    "PortSpecification":{
      "type":"structure",
      "members":{
        "port":{"shape":"PortNumber"},
        "range":{"shape":"PortRange"},
        "allPorts":{"shape":"Unit"}
      },
      "union":true
    },
    "PositiveInteger":{
      "type":"integer",
      "box":true,
      "min":1
    },
    "ResourceConflictException":{
      "type":"structure",
      "members":{
        "Type":{"shape":"String"},
        "message":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":409,
        "senderFault":true
      },
      "exception":true
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"},
        "resourceType":{"shape":"String"},
        "resourceId":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":404,
        "senderFault":true
      },
      "exception":true
    },
    "Resources":{
      "type":"structure",
      "required":["minimumMemoryInMiB"],
      "members":{
        "minimumMemoryInMiB":{"shape":"Integer"}
      }
    },
    "ResourcesList":{
      "type":"list",
      "member":{"shape":"Resources"},
      "max":1,
      "min":0
    },
    "ResumeMicrovmRequest":{
      "type":"structure",
      "required":["microvmIdentifier"],
      "members":{
        "microvmIdentifier":{
          "shape":"MicrovmIdentifier",
          "location":"uri",
          "locationName":"microvmIdentifier"
        }
      }
    },
    "ResumeMicrovmResponse":{
      "type":"structure",
      "members":{}
    },
    "RoleArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"arn:aws[a-z\\-]*:iam::[0-9]{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+"
    },
    "RunHookPayload":{
      "type":"string",
      "max":4096,
      "min":0,
      "sensitive":true
    },
    "RunMicrovmRequest":{
      "type":"structure",
      "required":["imageIdentifier"],
      "members":{
        "ingressNetworkConnectors":{"shape":"NetworkConnectorList"},
        "egressNetworkConnectors":{"shape":"NetworkConnectorList"},
        "imageIdentifier":{"shape":"MicrovmImageIdentifier"},
        "imageVersion":{"shape":"Version"},
        "executionRoleArn":{"shape":"RoleArn"},
        "idlePolicy":{"shape":"IdlePolicy"},
        "logging":{"shape":"Logging"},
        "runHookPayload":{"shape":"RunHookPayload"},
        "maximumDurationInSeconds":{"shape":"RunMicrovmRequestMaximumDurationInSecondsInteger"},
        "clientToken":{
          "shape":"RunMicrovmRequestClientTokenString",
          "idempotencyToken":true
        }
      }
    },
    "RunMicrovmRequestClientTokenString":{
      "type":"string",
      "max":128,
      "min":1
    },
    "RunMicrovmRequestMaximumDurationInSecondsInteger":{
      "type":"integer",
      "box":true,
      "max":28800,
      "min":1
    },
    "RunMicrovmResponse":{
      "type":"structure",
      "required":[
        "microvmId",
        "state",
        "endpoint",
        "imageArn",
        "imageVersion",
        "maximumDurationInSeconds",
        "startedAt"
      ],
      "members":{
        "microvmId":{"shape":"MicrovmIdentifier"},
        "state":{"shape":"MicrovmState"},
        "endpoint":{"shape":"RunMicrovmResponseEndpointString"},
        "imageArn":{"shape":"MicrovmImageArn"},
        "imageVersion":{"shape":"Version"},
        "executionRoleArn":{"shape":"RoleArn"},
        "idlePolicy":{"shape":"IdlePolicy"},
        "maximumDurationInSeconds":{"shape":"Integer"},
        "startedAt":{"shape":"Timestamp"},
        "terminatedAt":{"shape":"Timestamp"},
        "stateReason":{"shape":"NonBlankString"},
        "ingressNetworkConnectors":{"shape":"NetworkConnectorList"},
        "egressNetworkConnectors":{"shape":"NetworkConnectorList"}
      }
    },
    "RunMicrovmResponseEndpointString":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "ServiceException":{
      "type":"structure",
      "members":{
        "Type":{"shape":"String"},
        "message":{"shape":"String"}
      },
      "error":{"httpStatusCode":500},
      "exception":true,
      "fault":true
    },
    "ServiceQuotaExceededException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"},
        "resourceId":{"shape":"String"},
        "resourceType":{"shape":"String"},
        "serviceCode":{"shape":"String"},
        "quotaCode":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":402,
        "senderFault":true
      },
      "exception":true
    },
    "SnapshotBuild":{
      "type":"structure",
      "members":{
        "memorySnapshotSizeInBytes":{"shape":"Long"},
        "codeInstallSizeInBytes":{"shape":"Long"},
        "diskSnapshotSizeInBytes":{"shape":"Long"}
      }
    },
    "String":{"type":"string"},
    "SuspendMicrovmRequest":{
      "type":"structure",
      "required":["microvmIdentifier"],
      "members":{
        "microvmIdentifier":{
          "shape":"MicrovmIdentifier",
          "location":"uri",
          "locationName":"microvmIdentifier"
        }
      }
    },
    "SuspendMicrovmResponse":{
      "type":"structure",
      "members":{}
    },
    "TagKey":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)"
    },
    "TagKeyList":{
      "type":"list",
      "member":{"shape":"TagKey"}
    },
    "TagResourceRequest":{
      "type":"structure",
      "required":[
        "Resource",
        "Tags"
      ],
      "members":{
        "Resource":{
          "shape":"TaggableResource",
          "location":"uri",
          "locationName":"Resource"
        },
        "Tags":{"shape":"Tags"}
      }
    },
    "TagValue":{
      "type":"string",
      "max":256,
      "min":0,
      "pattern":"([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)"
    },
    "TaggableResource":{
      "type":"string",
      "max":10000,
      "min":1,
      "pattern":"arn:(aws[a-zA-Z-]*):lambda:(eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:\\d{12}:(function:[a-zA-Z0-9-_]+(:(\\$LATEST|[a-zA-Z0-9-_]+))?|layer:([a-zA-Z0-9-_]+)|code-signing-config:csc-[a-z0-9]{17}|event-source-mapping:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}|(capacity-provider|network-connector|microvm-image):[a-zA-Z0-9-_]+)"
    },
    "Tags":{
      "type":"map",
      "key":{"shape":"TagKey"},
      "value":{"shape":"TagValue"}
    },
    "TerminateMicrovmRequest":{
      "type":"structure",
      "required":["microvmIdentifier"],
      "members":{
        "microvmIdentifier":{
          "shape":"MicrovmIdentifier",
          "location":"uri",
          "locationName":"microvmIdentifier"
        }
      }
    },
    "TerminateMicrovmResponse":{
      "type":"structure",
      "members":{}
    },
    "ThrottlingException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"},
        "serviceCode":{"shape":"String"},
        "quotaCode":{"shape":"String"},
        "retryAfterSeconds":{
          "shape":"Integer",
          "location":"header",
          "locationName":"Retry-After"
        }
      },
      "error":{
        "httpStatusCode":429,
        "senderFault":true
      },
      "exception":true,
      "retryable":{"throttling":true}
    },
    "Timestamp":{"type":"timestamp"},
    "TokenParts":{
      "type":"map",
      "key":{"shape":"AuthTokenKey"},
      "value":{"shape":"AuthTokenValue"},
      "max":10,
      "min":1
    },
    "TooManyRequestsException":{
      "type":"structure",
      "members":{
        "Type":{"shape":"String"},
        "message":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":429,
        "senderFault":true
      },
      "exception":true
    },
    "Unit":{
      "type":"structure",
      "members":{}
    },
    "UntagResourceRequest":{
      "type":"structure",
      "required":[
        "Resource",
        "TagKeys"
      ],
      "members":{
        "Resource":{
          "shape":"TaggableResource",
          "location":"uri",
          "locationName":"Resource"
        },
        "TagKeys":{
          "shape":"TagKeyList",
          "location":"querystring",
          "locationName":"tagKeys"
        }
      }
    },
    "UpdateMicrovmImageRequest":{
      "type":"structure",
      "required":[
        "baseImageArn",
        "buildRoleArn",
        "codeArtifact",
        "imageIdentifier"
      ],
      "members":{
        "baseImageArn":{"shape":"NonBlankString"},
        "baseImageVersion":{"shape":"Version"},
        "buildRoleArn":{"shape":"RoleArn"},
        "description":{"shape":"String"},
        "codeArtifact":{"shape":"CodeArtifact"},
        "logging":{"shape":"Logging"},
        "egressNetworkConnectors":{"shape":"UpdateMicrovmImageRequestEgressNetworkConnectorsList"},
        "cpuConfigurations":{"shape":"CpuConfigurationList"},
        "resources":{"shape":"ResourcesList"},
        "additionalOsCapabilities":{"shape":"CapabilityList"},
        "hooks":{"shape":"Hooks"},
        "environmentVariables":{"shape":"EnvironmentVariableMap"},
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        },
        "clientToken":{
          "shape":"UpdateMicrovmImageRequestClientTokenString",
          "idempotencyToken":true
        }
      }
    },
    "UpdateMicrovmImageRequestClientTokenString":{
      "type":"string",
      "max":128,
      "min":1
    },
    "UpdateMicrovmImageRequestEgressNetworkConnectorsList":{
      "type":"list",
      "member":{"shape":"NetworkConnector"},
      "max":1,
      "min":0
    },
    "UpdateMicrovmImageResponse":{
      "type":"structure",
      "required":[
        "imageArn",
        "name",
        "state",
        "createdAt",
        "baseImageArn",
        "buildRoleArn",
        "codeArtifact",
        "updatedAt",
        "imageVersion"
      ],
      "members":{
        "imageArn":{"shape":"NonBlankString"},
        "name":{"shape":"ImageName"},
        "state":{"shape":"MicrovmImageState"},
        "latestActiveImageVersion":{"shape":"NonBlankString"},
        "latestFailedImageVersion":{"shape":"NonBlankString"},
        "createdAt":{"shape":"Timestamp"},
        "baseImageArn":{"shape":"NonBlankString"},
        "baseImageVersion":{"shape":"Version"},
        "buildRoleArn":{"shape":"RoleArn"},
        "description":{"shape":"String"},
        "codeArtifact":{"shape":"CodeArtifact"},
        "logging":{"shape":"Logging"},
        "egressNetworkConnectors":{"shape":"UpdateMicrovmImageResponseEgressNetworkConnectorsList"},
        "cpuConfigurations":{"shape":"CpuConfigurationList"},
        "resources":{"shape":"ResourcesList"},
        "additionalOsCapabilities":{"shape":"CapabilityList"},
        "hooks":{"shape":"Hooks"},
        "environmentVariables":{"shape":"EnvironmentVariableMap"},
        "updatedAt":{"shape":"Timestamp"},
        "imageVersion":{"shape":"NonBlankString"}
      }
    },
    "UpdateMicrovmImageResponseEgressNetworkConnectorsList":{
      "type":"list",
      "member":{"shape":"NetworkConnector"},
      "max":1,
      "min":0
    },
    "UpdateMicrovmImageVersionRequest":{
      "type":"structure",
      "required":[
        "imageIdentifier",
        "imageVersion",
        "status"
      ],
      "members":{
        "imageIdentifier":{
          "shape":"MicrovmImageIdentifier",
          "location":"uri",
          "locationName":"imageIdentifier"
        },
        "imageVersion":{
          "shape":"NonBlankString",
          "location":"uri",
          "locationName":"imageVersion"
        },
        "status":{"shape":"MicrovmImageVersionStatus"}
      }
    },
    "UpdateMicrovmImageVersionResponse":{
      "type":"structure",
      "required":[
        "baseImageArn",
        "buildRoleArn",
        "codeArtifact",
        "imageArn",
        "imageVersion",
        "state",
        "status",
        "createdAt"
      ],
      "members":{
        "baseImageArn":{"shape":"NonBlankString"},
        "baseImageVersion":{"shape":"Version"},
        "buildRoleArn":{"shape":"RoleArn"},
        "description":{"shape":"String"},
        "codeArtifact":{"shape":"CodeArtifact"},
        "logging":{"shape":"Logging"},
        "egressNetworkConnectors":{"shape":"UpdateMicrovmImageVersionResponseEgressNetworkConnectorsList"},
        "cpuConfigurations":{"shape":"CpuConfigurationList"},
        "resources":{"shape":"ResourcesList"},
        "additionalOsCapabilities":{"shape":"CapabilityList"},
        "hooks":{"shape":"Hooks"},
        "environmentVariables":{"shape":"EnvironmentVariableMap"},
        "imageArn":{"shape":"NonBlankString"},
        "imageVersion":{"shape":"NonBlankString"},
        "state":{"shape":"MicrovmImageVersionState"},
        "status":{"shape":"MicrovmImageVersionStatus"},
        "createdAt":{"shape":"Timestamp"},
        "updatedAt":{"shape":"Timestamp"},
        "stateReason":{"shape":"String"},
        "tags":{"shape":"Tags"}
      }
    },
    "UpdateMicrovmImageVersionResponseEgressNetworkConnectorsList":{
      "type":"list",
      "member":{"shape":"NetworkConnector"},
      "max":1,
      "min":0
    },
    "ValidationException":{
      "type":"structure",
      "members":{
        "message":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    },
    "Version":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"[^\\s]+"
    }
  }
}
