{
  "format": "rest-xml",
  "apiVersion": "2013-10-15",
  "checksumFormat": "md5",
  "endpointPrefix": "oss",
  "serviceAbbreviation": "OSS",
  "serviceFullName": "Aliyun Open Storage Service",
  "signatureVersion": "oss",
  "timestampFormat": "rfc822",
  "xmlnamespace": "",
  "operations": {
    "abortMultipartUpload": {
      "name": "AbortMultipartUpload",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}/{Key}?uploadId={UploadId}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "UploadId": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "completeMultipartUpload": {
      "name": "CompleteMultipartUpload",
      "http": {
        "method": "POST",
        "uri": "/{Bucket}/{Key}?uploadId={UploadId}"
      },
      "input": {
        "payload": "CompleteMultipartUpload",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "CompleteMultipartUpload": {
            "type": "structure",
            "name": "CompleteMultipartUpload",
            "members": {
              "Parts": {
                "type": "list",
                "name": "Part",
                "members": {
                  "type": "structure",
                  "members": {
                    "PartNumber": {
                      "type": "integer"
                    },
                    "ETag": {}
                  }
                },
                "flattened": true
              }
            }
          },
          "UploadId": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Bucket": {},
          "ETag": {},
          "Expiration": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-expiration"
          },
          "Key": {},
          "Location": {},
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "VersionId": {
            "location": "header",
            "name": "x-oss-version-id"
          }
        }
      }
    },
    "copyObject": {
      "name": "CopyObject",
      "alias": "PutObjectCopy",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}/{Key}"
      },
      "input": {
        "type": "structure",
        "members": {
          "ACL": {
            "location": "header",
            "name": "x-oss-acl"
          },
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "CacheControl": {
            "location": "header",
            "name": "Cache-Control"
          },
          "ContentDisposition": {
            "location": "header",
            "name": "Content-Disposition"
          },
          "ContentEncoding": {
            "location": "header",
            "name": "Content-Encoding"
          },
          "ContentLanguage": {
            "location": "header",
            "name": "Content-Language"
          },
          "ContentType": {
            "location": "header",
            "name": "Content-Type"
          },
          "CopySource": {
            "required": true,
            "location": "header",
            "name": "x-oss-copy-source"
          },
          "CopySourceIfMatch": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-copy-source-if-match"
          },
          "CopySourceIfModifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-copy-source-if-modified-since"
          },
          "CopySourceIfNoneMatch": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-copy-source-if-none-match"
          },
          "CopySourceIfUnmodifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-copy-source-if-unmodified-since"
          },
          "Expires": {
            "type": "timestamp",
            "location": "header",
            "name": "Expires"
          },
          "GrantFullControl": {
            "location": "header",
            "name": "x-oss-grant-full-control"
          },
          "GrantRead": {
            "location": "header",
            "name": "x-oss-grant-read"
          },
          "GrantReadACP": {
            "location": "header",
            "name": "x-oss-grant-read-acp"
          },
          "GrantWriteACP": {
            "location": "header",
            "name": "x-oss-grant-write-acp"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "Metadata": {
            "type": "map",
            "location": "header",
            "name": "x-oss-meta-",
            "members": {},
            "keys": {}
          },
          "MetadataDirective": {
            "location": "header",
            "name": "x-oss-metadata-directive"
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "StorageClass": {
            "location": "header",
            "name": "x-oss-storage-class"
          },
          "WebsiteRedirectLocation": {
            "location": "header",
            "name": "x-oss-website-redirect-location"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "CopySourceVersionId": {
            "location": "header",
            "name": "x-oss-copy-source-version-id"
          },
          "Expiration": {
            "location": "header",
            "name": "x-oss-expiration"
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "ETag": {},
          "LastModified": {}
        }
      }
    },
    "createBucket": {
      "name": "CreateBucket",
      "alias": "PutBucket",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}"
      },
      "input": {
        "payload": "CreateBucketConfiguration",
        "type": "structure",
        "members": {
          "ACL": {
            "location": "header",
            "name": "x-oss-acl"
          },
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "GrantFullControl": {
            "location": "header",
            "name": "x-oss-grant-full-control"
          },
          "GrantRead": {
            "location": "header",
            "name": "x-oss-grant-read"
          },
          "GrantReadACP": {
            "location": "header",
            "name": "x-oss-grant-read-acp"
          },
          "GrantWrite": {
            "location": "header",
            "name": "x-oss-grant-write"
          },
          "GrantWriteACP": {
            "location": "header",
            "name": "x-oss-grant-write-acp"
          },
          "CreateBucketConfiguration": {
            "type": "structure",
            "name": "CreateBucketConfiguration",
            "members": {
               "StorageClass": {
                 "type": "string",
                 "name": "StorageClass"
               }
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Location": {
            "location": "header",
            "name": "Location"
          }
        }
      }
    },
    "createMultipartUpload": {
      "name": "CreateMultipartUpload",
      "alias": "InitiateMultipartUpload",
      "http": {
        "method": "POST",
        "uri": "/{Bucket}/{Key}?uploads"
      },
      "input": {
        "type": "structure",
        "members": {
          "ACL": {
            "location": "header",
            "name": "x-oss-acl"
          },
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "CacheControl": {
            "location": "header",
            "name": "Cache-Control"
          },
          "ContentDisposition": {
            "location": "header",
            "name": "Content-Disposition"
          },
          "ContentEncoding": {
            "location": "header",
            "name": "Content-Encoding"
          },
          "ContentLanguage": {
            "location": "header",
            "name": "Content-Language"
          },
          "ContentType": {
            "location": "header",
            "name": "Content-Type"
          },
          "Expires": {
            "type": "timestamp",
            "location": "header",
            "name": "Expires"
          },
          "GrantFullControl": {
            "location": "header",
            "name": "x-oss-grant-full-control"
          },
          "GrantRead": {
            "location": "header",
            "name": "x-oss-grant-read"
          },
          "GrantReadACP": {
            "location": "header",
            "name": "x-oss-grant-read-acp"
          },
          "GrantWriteACP": {
            "location": "header",
            "name": "x-oss-grant-write-acp"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "Metadata": {
            "type": "map",
            "location": "header",
            "name": "x-oss-meta-",
            "members": {},
            "keys": {}
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "StorageClass": {
            "location": "header",
            "name": "x-oss-storage-class"
          },
          "WebsiteRedirectLocation": {
            "location": "header",
            "name": "x-oss-website-redirect-location"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Bucket": {
            "name": "Bucket"
          },
          "Key": {},
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "UploadId": {}
        }
      }
    },
    "deleteBucket": {
      "name": "DeleteBucket",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "deleteBucketLogging": {
      "name": "DeleteBucketLogging",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}?logging"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "deleteBucketCors": {
      "name": "DeleteBucketCors",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}?cors"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "deleteBucketLifecycle": {
      "name": "DeleteBucketLifecycle",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}?lifecycle"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "deleteBucketPolicy": {
      "name": "DeleteBucketPolicy",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}?policy"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "deleteBucketTagging": {
      "name": "DeleteBucketTagging",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}?tagging"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "deleteBucketWebsite": {
      "name": "DeleteBucketWebsite",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}?website"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "deleteObject": {
      "name": "DeleteObject",
      "http": {
        "method": "DELETE",
        "uri": "/{Bucket}/{Key}?versionId={VersionId}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "MFA": {
            "location": "header",
            "name": "x-oss-mfa"
          },
          "VersionId": {
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "DeleteMarker": {
            "type": "boolean",
            "location": "header",
            "name": "x-oss-delete-marker"
          },
          "VersionId": {
            "location": "header",
            "name": "x-oss-version-id"
          }
        }
      }
    },
    "deleteObjects": {
      "name": "DeleteObjects",
      "alias": "DeleteMultipleObjects",
      "http": {
        "method": "POST",
        "uri": "/{Bucket}?delete"
      },
      "input": {
        "payload": "Delete",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "Delete": {
            "type": "structure",
            "required": true,
            "members": {
              "Objects": {
                "type": "list",
                "required": true,
                "name": "Object",
                "members": {
                  "type": "structure",
                  "members": {
                    "Key": {
                      "required": true
                    },
                    "VersionId": {}
                  }
                },
                "flattened": true
              },
              "Quiet": {
                "type": "boolean"
              }
            }
          },
          "MFA": {
            "location": "header",
            "name": "x-oss-mfa"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Deleted": {
            "type": "list",
            "members": {
              "type": "structure",
              "members": {
                "DeleteMarker": {
                  "type": "boolean"
                },
                "DeleteMarkerVersionId": {},
                "Key": {},
                "VersionId": {}
              }
            },
            "flattened": true
          },
          "Error": {
            "type": "list",
            "name": "Errors",
            "members": {
              "type": "structure",
              "members": {
                "Code": {},
                "Key": {},
                "Message": {},
                "VersionId": {}
              }
            },
            "flattened": true
          }
        }
      }
    },
    "getBucketAcl": {
      "name": "GetBucketAcl",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?acl"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccessControlList": {
            "type": "list",
            "name": "Grants",
            "members": {
              "type": "structure",
              "name": "Grant",
              "members": {
                "Grantee": {
                  "type": "structure",
                  "xmlns": {
                    "uri": "http://www.w3.org/2001/XMLSchema-instance",
                    "prefix": "xsi"
                  },
                  "members": {
                    "DisplayName": {},
                    "EmailAddress": {},
                    "ID": {},
                    "xsi:type": {
                      "name": "Type",
                      "attribute": true
                    },
                    "URI": {}
                  }
                },
                "Permission": {}
              }
            }
          },
          "Owner": {
            "type": "structure",
            "members": {
              "DisplayName": {},
              "ID": {}
            }
          }
        }
      }
    },
    "getBucketCors": {
      "name": "GetBucketCors",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?cors"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "CORSRule": {
            "type": "list",
            "name": "CORSRules",
            "members": {
              "type": "structure",
              "members": {
                "AllowedHeader": {
                  "type": "list",
                  "name": "AllowedHeaders",
                  "members": {},
                  "flattened": true
                },
                "AllowedMethod": {
                  "type": "list",
                  "name": "AllowedMethods",
                  "members": {},
                  "flattened": true
                },
                "AllowedOrigin": {
                  "type": "list",
                  "name": "AllowedOrigins",
                  "members": {},
                  "flattened": true
                },
                "ExposeHeader": {
                  "type": "list",
                  "name": "ExposeHeaders",
                  "members": {},
                  "flattened": true
                },
                "MaxAgeSeconds": {
                  "type": "integer"
                }
              }
            },
            "flattened": true
          }
        }
      }
    },
    "getBucketLifecycle": {
      "name": "GetBucketLifecycle",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?lifecycle"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Rule": {
            "type": "list",
            "name": "Rules",
            "members": {
              "type": "structure",
              "members": {
                "Expiration": {
                  "type": "structure",
                  "members": {
                    "Date": {
                      "type": "timestamp",
                      "format": "iso8601"
                    },
                    "Days": {
                      "type": "integer"
                    }
                  }
                },
                "ID": {},
                "Prefix": {},
                "Status": {},
                "Transition": {
                  "type": "structure",
                  "members": {
                    "Date": {
                      "type": "timestamp",
                      "format": "iso8601"
                    },
                    "Days": {
                      "type": "integer"
                    },
                    "StorageClass": {}
                  }
                }
              }
            },
            "flattened": true
          }
        }
      }
    },
    "getBucketLocation": {
      "name": "GetBucketLocation",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?location"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "LocationConstraint": {}
        }
      }
    },
    "getBucketLogging": {
      "name": "GetBucketLogging",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?logging"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "LoggingEnabled": {
            "type": "structure",
            "members": {
              "TargetBucket": {},
              "TargetGrants": {
                "type": "list",
                "members": {
                  "type": "structure",
                  "name": "Grant",
                  "members": {
                    "Grantee": {
                      "type": "structure",
                      "xmlns": {
                        "uri": "http://www.w3.org/2001/XMLSchema-instance",
                        "prefix": "xsi"
                      },
                      "members": {
                        "DisplayName": {},
                        "EmailAddress": {},
                        "ID": {},
                        "xsi:type": {
                          "name": "Type",
                          "attribute": true
                        },
                        "URI": {}
                      }
                    },
                    "Permission": {}
                  }
                }
              },
              "TargetPrefix": {}
            }
          }
        }
      }
    },
    "getBucketNotification": {
      "name": "GetBucketNotification",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?notification"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "TopicConfiguration": {
            "type": "structure",
            "members": {
              "Event": {},
              "Topic": {}
            }
          }
        }
      }
    },
    "getBucketPolicy": {
      "name": "GetBucketPolicy",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?policy"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Policy": {}
        },
        "payload": "Policy"
      }
    },
    "getBucketRequestPayment": {
      "name": "GetBucketRequestPayment",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?requestPayment"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Payer": {}
        }
      }
    },
    "getBucketTagging": {
      "name": "GetBucketTagging",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?tagging"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "TagSet": {
            "type": "list",
            "members": {
              "type": "structure",
              "name": "Tag",
              "members": {
                "Key": {},
                "Value": {}
              }
            }
          }
        }
      }
    },
    "getBucketVersioning": {
      "name": "GetBucketVersioning",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?versioning"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "MFADelete": {},
          "Status": {}
        }
      }
    },
    "getBucketWebsite": {
      "name": "GetBucketWebsite",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?website"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "ErrorDocument": {
            "type": "structure",
            "members": {
              "Key": {}
            }
          },
          "IndexDocument": {
            "type": "structure",
            "members": {
              "Suffix": {}
            }
          },
          "RedirectAllRequestsTo": {
            "type": "structure",
            "members": {
              "HostName": {},
              "Protocol": {}
            }
          },
          "RoutingRules": {
            "type": "list",
            "members": {
              "type": "structure",
              "name": "RoutingRule",
              "members": {
                "Condition": {
                  "type": "structure",
                  "members": {
                    "HttpErrorCodeReturnedEquals": {},
                    "KeyPrefixEquals": {}
                  }
                },
                "Redirect": {
                  "type": "structure",
                  "members": {
                    "HostName": {},
                    "HttpRedirectCode": {},
                    "Protocol": {},
                    "ReplaceKeyPrefixWith": {},
                    "ReplaceKeyWith": {}
                  }
                }
              }
            }
          }
        }
      }
    },
    "getObject": {
      "name": "GetObject",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}/{Key}?versionId={VersionId}&response-content-type={ResponseContentType}&response-content-language={ResponseContentLanguage}&response-expires={ResponseExpires}&response-cache-control={ResponseCacheControl}&response-content-disposition={ResponseContentDisposition}&response-content-encoding={ResponseContentEncoding}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "IfMatch": {
            "location": "header",
            "name": "If-Match"
          },
          "IfModifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "If-Modified-Since"
          },
          "IfNoneMatch": {
            "location": "header",
            "name": "If-None-Match"
          },
          "IfUnmodifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "If-Unmodified-Since"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "Range": {
            "location": "header",
            "name": "Range"
          },
          "ResponseCacheControl": {
            "location": "uri"
          },
          "ResponseContentDisposition": {
            "location": "uri"
          },
          "ResponseContentEncoding": {
            "location": "uri"
          },
          "ResponseContentLanguage": {
            "location": "uri"
          },
          "ResponseContentType": {
            "location": "uri"
          },
          "ResponseExpires": {
            "type": "timestamp",
            "location": "uri"
          },
          "VersionId": {
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AcceptRanges": {
            "location": "header",
            "name": "accept-ranges"
          },
          "Body": {
            "type": "binary",
            "streaming": true
          },
          "CacheControl": {
            "location": "header",
            "name": "Cache-Control"
          },
          "ContentDisposition": {
            "location": "header",
            "name": "Content-Disposition"
          },
          "ContentEncoding": {
            "location": "header",
            "name": "Content-Encoding"
          },
          "ContentLanguage": {
            "location": "header",
            "name": "Content-Language"
          },
          "ContentLength": {
            "type": "integer",
            "location": "header",
            "name": "Content-Length"
          },
          "ContentType": {
            "location": "header",
            "name": "Content-Type"
          },
          "DeleteMarker": {
            "type": "boolean",
            "location": "header",
            "name": "x-oss-delete-marker"
          },
          "ETag": {
            "location": "header",
            "name": "ETag"
          },
          "Expiration": {
            "location": "header",
            "name": "x-oss-expiration"
          },
          "Expires": {
            "type": "timestamp",
            "location": "header",
            "name": "Expires"
          },
          "LastModified": {
            "type": "timestamp",
            "location": "header",
            "name": "Last-Modified"
          },
          "Metadata": {
            "type": "map",
            "location": "header",
            "name": "x-oss-meta-",
            "members": {},
            "keys": {}
          },
          "MissingMeta": {
            "type": "integer",
            "location": "header",
            "name": "x-oss-missing-meta"
          },
          "Restore": {
            "location": "header",
            "name": "x-oss-restore"
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "VersionId": {
            "location": "header",
            "name": "x-oss-version-id"
          },
          "WebsiteRedirectLocation": {
            "location": "header",
            "name": "x-oss-website-redirect-location"
          }
        },
        "payload": "Body"
      }
    },
    "getObjectAcl": {
      "name": "GetObjectAcl",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}/{Key}?acl&versionId={VersionId}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "VersionId": {
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccessControlList": {
            "type": "list",
            "name": "Grants",
            "members": {
              "type": "structure",
              "name": "Grant",
              "members": {
                "Grantee": {
                  "type": "structure",
                  "xmlns": {
                    "uri": "http://www.w3.org/2001/XMLSchema-instance",
                    "prefix": "xsi"
                  },
                  "members": {
                    "DisplayName": {},
                    "EmailAddress": {},
                    "ID": {},
                    "xsi:type": {
                      "name": "Type",
                      "attribute": true
                    },
                    "URI": {}
                  }
                },
                "Permission": {}
              }
            }
          },
          "Owner": {
            "type": "structure",
            "members": {
              "DisplayName": {},
              "ID": {}
            }
          }
        }
      }
    },
    "getObjectMeta": {
      "name": "GetObjectMeta",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}/{Key}?objectMeta&versionId={VersionId}&response-content-type={ResponseContentType}&response-content-language={ResponseContentLanguage}&response-expires={ResponseExpires}&response-cache-control={ResponseCacheControl}&response-content-disposition={ResponseContentDisposition}&response-content-encoding={ResponseContentEncoding}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "IfMatch": {
            "location": "header",
            "name": "If-Match"
          },
          "IfModifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "If-Modified-Since"
          },
          "IfNoneMatch": {
            "location": "header",
            "name": "If-None-Match"
          },
          "IfUnmodifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "If-Unmodified-Since"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "Range": {
            "location": "header",
            "name": "Range"
          },
          "ResponseCacheControl": {
            "location": "uri"
          },
          "ResponseContentDisposition": {
            "location": "uri"
          },
          "ResponseContentEncoding": {
            "location": "uri"
          },
          "ResponseContentLanguage": {
            "location": "uri"
          },
          "ResponseContentType": {
            "location": "uri"
          },
          "ResponseExpires": {
            "type": "timestamp",
            "location": "uri"
          },
          "VersionId": {
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Size": {
            "type": "integer",
            "location": "header",
            "name": "Content-Length"
          },
          "ETag": {
            "location": "header",
            "name": "ETag"
          },
          "LastModified": {
            "type": "timestamp",
            "location": "header",
            "name": "Last-Modified"
          }
        }
      }
    },
    "getObjectTorrent": {
      "name": "GetObjectTorrent",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}/{Key}?torrent"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Key": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Body": {
            "type": "binary",
            "streaming": true
          }
        },
        "payload": "Body"
      }
    },
    "headBucket": {
      "name": "HeadBucket",
      "http": {
        "method": "HEAD",
        "uri": "/{Bucket}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "headObject": {
      "name": "HeadObject",
      "http": {
        "method": "HEAD",
        "uri": "/{Bucket}/{Key}?versionId={VersionId}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "IfMatch": {
            "location": "header",
            "name": "If-Match"
          },
          "IfModifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "If-Modified-Since"
          },
          "IfNoneMatch": {
            "location": "header",
            "name": "If-None-Match"
          },
          "IfUnmodifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "If-Unmodified-Since"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "Range": {
            "location": "header",
            "name": "Range"
          },
          "VersionId": {
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AcceptRanges": {
            "location": "header",
            "name": "accept-ranges"
          },
          "CacheControl": {
            "location": "header",
            "name": "Cache-Control"
          },
          "ContentDisposition": {
            "location": "header",
            "name": "Content-Disposition"
          },
          "ContentEncoding": {
            "location": "header",
            "name": "Content-Encoding"
          },
          "ContentLanguage": {
            "location": "header",
            "name": "Content-Language"
          },
          "ContentLength": {
            "type": "integer",
            "location": "header",
            "name": "Content-Length"
          },
          "ContentType": {
            "location": "header",
            "name": "Content-Type"
          },
          "DeleteMarker": {
            "type": "boolean",
            "location": "header",
            "name": "x-oss-delete-marker"
          },
          "ETag": {
            "location": "header",
            "name": "ETag"
          },
          "Expiration": {
            "location": "header",
            "name": "x-oss-expiration"
          },
          "Expires": {
            "type": "timestamp",
            "location": "header",
            "name": "Expires"
          },
          "LastModified": {
            "type": "timestamp",
            "location": "header",
            "name": "Last-Modified"
          },
          "Metadata": {
            "type": "map",
            "location": "header",
            "name": "x-oss-meta-",
            "members": {},
            "keys": {}
          },
          "MissingMeta": {
            "type": "integer",
            "location": "header",
            "name": "x-oss-missing-meta"
          },
          "Restore": {
            "location": "header",
            "name": "x-oss-restore"
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "VersionId": {
            "location": "header",
            "name": "x-oss-version-id"
          },
          "WebsiteRedirectLocation": {
            "location": "header",
            "name": "x-oss-website-redirect-location"
          }
        }
      }
    },
    "listBuckets": {
      "name": "ListBuckets",
      "alias": "GetService",
      "http": {
        "method": "GET",
        "uri": "/?marker={Marker}&max-keys={MaxKeys}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Marker": {
            "location": "uri"
          },
          "MaxKeys": {
            "location": "uri",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Buckets": {
            "type": "list",
            "members": {
              "type": "structure",
              "name": "Bucket",
              "members": {
                "CreationDate": {
                  "type": "timestamp"
                },
                "Name": {}
              }
            }
          },
          "Owner": {
            "type": "structure",
            "members": {
              "DisplayName": {},
              "ID": {}
            }
          }
        }
      }
    },
    "listMultipartUploads": {
      "name": "ListMultipartUploads",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?uploads&prefix={Prefix}&delimiter={Delimiter}&max-uploads={MaxUploads}&key-marker={KeyMarker}&upload-id-marker={UploadIdMarker}&encoding-type={EncodingType}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Delimiter": {
            "location": "uri"
          },
          "EncodingType": {
            "location": "uri"
          },
          "KeyMarker": {
            "location": "uri"
          },
          "MaxUploads": {
            "type": "integer",
            "location": "uri"
          },
          "Prefix": {
            "location": "uri"
          },
          "UploadIdMarker": {
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Bucket": {},
          "CommonPrefixes": {
            "type": "list",
            "members": {
              "type": "structure",
              "members": {
                "Prefix": {}
              }
            },
            "flattened": true
          },
          "EncodingType": {
            "location": "header",
            "name": "Encoding-Type"
          },
          "IsTruncated": {
            "type": "boolean"
          },
          "KeyMarker": {},
          "MaxUploads": {
            "type": "integer"
          },
          "NextKeyMarker": {},
          "NextUploadIdMarker": {},
          "Prefix": {},
          "UploadIdMarker": {},
          "Upload": {
            "type": "list",
            "name": "Uploads",
            "members": {
              "type": "structure",
              "members": {
                "Initiated": {
                  "type": "timestamp"
                },
                "Initiator": {
                  "type": "structure",
                  "members": {
                    "DisplayName": {},
                    "ID": {}
                  }
                },
                "Key": {},
                "Owner": {
                  "type": "structure",
                  "members": {
                    "DisplayName": {},
                    "ID": {}
                  }
                },
                "StorageClass": {},
                "UploadId": {}
              }
            },
            "flattened": true
          }
        }
      }
    },
    "listObjectVersions": {
      "name": "ListObjectVersions",
      "alias": "GetBucketObjectVersions",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?versions&delimiter={Delimiter}&key-marker={KeyMarker}&max-keys={MaxKeys}&prefix={Prefix}&version-id-marker={VersionIdMarker}&encoding-type={EncodingType}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Delimiter": {
            "location": "uri"
          },
          "EncodingType": {
            "location": "uri"
          },
          "KeyMarker": {
            "location": "uri"
          },
          "MaxKeys": {
            "type": "integer",
            "location": "uri"
          },
          "Prefix": {
            "location": "uri"
          },
          "VersionIdMarker": {
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "CommonPrefixes": {
            "type": "list",
            "members": {
              "type": "structure",
              "members": {
                "Prefix": {}
              }
            },
            "flattened": true
          },
          "DeleteMarker": {
            "type": "list",
            "name": "DeleteMarkers",
            "members": {
              "type": "structure",
              "members": {
                "IsLatest": {
                  "type": "boolean"
                },
                "Key": {},
                "LastModified": {
                  "type": "timestamp"
                },
                "Owner": {
                  "type": "structure",
                  "members": {
                    "DisplayName": {},
                    "ID": {}
                  }
                },
                "VersionId": {}
              }
            },
            "flattened": true
          },
          "EncodingType": {
            "location": "header",
            "name": "Encoding-Type"
          },
          "IsTruncated": {
            "type": "boolean"
          },
          "KeyMarker": {},
          "MaxKeys": {
            "type": "integer"
          },
          "Name": {},
          "NextKeyMarker": {},
          "NextVersionIdMarker": {},
          "Prefix": {},
          "VersionIdMarker": {},
          "Version": {
            "type": "list",
            "name": "Versions",
            "members": {
              "type": "structure",
              "members": {
                "ETag": {},
                "IsLatest": {
                  "type": "boolean"
                },
                "Key": {},
                "LastModified": {
                  "type": "timestamp"
                },
                "Owner": {
                  "type": "structure",
                  "members": {
                    "DisplayName": {},
                    "ID": {}
                  }
                },
                "Size": {},
                "StorageClass": {},
                "VersionId": {}
              }
            },
            "flattened": true
          }
        }
      }
    },
    "listObjects": {
      "name": "ListObjects",
      "alias": "GetBucket",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}?delimiter={Delimiter}&marker={Marker}&max-keys={MaxKeys}&prefix={Prefix}&encoding-type={EncodingType}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Delimiter": {
            "location": "uri"
          },
          "EncodingType": {
            "location": "uri"
          },
          "Marker": {
            "location": "uri"
          },
          "MaxKeys": {
            "type": "integer",
            "location": "uri"
          },
          "Prefix": {
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "CommonPrefixes": {
            "type": "list",
            "members": {
              "type": "structure",
              "members": {
                "Prefix": {}
              }
            },
            "flattened": true
          },
          "Contents": {
            "type": "list",
            "members": {
              "type": "structure",
              "members": {
                "ETag": {},
                "Key": {},
                "LastModified": {
                  "type": "timestamp"
                },
                "Owner": {
                  "type": "structure",
                  "members": {
                    "DisplayName": {},
                    "ID": {}
                  }
                },
                "Size": {
                  "type": "integer"
                },
                "StorageClass": {}
              }
            },
            "flattened": true
          },
          "EncodingType": {
            "location": "header",
            "name": "Encoding-Type"
          },
          "IsTruncated": {
            "type": "boolean"
          },
          "Marker": {},
          "MaxKeys": {
            "type": "integer"
          },
          "Name": {},
          "NextMarker": {},
          "Prefix": {}
        }
      }
    },
    "listParts": {
      "name": "ListParts",
      "http": {
        "method": "GET",
        "uri": "/{Bucket}/{Key}?uploadId={UploadId}&max-parts={MaxParts}&part-number-marker={PartNumberMarker}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "MaxParts": {
            "type": "integer",
            "location": "uri"
          },
          "PartNumberMarker": {
            "type": "integer",
            "location": "uri"
          },
          "UploadId": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Bucket": {},
          "Initiator": {
            "type": "structure",
            "members": {
              "DisplayName": {},
              "ID": {}
            }
          },
          "IsTruncated": {
            "type": "boolean"
          },
          "Key": {},
          "MaxParts": {
            "type": "integer"
          },
          "NextPartNumberMarker": {
            "type": "integer"
          },
          "Owner": {
            "type": "structure",
            "members": {
              "DisplayName": {},
              "ID": {}
            }
          },
          "PartNumberMarker": {
            "type": "integer"
          },
          "Part": {
            "type": "list",
            "name": "Parts",
            "members": {
              "type": "structure",
              "members": {
                "ETag": {},
                "LastModified": {
                  "type": "timestamp"
                },
                "PartNumber": {
                  "type": "integer"
                },
                "Size": {
                  "type": "integer"
                }
              }
            },
            "flattened": true
          },
          "StorageClass": {},
          "UploadId": {}
        }
      }
    },
    "putBucketAcl": {
      "name": "PutBucketAcl",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?acl"
      },
      "input": {
        "payload": "AccessControlPolicy",
        "type": "structure",
        "members": {
          "ACL": {
            "location": "header",
            "name": "x-oss-acl"
          },
          "AccessControlPolicy": {
            "type": "structure",
            "members": {
              "Grants": {
                "type": "list",
                "name": "AccessControlList",
                "members": {
                  "type": "structure",
                  "name": "Grant",
                  "members": {
                    "Grantee": {
                      "type": "structure",
                      "xmlns": {
                        "uri": "http://www.w3.org/2001/XMLSchema-instance",
                        "prefix": "xsi"
                      },
                      "members": {
                        "DisplayName": {},
                        "EmailAddress": {},
                        "ID": {},
                        "Type": {
                          "required": true,
                          "name": "xsi:type",
                          "attribute": true
                        },
                        "URI": {}
                      }
                    },
                    "Permission": {}
                  }
                }
              },
              "Owner": {
                "type": "structure",
                "members": {
                  "DisplayName": {},
                  "ID": {}
                }
              }
            }
          },
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "GrantFullControl": {
            "location": "header",
            "name": "x-oss-grant-full-control"
          },
          "GrantRead": {
            "location": "header",
            "name": "x-oss-grant-read"
          },
          "GrantReadACP": {
            "location": "header",
            "name": "x-oss-grant-read-acp"
          },
          "GrantWrite": {
            "location": "header",
            "name": "x-oss-grant-write"
          },
          "GrantWriteACP": {
            "location": "header",
            "name": "x-oss-grant-write-acp"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketCors": {
      "name": "PutBucketCors",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?cors"
      },
      "input": {
        "payload": "CORSConfiguration",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "CORSConfiguration": {
            "type": "structure",
            "members": {
              "CORSRules": {
                "type": "list",
                "name": "CORSRule",
                "members": {
                  "type": "structure",
                  "members": {
                    "AllowedHeaders": {
                      "type": "list",
                      "name": "AllowedHeader",
                      "members": {},
                      "flattened": true
                    },
                    "AllowedMethods": {
                      "type": "list",
                      "name": "AllowedMethod",
                      "members": {},
                      "flattened": true
                    },
                    "AllowedOrigins": {
                      "type": "list",
                      "name": "AllowedOrigin",
                      "members": {},
                      "flattened": true
                    },
                    "ExposeHeaders": {
                      "type": "list",
                      "name": "ExposeHeader",
                      "members": {},
                      "flattened": true
                    },
                    "MaxAgeSeconds": {
                      "type": "integer"
                    }
                  }
                },
                "flattened": true
              }
            }
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketLifecycle": {
      "name": "PutBucketLifecycle",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?lifecycle"
      },
      "input": {
        "payload": "LifecycleConfiguration",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "LifecycleConfiguration": {
            "type": "structure",
            "members": {
              "Rules": {
                "type": "list",
                "required": true,
                "name": "Rule",
                "members": {
                  "type": "structure",
                  "members": {
                    "Expiration": {
                      "type": "structure",
                      "members": {
                        "Date": {
                          "type": "timestamp",
                          "format": "iso8601"
                        },
                        "Days": {
                          "type": "integer"
                        }
                      }
                    },
                    "ID": {},
                    "Prefix": {
                      "required": true
                    },
                    "Status": {
                      "required": true
                    },
                    "Transition": {
                      "type": "structure",
                      "members": {
                        "Date": {
                          "type": "timestamp",
                          "format": "iso8601"
                        },
                        "Days": {
                          "type": "integer"
                        },
                        "StorageClass": {}
                      }
                    }
                  }
                },
                "flattened": true
              }
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketLogging": {
      "name": "PutBucketLogging",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?logging"
      },
      "input": {
        "payload": "BucketLoggingStatus",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "BucketLoggingStatus": {
            "type": "structure",
            "required": true,
            "members": {
              "LoggingEnabled": {
                "type": "structure",
                "members": {
                  "TargetBucket": {},
                  "TargetGrants": {
                    "type": "list",
                    "members": {
                      "type": "structure",
                      "name": "Grant",
                      "members": {
                        "Grantee": {
                          "type": "structure",
                          "xmlns": {
                            "uri": "http://www.w3.org/2001/XMLSchema-instance",
                            "prefix": "xsi"
                          },
                          "members": {
                            "DisplayName": {},
                            "EmailAddress": {},
                            "ID": {},
                            "Type": {
                              "required": true,
                              "name": "xsi:type",
                              "attribute": true
                            },
                            "URI": {}
                          }
                        },
                        "Permission": {}
                      }
                    }
                  },
                  "TargetPrefix": {}
                }
              }
            }
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketNotification": {
      "name": "PutBucketNotification",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?notification"
      },
      "input": {
        "payload": "NotificationConfiguration",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "NotificationConfiguration": {
            "type": "structure",
            "required": true,
            "members": {
              "TopicConfiguration": {
                "type": "structure",
                "required": true,
                "members": {
                  "Event": {},
                  "Topic": {}
                }
              }
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketPolicy": {
      "name": "PutBucketPolicy",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?policy"
      },
      "input": {
        "payload": "Policy",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "Policy": {
            "required": true
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketRequestPayment": {
      "name": "PutBucketRequestPayment",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?requestPayment"
      },
      "input": {
        "payload": "RequestPaymentConfiguration",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "RequestPaymentConfiguration": {
            "type": "structure",
            "required": true,
            "members": {
              "Payer": {
                "required": true
              }
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketTagging": {
      "name": "PutBucketTagging",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?tagging"
      },
      "input": {
        "payload": "Tagging",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "Tagging": {
            "type": "structure",
            "required": true,
            "members": {
              "TagSet": {
                "type": "list",
                "required": true,
                "members": {
                  "type": "structure",
                  "required": true,
                  "name": "Tag",
                  "members": {
                    "Key": {
                      "required": true
                    },
                    "Value": {
                      "required": true
                    }
                  }
                }
              }
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketVersioning": {
      "name": "PutBucketVersioning",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?versioning"
      },
      "input": {
        "payload": "VersioningConfiguration",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "MFA": {
            "location": "header",
            "name": "x-oss-mfa"
          },
          "VersioningConfiguration": {
            "type": "structure",
            "required": true,
            "members": {
              "MFADelete": {},
              "Status": {}
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putBucketWebsite": {
      "name": "PutBucketWebsite",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}?website"
      },
      "input": {
        "payload": "WebsiteConfiguration",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "WebsiteConfiguration": {
            "type": "structure",
            "required": true,
            "members": {
              "ErrorDocument": {
                "type": "structure",
                "members": {
                  "Key": {
                    "required": true
                  }
                }
              },
              "IndexDocument": {
                "type": "structure",
                "members": {
                  "Suffix": {
                    "required": true
                  }
                }
              },
              "RedirectAllRequestsTo": {
                "type": "structure",
                "members": {
                  "HostName": {
                    "required": true
                  },
                  "Protocol": {}
                }
              },
              "RoutingRules": {
                "type": "list",
                "members": {
                  "type": "structure",
                  "name": "RoutingRule",
                  "members": {
                    "Condition": {
                      "type": "structure",
                      "members": {
                        "HttpErrorCodeReturnedEquals": {},
                        "KeyPrefixEquals": {}
                      }
                    },
                    "Redirect": {
                      "type": "structure",
                      "required": true,
                      "members": {
                        "HostName": {},
                        "HttpRedirectCode": {},
                        "Protocol": {},
                        "ReplaceKeyPrefixWith": {},
                        "ReplaceKeyWith": {}
                      }
                    }
                  }
                }
              }
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "putObject": {
      "name": "PutObject",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}/{Key}"
      },
      "input": {
        "payload": "Body",
        "type": "structure",
        "members": {
          "ACL": {
            "location": "header",
            "name": "x-oss-acl"
          },
          "AccessControlAllowOrigin": {
            "location": "header",
            "name": "Access-Control-Allow-Origin"
          },
          "Body": {
            "type": "binary",
            "streaming": true
          },
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "CacheControl": {
            "location": "header",
            "name": "Cache-Control"
          },
          "ContentDisposition": {
            "location": "header",
            "name": "Content-Disposition"
          },
          "ContentEncoding": {
            "location": "header",
            "name": "Content-Encoding"
          },
          "ContentLanguage": {
            "location": "header",
            "name": "Content-Language"
          },
          "ContentLength": {
            "type": "integer",
            "location": "header",
            "name": "Content-Length"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "ContentType": {
            "location": "header",
            "name": "Content-Type"
          },
          "Expires": {
            "type": "timestamp",
            "location": "header",
            "name": "Expires"
          },
          "GrantFullControl": {
            "location": "header",
            "name": "x-oss-grant-full-control"
          },
          "GrantRead": {
            "location": "header",
            "name": "x-oss-grant-read"
          },
          "GrantReadACP": {
            "location": "header",
            "name": "x-oss-grant-read-acp"
          },
          "GrantWriteACP": {
            "location": "header",
            "name": "x-oss-grant-write-acp"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "Metadata": {
            "type": "map",
            "location": "header",
            "name": "x-oss-meta-",
            "members": {},
            "keys": {}
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "StorageClass": {
            "location": "header",
            "name": "x-oss-storage-class"
          },
          "WebsiteRedirectLocation": {
            "location": "header",
            "name": "x-oss-website-redirect-location"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "ETag": {
            "location": "header",
            "name": "ETag"
          },
          "Expiration": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-expiration"
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "VersionId": {
            "location": "header",
            "name": "x-oss-version-id"
          }
        }
      }
    },
    "putObjectAcl": {
      "name": "PutObjectAcl",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}/{Key}?acl"
      },
      "input": {
        "payload": "AccessControlPolicy",
        "type": "structure",
        "members": {
          "ACL": {
            "location": "header",
            "name": "x-oss-object-acl"
          },
          "AccessControlPolicy": {
            "type": "structure",
            "members": {
              "Grants": {
                "type": "list",
                "name": "AccessControlList",
                "members": {
                  "type": "structure",
                  "name": "Grant",
                  "members": {
                    "Grantee": {
                      "type": "structure",
                      "xmlns": {
                        "uri": "http://www.w3.org/2001/XMLSchema-instance",
                        "prefix": "xsi"
                      },
                      "members": {
                        "DisplayName": {},
                        "EmailAddress": {},
                        "ID": {},
                        "Type": {
                          "required": true,
                          "name": "xsi:type",
                          "attribute": true
                        },
                        "URI": {}
                      }
                    },
                    "Permission": {}
                  }
                }
              },
              "Owner": {
                "type": "structure",
                "members": {
                  "DisplayName": {},
                  "ID": {}
                }
              }
            }
          },
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "GrantFullControl": {
            "location": "header",
            "name": "x-oss-grant-full-control"
          },
          "GrantRead": {
            "location": "header",
            "name": "x-oss-grant-read"
          },
          "GrantReadACP": {
            "location": "header",
            "name": "x-oss-grant-read-acp"
          },
          "GrantWrite": {
            "location": "header",
            "name": "x-oss-grant-write"
          },
          "GrantWriteACP": {
            "location": "header",
            "name": "x-oss-grant-write-acp"
          },
          "Key": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "restoreObject": {
      "name": "RestoreObject",
      "alias": "PostObjectRestore",
      "http": {
        "method": "POST",
        "uri": "/{Bucket}/{Key}?restore"
      },
      "input": {
        "payload": "RestoreRequest",
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "RestoreRequest": {
            "type": "structure",
            "members": {
              "Days": {
                "type": "integer",
                "required": true
              }
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "uploadPart": {
      "name": "UploadPart",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}/{Key}?partNumber={PartNumber}&uploadId={UploadId}"
      },
      "input": {
        "payload": "Body",
        "type": "structure",
        "members": {
          "Body": {
            "type": "binary",
            "streaming": true
          },
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "ContentLength": {
            "type": "integer",
            "location": "header",
            "name": "Content-Length"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "PartNumber": {
            "type": "integer",
            "required": true,
            "location": "uri"
          },
          "UploadId": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "ETag": {
            "location": "header",
            "name": "ETag"
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          }
        }
      }
    },
    "uploadPartCopy": {
      "name": "UploadPartCopy",
      "http": {
        "method": "PUT",
        "uri": "/{Bucket}/{Key}?partNumber={PartNumber}&uploadId={UploadId}"
      },
      "input": {
        "type": "structure",
        "members": {
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "CopySource": {
            "required": true,
            "location": "header",
            "name": "x-oss-copy-source"
          },
          "CopySourceIfMatch": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-copy-source-if-match"
          },
          "CopySourceIfModifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-copy-source-if-modified-since"
          },
          "CopySourceIfNoneMatch": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-copy-source-if-none-match"
          },
          "CopySourceIfUnmodifiedSince": {
            "type": "timestamp",
            "location": "header",
            "name": "x-oss-copy-source-if-unmodified-since"
          },
          "CopySourceRange": {
            "location": "header",
            "name": "x-oss-copy-source-range"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "PartNumber": {
            "type": "integer",
            "required": true,
            "location": "uri"
          },
          "UploadId": {
            "required": true,
            "location": "uri"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "CopySourceVersionId": {
            "location": "header",
            "name": "x-oss-copy-source-version-id"
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "ETag": {},
          "LastModified": {
            "type": "timestamp"
          }
        }
      }
    },
    "appendObject": {
      "name": "AppendObject",
      "http": {
        "method": "POST",
        "uri": "/{Key}?append&position={Position}"
      },
      "input": {
        "payload": "Body",
        "type": "structure",
        "members": {
          "Body": {
            "type": "binary",
            "streaming": true
          },
          "Bucket": {
            "required": true,
            "location": "uri"
          },
          "CacheControl": {
            "location": "header",
            "name": "Cache-Control"
          },
          "ContentDisposition": {
            "location": "header",
            "name": "Content-Disposition"
          },
          "ContentEncoding": {
            "location": "header",
            "name": "Content-Encoding"
          },
          "ContentLanguage": {
            "location": "header",
            "name": "Content-Language"
          },
          "ContentLength": {
            "type": "integer",
            "location": "header",
            "name": "Content-Length"
          },
          "ContentMD5": {
            "location": "header",
            "name": "Content-MD5"
          },
          "ContentType": {
            "location": "header",
            "name": "Content-Type"
          },
          "Expires": {
            "type": "timestamp",
            "location": "header",
            "name": "Expires"
          },
          "GrantFullControl": {
            "location": "header",
            "name": "x-oss-grant-full-control"
          },
          "GrantRead": {
            "location": "header",
            "name": "x-oss-grant-read"
          },
          "GrantReadACP": {
            "location": "header",
            "name": "x-oss-grant-read-acp"
          },
          "GrantWriteACP": {
            "location": "header",
            "name": "x-oss-grant-write-acp"
          },
          "Key": {
            "required": true,
            "location": "uri"
          },
          "Metadata": {
            "type": "map",
            "location": "header",
            "name": "x-oss-meta-",
            "members": {},
            "keys": {}
          },
          "Position": {
            "required": true,
            "location": "uri",
            "type": "integer"
          },
          "ServerSideEncryption": {
            "location": "header",
            "name": "x-oss-server-side-encryption"
          },
          "StorageClass": {
            "location": "header",
            "name": "x-oss-storage-class"
          },
          "WebsiteRedirectLocation": {
            "location": "header",
            "name": "x-oss-website-redirect-location"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "NextAppendPosition": {
            "location": "header",
            "name": "x-oss-next-append-position"
          },
          "HashCrc64Ecma": {
            "location": "header",
            "name": "x-oss-hash-crc64ecma"
          }
        }
      }
    }
  },
  "pagination": {
    "listMultipartUploads": {
      "limitKey": "MaxUploads",
      "moreResults": "IsTruncated",
      "outputToken": [
        "NextKeyMarker",
        "NextUploadIdMarker"
      ],
      "inputToken": [
        "KeyMarker",
        "UploadIdMarker"
      ],
      "resultKey": "Uploads"
    },
    "listObjectVersions": {
      "moreResults": "IsTruncated",
      "limitKey": "MaxKeys",
      "outputToken": [
        "NextKeyMarker",
        "NextVersionIdMarker"
      ],
      "inputToken": [
        "KeyMarker",
        "VersionIdMarker"
      ],
      "resultKey": "Versions"
    },
    "listObjects": {
      "moreResults": "IsTruncated",
      "limitKey": "MaxKeys",
      "outputToken": "NextMarker or Contents[-1].Key",
      "inputToken": "Marker",
      "resultKey": [
        "Contents",
        "CommonPrefixes"
      ]
    },
    "listParts": {
      "limitKey": "IsTruncated",
      "outputToken": "NextPartNumberMarker",
      "inputToken": "PartNumberMarker",
      "resultKey": "Parts"
    }
  }
}
