{ "service": { "actions": { "CreateVault": { "request": { "operation": "CreateVault", "params": [ { "target": "accountId", "source": "string", "value": "-" } ] }, "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "requestParameter", "path": "accountId" }, { "target": "Name", "source": "requestParameter", "path": "vaultName" } ] } } }, "has": { "Account": { "resource": { "type": "Account", "identifiers": [ { "target": "Id", "source": "input" } ] } } }, "hasMany": { "Vaults": { "request": { "operation": "ListVaults", "params": [ { "target": "accountId", "source": "string", "value": "-" } ] }, "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "requestParameter", "path": "accountId" }, { "target": "Name", "source": "response", "path": "VaultList[].VaultName" } ], "path": "VaultList[]" } } } }, "resources": { "Account": { "identifiers": [ { "name": "Id" } ], "actions": { "CreateVault": { "request": { "operation": "CreateVault", "params": [ { "target": "accountId", "source": "identifier", "name": "Id" } ] }, "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "Id" }, { "target": "Name", "source": "requestParameter", "path": "vaultName" } ] } } }, "has": { "Vault": { "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "Id" }, { "target": "Name", "source": "input" } ] } } }, "hasMany": { "Vaults": { "request": { "operation": "ListVaults", "params": [ { "target": "accountId", "source": "identifier", "name": "Id" } ] }, "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "Id" }, { "target": "Name", "source": "response", "path": "VaultList[].VaultName" } ], "path": "VaultList[]" } } } }, "Archive": { "identifiers": [ { "name": "AccountId" }, { "name": "VaultName" }, { "name": "Id" } ], "actions": { "Delete": { "request": { "operation": "DeleteArchive", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" }, { "target": "archiveId", "source": "identifier", "name": "Id" } ] } }, "InitiateArchiveRetrieval": { "request": { "operation": "InitiateJob", "params": [ { "target": "vaultName", "source": "identifier", "name": "VaultName" }, { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "jobParameters.Type", "source": "string", "value": "archive-retrieval" }, { "target": "jobParameters.ArchiveId", "source": "identifier", "name": "Id" } ] }, "resource": { "type": "Job", "identifiers": [ { "target": "Id", "source": "response", "path": "jobId" }, { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "VaultName" } ] } } }, "has": { "Vault": { "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "Name", "source": "identifier", "name": "VaultName" } ] } } } }, "Job": { "identifiers": [ { "name": "AccountId" }, { "name": "VaultName" }, { "name": "Id", "memberName": "JobId" } ], "shape": "GlacierJobDescription", "load": { "request": { "operation": "DescribeJob", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" }, { "target": "jobId", "source": "identifier", "name": "Id" } ] }, "path": "@" }, "actions": { "GetOutput": { "request": { "operation": "GetJobOutput", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" }, { "target": "jobId", "source": "identifier", "name": "Id" } ] } } }, "has": { "Vault": { "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "Name", "source": "identifier", "name": "VaultName" } ] } } } }, "MultipartUpload": { "identifiers": [ { "name": "AccountId" }, { "name": "VaultName" }, { "name": "Id", "memberName": "MultipartUploadId" } ], "shape": "UploadListElement", "actions": { "Abort": { "request": { "operation": "AbortMultipartUpload", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" }, { "target": "uploadId", "source": "identifier", "name": "Id" } ] } }, "Complete": { "request": { "operation": "CompleteMultipartUpload", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" }, { "target": "uploadId", "source": "identifier", "name": "Id" } ] } }, "Parts": { "request": { "operation": "ListParts", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" }, { "target": "uploadId", "source": "identifier", "name": "Id" } ] } }, "UploadPart": { "request": { "operation": "UploadMultipartPart", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" }, { "target": "uploadId", "source": "identifier", "name": "Id" } ] } } }, "has": { "Vault": { "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "Name", "source": "identifier", "name": "VaultName" } ] } } } }, "Notification": { "identifiers": [ { "name": "AccountId" }, { "name": "VaultName" } ], "shape": "VaultNotificationConfig", "load": { "request": { "operation": "GetVaultNotifications", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" } ] }, "path": "vaultNotificationConfig" }, "actions": { "Delete": { "request": { "operation": "DeleteVaultNotifications", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" } ] } }, "Set": { "request": { "operation": "SetVaultNotifications", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "VaultName" } ] } } }, "has": { "Vault": { "resource": { "type": "Vault", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "Name", "source": "identifier", "name": "VaultName" } ] } } } }, "Vault": { "identifiers": [ { "name": "AccountId" }, { "name": "Name", "memberName": "VaultName" } ], "shape": "DescribeVaultOutput", "load": { "request": { "operation": "DescribeVault", "params": [ { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "accountId", "source": "identifier", "name": "AccountId" } ] }, "path": "@" }, "actions": { "Create": { "request": { "operation": "CreateVault", "params": [ { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "accountId", "source": "identifier", "name": "AccountId" } ] } }, "Delete": { "request": { "operation": "DeleteVault", "params": [ { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "accountId", "source": "identifier", "name": "AccountId" } ] } }, "InitiateInventoryRetrieval": { "request": { "operation": "InitiateJob", "params": [ { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "jobParameters.Type", "source": "string", "value": "inventory-retrieval" } ] }, "resource": { "type": "Job", "identifiers": [ { "target": "Id", "source": "response", "path": "jobId" }, { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" } ] } }, "InitiateMultipartUpload": { "request": { "operation": "InitiateMultipartUpload", "params": [ { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "accountId", "source": "identifier", "name": "AccountId" } ] }, "resource": { "type": "MultipartUpload", "identifiers": [ { "target": "Id", "source": "response", "path": "uploadId" }, { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" } ] } }, "UploadArchive": { "request": { "operation": "UploadArchive", "params": [ { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "accountId", "source": "identifier", "name": "AccountId" } ] }, "resource": { "type": "Archive", "identifiers": [ { "target": "Id", "source": "response", "path": "archiveId" }, { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" } ] } } }, "has": { "Account": { "resource": { "type": "Account", "identifiers": [ { "target": "Id", "source": "identifier", "name": "AccountId" } ] } }, "Archive": { "resource": { "type": "Archive", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "input" } ] } }, "Job": { "resource": { "type": "Job", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "input" } ] } }, "MultipartUpload": { "resource": { "type": "MultipartUpload", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "input" } ] } }, "Notification": { "resource": { "type": "Notification", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" } ] } } }, "hasMany": { "CompletedJobs": { "request": { "operation": "ListJobs", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "completed", "source": "string", "value": "true" } ] }, "resource": { "type": "Job", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "response", "path": "JobList[].JobId" } ], "path": "JobList[]" } }, "FailedJobs": { "request": { "operation": "ListJobs", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "statuscode", "source": "string", "value": "Failed" } ] }, "resource": { "type": "Job", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "response", "path": "JobList[].JobId" } ], "path": "JobList[]" } }, "Jobs": { "request": { "operation": "ListJobs", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "Name" } ] }, "resource": { "type": "Job", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "response", "path": "JobList[].JobId" } ], "path": "JobList[]" } }, "JobsInProgress": { "request": { "operation": "ListJobs", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "statuscode", "source": "string", "value": "InProgress" } ] }, "resource": { "type": "Job", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "response", "path": "JobList[].JobId" } ], "path": "JobList[]" } }, "MultipartUplaods": { "request": { "operation": "ListMultipartUploads", "params": [ { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "accountId", "source": "identifier", "name": "AccountId" } ] }, "resource": { "type": "MultipartUpload", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "response", "path": "UploadsList[].MultipartUploadId" } ], "path": "UploadsList[]" } }, "MultipartUploads": { "request": { "operation": "ListMultipartUploads", "params": [ { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "accountId", "source": "identifier", "name": "AccountId" } ] }, "resource": { "type": "MultipartUpload", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "response", "path": "UploadsList[].MultipartUploadId" } ], "path": "UploadsList[]" } }, "SucceededJobs": { "request": { "operation": "ListJobs", "params": [ { "target": "accountId", "source": "identifier", "name": "AccountId" }, { "target": "vaultName", "source": "identifier", "name": "Name" }, { "target": "statuscode", "source": "string", "value": "Succeeded" } ] }, "resource": { "type": "Job", "identifiers": [ { "target": "AccountId", "source": "identifier", "name": "AccountId" }, { "target": "VaultName", "source": "identifier", "name": "Name" }, { "target": "Id", "source": "response", "path": "JobList[].JobId" } ], "path": "JobList[]" } } } } } }