diff --git a/docs/obs/api-ref/ALL_META.TXT.json b/docs/obs/api-ref/ALL_META.TXT.json index 6487747d6..f6d10ed47 100644 --- a/docs/obs/api-ref/ALL_META.TXT.json +++ b/docs/obs/api-ref/ALL_META.TXT.json @@ -14,9 +14,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Before You Start", @@ -34,9 +32,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Overview", @@ -54,9 +50,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"API Calling", @@ -74,9 +68,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Endpoints", @@ -94,9 +86,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Basic Concepts", @@ -114,9 +104,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"API Overview", @@ -134,9 +122,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Calling APIs", @@ -154,9 +140,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Constructing a Request", @@ -174,9 +158,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Authentication", @@ -194,9 +176,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"User Signature Authentication", @@ -214,9 +194,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Authentication of Signature in a Header", @@ -234,9 +212,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Authentication of Signature in a URL", @@ -249,17 +225,15 @@ "code":"13", "des":"OBS supports browser-based uploads using POST requests. Authenticating such a request uses the signature carried in the form. First, create a policy to specify the requir", "doc_type":"api", - "kw":"Authentication of Signature Carried in the Table Uploaded Through a Browser,Authentication,API Refer", + "kw":"Authenticating the Signature Carried in a Form Uploaded Through a Browser,Authentication,API Referen", "search_title":"", "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], - "title":"Authentication of Signature Carried in the Table Uploaded Through a Browser", + "title":"Authenticating the Signature Carried in a Form Uploaded Through a Browser", "githuburl":"" }, { @@ -274,9 +248,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Returned Values", @@ -294,9 +266,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Getting Started", @@ -314,9 +284,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Creating a Bucket", @@ -334,9 +302,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Listing Buckets", @@ -354,9 +320,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Uploading an Object", @@ -374,9 +338,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"APIs", @@ -394,9 +356,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Operations on Buckets", @@ -414,9 +374,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Listing Buckets", @@ -434,9 +392,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Creating a Bucket", @@ -454,9 +410,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Listing Objects in a Bucket", @@ -474,9 +428,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Listing Objects in a Bucket (V2)", @@ -494,9 +446,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket Metadata", @@ -514,9 +464,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket Location", @@ -534,9 +482,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting Buckets", @@ -554,9 +500,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Advanced Bucket Settings", @@ -574,9 +518,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring a Bucket Policy", @@ -594,9 +536,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket Policy Information", @@ -614,9 +554,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting a Bucket Policy", @@ -634,9 +572,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring a Bucket ACL", @@ -654,9 +590,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket ACL Information", @@ -674,9 +608,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Logging for a Bucket", @@ -694,9 +626,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining a Bucket Logging Configuration", @@ -714,9 +644,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Bucket Lifecycle Rules", @@ -734,9 +662,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket Lifecycle Configuration", @@ -754,9 +680,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting Lifecycle Rules", @@ -774,9 +698,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Versioning for a Bucket", @@ -794,9 +716,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket Versioning Status", @@ -814,9 +734,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Event Notification for a Bucket", @@ -834,9 +752,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining the Event Notification Configuration of a Bucket", @@ -854,9 +770,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Storage Class for a Bucket", @@ -874,9 +788,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket Storage Class Information", @@ -894,9 +806,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Cross-Region Replication for a Bucket", @@ -914,9 +824,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining the Cross-Region Replication Configuration of a Bucket", @@ -934,9 +842,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting the Cross-Region Replication Configuration of a Bucket", @@ -954,9 +860,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Tags for a Bucket", @@ -974,9 +878,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket Tags", @@ -994,9 +896,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting Tags", @@ -1014,9 +914,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Bucket Storage Quota", @@ -1034,9 +932,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Querying Bucket Storage Quota", @@ -1054,9 +950,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Storage Information of a Bucket", @@ -1074,9 +968,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Bucket Inventories", @@ -1094,9 +986,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining a Specific Inventory of a Bucket", @@ -1114,9 +1004,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Listing All Inventories of a Bucket", @@ -1134,9 +1022,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting Bucket Inventories", @@ -1147,16 +1033,14 @@ "node_id":"obs_04_0059.xml", "product_code":"obs", "code":"58", - "des":"OBS uses the PUT method to configure a custom domain name for a bucket. After the configuration is successful, you can access the bucket through the domain name.Ensure th", + "des":"OBS uses the PUT method to configure a custom domain name for a bucket. After the configuration is successful, you can access the bucket through the domain name.To perfor", "doc_type":"api", "kw":"Configuring a Custom Domain Name for a Bucket,Advanced Bucket Settings,API Reference", "search_title":"", "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring a Custom Domain Name for a Bucket", @@ -1167,16 +1051,14 @@ "node_id":"obs_04_0060.xml", "product_code":"obs", "code":"59", - "des":"OBS uses the GET method to obtain the custom domain name of a bucket.This request message does not contain the request parameters.This request uses common headers. For de", + "des":"OBS uses the GET method to obtain the custom domain name of a bucket.To perform this operation, the user must be the bucket owner or the bucket owner's IAM user that has ", "doc_type":"api", "kw":"Obtaining the Custom Domain Name of a Bucket,Advanced Bucket Settings,API Reference", "search_title":"", "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining the Custom Domain Name of a Bucket", @@ -1187,16 +1069,14 @@ "node_id":"obs_04_0061.xml", "product_code":"obs", "code":"60", - "des":"OBS uses the DELETE method to delete the custom domain name of a bucket.This request uses common headers. For details, see Table 3.This request involves no elements.The r", + "des":"OBS uses the DELETE method to delete the custom domain name of a bucket.To perform this operation, the user must be the bucket owner or the bucket owner's IAM user that h", "doc_type":"api", "kw":"Deleting the Custom Domain Name of a Bucket,Advanced Bucket Settings,API Reference", "search_title":"", "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting the Custom Domain Name of a Bucket", @@ -1214,9 +1094,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Bucket Encryption", @@ -1234,9 +1112,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Bucket Encryption Configuration", @@ -1254,9 +1130,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting the Encryption Configuration of a Bucket", @@ -1274,9 +1148,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring the Requester-Pays Function for a Bucket", @@ -1294,9 +1166,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining the Requester-Pays Configuration Information of a Bucket", @@ -1314,9 +1184,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring a Default WORM Policy for a Bucket", @@ -1334,9 +1202,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining the Default WORM Policy of a Bucket", @@ -1354,9 +1220,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Static Website Hosting", @@ -1374,9 +1238,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Static Website Hosting for a Bucket", @@ -1394,9 +1256,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining the Static Website Hosting Configuration of a Bucket", @@ -1414,9 +1274,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting the Static Website Hosting Configuration of a Bucket", @@ -1434,9 +1292,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring Bucket CORS", @@ -1454,9 +1310,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining the CORS Configuration of a Bucket", @@ -1474,9 +1328,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting the CORS Configuration of a Bucket", @@ -1494,9 +1346,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"OPTIONS Bucket", @@ -1514,9 +1364,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"OPTIONS Object", @@ -1534,9 +1382,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Operations on Objects", @@ -1554,9 +1400,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Uploading an Object - PUT", @@ -1574,9 +1418,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Uploading an Object - POST", @@ -1594,9 +1436,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Copying an Object", @@ -1614,9 +1454,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Downloading an Object", @@ -1634,9 +1472,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Querying Object Metadata", @@ -1654,9 +1490,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting an Object", @@ -1674,9 +1508,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting Objects", @@ -1694,9 +1526,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Restoring Cold Objects", @@ -1714,9 +1544,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring an Object ACL", @@ -1734,9 +1562,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Object ACL Configuration", @@ -1754,9 +1580,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Modifying Object Metadata", @@ -1774,9 +1598,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Modifying an Object", @@ -1794,9 +1616,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Truncating an Object", @@ -1814,9 +1634,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Renaming an Object", @@ -1834,17 +1652,15 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Adding Object Tags", "githuburl":"" }, { - "uri":"en-us_topic_0000001399487626.html", - "node_id":"en-us_topic_0000001399487626.xml", + "uri":"obs_04_0164.html", + "node_id":"obs_04_0164.xml", "product_code":"obs", "code":"93", "des":"This operation returns tags of an object.If you do not specify a version ID in a request, make sure that you have the GetObjectTagging permission. If you do specify a ver", @@ -1854,17 +1670,15 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Object Tags", "githuburl":"" }, { - "uri":"en-us_topic_0000001399647606.html", - "node_id":"en-us_topic_0000001399647606.xml", + "uri":"obs_04_0165.html", + "node_id":"obs_04_0165.xml", "product_code":"obs", "code":"94", "des":"This operation deletes tags from an object.If you do not specify a version ID in a request, make sure that you have the DeleteObjectTagging permission. If you do specify ", @@ -1874,9 +1688,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Deleting Object Tags", @@ -1894,9 +1706,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Configuring WORM Retention for an Object", @@ -1914,9 +1724,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Operations on Multipart Upload", @@ -1934,9 +1742,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Listing Initiated Multipart Uploads in a Bucket", @@ -1954,9 +1760,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Initiating a Multipart Upload", @@ -1974,9 +1778,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Uploading Parts", @@ -1987,16 +1789,14 @@ "node_id":"obs_04_0100.xml", "product_code":"obs", "code":"100", - "des":"After a multipart upload task is created, you can upload parts for this task using the obtained multipart upload ID. Alternatively, you can make an API call to add a part", + "des":"After a multipart upload task is created, you can upload parts for this task using the obtained multipart upload ID. Alternatively, you can make an API call to copy a par", "doc_type":"api", "kw":"Copying Parts,Operations on Multipart Upload,API Reference", "search_title":"", "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Copying Parts", @@ -2014,9 +1814,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Listing Uploaded Parts that Have Not Been Assembled", @@ -2034,9 +1832,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Completing a Multipart Upload", @@ -2054,9 +1850,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Canceling a Multipart Upload Task", @@ -2074,9 +1868,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Server-Side Encryption", @@ -2094,9 +1886,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Server-Side Encryption Overview", @@ -2114,9 +1904,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"SSE-KMS", @@ -2134,9 +1922,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"SSE-C", @@ -2154,9 +1940,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"API Operations Related to Server-Side Encryption", @@ -2174,9 +1958,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Error Codes", @@ -2194,9 +1976,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"IAM Policies and Supported Actions", @@ -2214,9 +1994,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Introduction", @@ -2234,9 +2012,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Bucket Actions", @@ -2254,9 +2030,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Object Actions", @@ -2274,9 +2048,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Appendixes", @@ -2294,9 +2066,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Status Codes", @@ -2314,9 +2084,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining Access Keys (AK/SK)", @@ -2334,9 +2102,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Obtaining a Domain ID and a User ID", @@ -2354,9 +2120,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Consistency of Concurrent Operations", @@ -2374,9 +2138,7 @@ "metedata":[ { "documenttype":"api", - "prodname":"obs", - "mdname":"Sample Code for Creating a Bucket;Sample Code for Obtaining a Bucket List;Sample Code for Uploading an Object", - "opensource":"true" + "prodname":"obs" } ], "title":"Change History", diff --git a/docs/obs/api-ref/CLASS.TXT.json b/docs/obs/api-ref/CLASS.TXT.json index d2c49eabc..981f5ba68 100644 --- a/docs/obs/api-ref/CLASS.TXT.json +++ b/docs/obs/api-ref/CLASS.TXT.json @@ -110,7 +110,7 @@ { "desc":"OBS supports browser-based uploads using POST requests. Authenticating such a request uses the signature carried in the form. First, create a policy to specify the requir", "product_code":"obs", - "title":"Authentication of Signature Carried in the Table Uploaded Through a Browser", + "title":"Authenticating the Signature Carried in a Form Uploaded Through a Browser", "uri":"obs_04_0012.html", "doc_type":"api", "p_code":"9", @@ -513,7 +513,7 @@ "code":"57" }, { - "desc":"OBS uses the PUT method to configure a custom domain name for a bucket. After the configuration is successful, you can access the bucket through the domain name.Ensure th", + "desc":"OBS uses the PUT method to configure a custom domain name for a bucket. After the configuration is successful, you can access the bucket through the domain name.To perfor", "product_code":"obs", "title":"Configuring a Custom Domain Name for a Bucket", "uri":"obs_04_0059.html", @@ -522,7 +522,7 @@ "code":"58" }, { - "desc":"OBS uses the GET method to obtain the custom domain name of a bucket.This request message does not contain the request parameters.This request uses common headers. For de", + "desc":"OBS uses the GET method to obtain the custom domain name of a bucket.To perform this operation, the user must be the bucket owner or the bucket owner's IAM user that has ", "product_code":"obs", "title":"Obtaining the Custom Domain Name of a Bucket", "uri":"obs_04_0060.html", @@ -531,7 +531,7 @@ "code":"59" }, { - "desc":"OBS uses the DELETE method to delete the custom domain name of a bucket.This request uses common headers. For details, see Table 3.This request involves no elements.The r", + "desc":"OBS uses the DELETE method to delete the custom domain name of a bucket.To perform this operation, the user must be the bucket owner or the bucket owner's IAM user that h", "product_code":"obs", "title":"Deleting the Custom Domain Name of a Bucket", "uri":"obs_04_0061.html", @@ -831,7 +831,7 @@ "desc":"This operation returns tags of an object.If you do not specify a version ID in a request, make sure that you have the GetObjectTagging permission. If you do specify a ver", "product_code":"obs", "title":"Obtaining Object Tags", - "uri":"en-us_topic_0000001399487626.html", + "uri":"obs_04_0164.html", "doc_type":"api", "p_code":"77", "code":"93" @@ -840,7 +840,7 @@ "desc":"This operation deletes tags from an object.If you do not specify a version ID in a request, make sure that you have the DeleteObjectTagging permission. If you do specify ", "product_code":"obs", "title":"Deleting Object Tags", - "uri":"en-us_topic_0000001399647606.html", + "uri":"obs_04_0165.html", "doc_type":"api", "p_code":"77", "code":"94" @@ -891,7 +891,7 @@ "code":"99" }, { - "desc":"After a multipart upload task is created, you can upload parts for this task using the obtained multipart upload ID. Alternatively, you can make an API call to add a part", + "desc":"After a multipart upload task is created, you can upload parts for this task using the obtained multipart upload ID. Alternatively, you can make an API call to copy a par", "product_code":"obs", "title":"Copying Parts", "uri":"obs_04_0100.html", diff --git a/docs/obs/api-ref/en-us_topic_0000001399647606.html b/docs/obs/api-ref/en-us_topic_0000001399647606.html deleted file mode 100644 index 80605c526..000000000 --- a/docs/obs/api-ref/en-us_topic_0000001399647606.html +++ /dev/null @@ -1,80 +0,0 @@ - - -
This operation deletes tags from an object.
-If you do not specify a version ID in a request, make sure that you have the DeleteObjectTagging permission. If you do specify a version ID in a request, make sure that you have the DeleteObjectTagging and DeleteObjectVersionTagging permissions. By default, only the object owner can perform this operation. The object owner can grant this permission to others by using a bucket or user policy.
-OBS deletes tags from the current object version by default. You can use the versionId parameter to delete tags from any other version. If the version you are deleting tags from is a delete marker, OBS returns 404 Not Found.
-
Tags are not supported for files in parallel file systems.
-1 -2 -3 -4 | DELETE /objectname?tagging&versionId=versionid HTTP/1.1 -Host: bucketname.obs.region.example.com -Date: date -Authorization: authorization string - |
This request contains no message parameters.
-This request uses common headers. For details, see Table 3.
-This request involves no elements.
-1 -2 -3 -4 -5 -6 | HTTP/1.1 status_code -x-obs-request-id: request id -x-obs-id-2: id -x-obs-version-id: version id -Content-Length: length -Date: date - |
This request uses common headers. For details, see Table 3.
-This response contains no elements.
-No special error responses are returned. For details, see Table 2. If the object has no tags or the tag deletion is successful, OBS returns a 204 error.
-1 -2 -3 -4 -5 -6 | DELETE /objectname?tagging&versionId=G001018455096CE600005306000000DD HTTP/1.1 -User-Agent: curl/7.19.7 -Host: bucketname.obs.region.example.com -Accept: */* -Date: Wed, 27 Jun 2018 13:46:58 GMT -Authorization: authorization string - |
1 -2 -3 -4 -5 -6 | HTTP/1.1 204 No Content -x-obs-request-id: 0002B7532E0000015BEB2C212E53A17L -x-obs-id-2: CqT+86nnOkB+Cv9KZoVgZ28pSgMF+uGQBUC68flvkQeq6CxoCz65wWFMNBpXvea4 -x-obs-version-id: G001018455096CE600005306000000DD -Content-Length: 0 -Date: Wed, 27 Jun 2018 13:46:58 GMT - |
Welcome to the Object Storage Service API Reference. Object Storage Service (OBS) provides massive, secure, reliable, and cost-effective data storage capabilities for users to store data of any type and size. It is suitable for scenarios such as enterprise backup/archiving, video on demand (VoD), and video surveillance.
This document describes how to use application programming interfaces (APIs) to perform operations on OBS, such as creating, modifying, and deleting bucket, as well as uploading, downloading, and deleting objects. For details about all supported operations, see API Overview.
Before calling OBS APIs, ensure that you have fully understood relevant concepts. For details, see Basic Concepts.
+OBS provides Representational State Transfer (REST) APIs that you can call by making HTTP or HTTPS requests. For details, see Calling APIs.
+An endpoint is a request address for calling an API. Endpoints vary depending on services and regions. For the endpoints of all services, see Regions and Endpoints.
+OBS provides a different second-level domain name for each region. You can use the domain names provided by OBS or define your own domain names to access OBS.
+2024-08-02
+2025-05-09
+This issue is the fourteenth official release.
+This issue incorporates the following changes:
+Updated Configuring Bucket Lifecycle Rules and Obtaining Bucket Lifecycle Configuration.
+2025-04-07
+This is the thirteenth official release.
+This issue incorporates the following changes:
+Updated Configuring Bucket Lifecycle Rules, Configuring Bucket Encryption, Completing a Multipart Upload, Copying Parts, Copying an Object, and Configuring Tags for a Bucket.
+2024-08-02
This is the twelfth official release.
This issue incorporates the following changes:
-2024-03-21
diff --git a/docs/obs/api-ref/obs_04_0003.html b/docs/obs/api-ref/obs_04_0003.html index b1070cc9d..c1974928a 100644 --- a/docs/obs/api-ref/obs_04_0003.html +++ b/docs/obs/api-ref/obs_04_0003.html @@ -2,6 +2,7 @@An endpoint is the request address for calling an API. Endpoints vary depending on services and regions. For the endpoints of services, see Regions and Endpoints.
+OBS provides a second-level domain name for each region. You can use the domain name provided by OBS or a custom domain name to access OBS.
A bucket is a container where objects are stored. It is the top namespace in OBS. Each object must reside in a bucket. For example, if you store object picture.jpg in bucket photo, the object can be accessed by using this URL: http://photo.obs.region.example.com/picture.jpg
An object is a basic data unit on OBS. A bucket can store multiple objects, and OBS does not distinguish between object file types. Objects are serialized in OBS. An object may be a text, a video, or any other types of files. In OBS, the size of a file can range from 0 bytes to 48.8 TB. However, when an object is uploaded through the PutObject operation, it cannot exceed the maximum size of 5 GB. Use the multipart upload method, if the object size is larger than 5 GB.
A region is a geographic area in which cloud resources are deployed. Availability zones (AZs) in the same region can communicate with each other over an intranet, while AZs in different regions are isolated from each other. Deploying cloud resources in different regions can better suit certain user requirements or comply with local laws or regulations.
-Each bucket in OBS must reside in a region. You can specify the region when creating the bucket. Once a bucket is created, its region cannot be changed. Select the most appropriate region for a bucket based on the location, cost, and regulatory compliance requirements. For details about the available regions, see Endpoints.
+Each bucket in OBS must reside in a region. You can specify the region when creating the bucket. Once a bucket is created, its region cannot be changed. Select the most appropriate region for a bucket based on the location, cost, and regulatory compliance requirements. For details about the available regions, see Endpoints.
Restores objects from the Cold storage class.
+Restores objects from the Cold storage class.
Adds tags to an object.
Obtains tags of an object.
Deletes tags of an object.
Copies part or all of an existing object as a part.
+Copies an object or its part as a part of a multipart upload task.
Listing Uploaded Parts that Have Not Been Assembled
diff --git a/docs/obs/api-ref/obs_04_0008.html b/docs/obs/api-ref/obs_04_0008.html index 461610b77..e23ec5528 100644 --- a/docs/obs/api-ref/obs_04_0008.html +++ b/docs/obs/api-ref/obs_04_0008.html @@ -10,7 +10,7 @@OBS signs a request using AK/SK. When a client is sending a request to OBS, the message header must contain the SK, request time, request type, and other information of the signature.
A user can obtain the AK and SK from IAM. For details, see Obtaining Access Keys (AK/SK).
-OBS provides three signature calculation methods based on application scenarios: Authentication of Signature in a Header, Authentication of Signature in a URL, and Authentication of Signature Carried in the Table Uploaded Through a Browser.
+OBS provides three signature calculation methods based on application scenarios: Authentication of Signature in a Header, Authentication of Signature in a URL, and Authenticating the Signature Carried in a Form Uploaded Through a Browser.
The SDK provided by OBS integrates signature calculation. It is recommended that you use the SDK for development.
Table 1 shows the user signature verification process in which a signature is carried in a header. For details about the parameters and code examples of authentication of signature in a header, see Authentication of Signature in a Header.
diff --git a/docs/obs/api-ref/obs_04_0010.html b/docs/obs/api-ref/obs_04_0010.html index efff9a8ac..118d2d384 100644 --- a/docs/obs/api-ref/obs_04_0010.html +++ b/docs/obs/api-ref/obs_04_0010.html @@ -45,7 +45,7 @@CanonicalizedHeaders
OBS request header field in an HTTP request header, referring to header fields starting with x-obs-, such as, x-obs-date, x-obs-acl, and x-obs-meta-*. When calling an API, choose a header that is supported by the API as required.
+HTTP request headers that start with x-obs-, such as x-obs-date, x-obs-acl, and x-obs-meta-*. When calling an API, choose a header that is supported by the API as required.
Signature = Base64( HMAC-SHA1( YourSecretAccessKeyID, UTF-8-Encoding-Of( StringToSign ) ) )+
Signature = Base64( HMAC-SHA1( Your_SK, UTF-8-Encoding-Of( StringToSign ) ) )
PUT / HTTP/1.1 Host: newbucketname2.obs.region.example.com @@ -726,7 +726,7 @@ Authorization: OBS UDSIAMSTUBTEST000254:ydH8ffpcbS6YpeOMcEZfn0wE90c= # Hard-coded or plaintext AK and SK are risky. For security purposes, encrypt your AK and SK and store them in the configuration file or environment variables. # In this example, the AK and SK are stored in environment variables for identity authentication. Before running the code in this example, configure environment variables OTCCLOUD_SDK_AK and OTCCLOUD_SDK_SK. -yourSecretAccessKeyID = os.getenv('OTCCLOUD_SDK_SK') +Your_SK = os.getenv('OTCCLOUD_SDK_SK') httpMethod = "PUT" contentType = "application/xml" # "date" is the time when the request was actually generated @@ -735,10 +735,10 @@ Authorization: OBS UDSIAMSTUBTEST000254:ydH8ffpcbS6YpeOMcEZfn0wE90c= CanonicalizedResource = "/newbucketname2" canonical_string = httpMethod + "\n" + "\n" + contentType + "\n" + date + "\n" + canonicalizedHeaders + CanonicalizedResource if IS_PYTHON2: - hashed = hmac.new(yourSecretAccessKeyID, canonical_string, hashlib.sha1) + hashed = hmac.new(Your_SK, canonical_string, hashlib.sha1) encode_canonical = binascii.b2a_base64(hashed.digest())[:-1] else: - hashed = hmac.new(yourSecretAccessKeyID.encode('UTF-8'), canonical_string.encode('UTF-8'), hashlib.sha1) + hashed = hmac.new(Your_SK.encode('UTF-8'), canonical_string.encode('UTF-8'), hashlib.sha1) encode_canonical = binascii.b2a_base64(hashed.digest())[:-1].decode('UTF-8') print(encode_canonical) diff --git a/docs/obs/api-ref/obs_04_0011.html b/docs/obs/api-ref/obs_04_0011.html index 10fd110dd..f3350abac 100644 --- a/docs/obs/api-ref/obs_04_0011.html +++ b/docs/obs/api-ref/obs_04_0011.html @@ -28,7 +28,7 @@ Host: bucketname.obs.region.example.com<- Expires
When the URL expires, in UTC (how many seconds have elapsed since 00:00:00 UTC on January 1, 1970)
+When the URL expires, measured as a Unix timestamp (how many seconds elapsed since 00:00:00 on January 1, 1970). After the specified time elapses, the URL expires.
Type: string
Yes
@@ -93,7 +93,7 @@ Host: bucketname.obs.region.example.com<@@ -111,7 +111,7 @@ Host: bucketname.obs.region.example.com< - CanonicalizedHeaders
HTTP request headers that start with x-obs-, such as x-obs-date, x-obs-acl, and x-obs-meta-*.
+HTTP request headers that start with x-obs-, such as x-obs-date, x-obs-acl, and x-obs-meta-*.
- All characters in a header name must be lower-case. Multiple header names are sorted in alphabetical order.
- If a header has more than one value, combine them using commas (,). For example, x-obs-meta-name:name1 and x-obs-meta-name:name2 need to be written as x-obs-meta-name:name1,name2.
- Non-ASCII or unrecognizable characters are not allowed for header names and also not recommended for header values. If such characters are required, encode or decode them on the client using URL or Base64. The server does not perform decoding.
- Delete meaningless spaces or tabs in a header. For example, x-obs-meta-name: name (there is a meaningless space before the second name) must be changed to x-obs-meta-name:name.
- Each header occupies a separate line.
Use hash-based message authentication code (HMAC) to calculate the signature based on the StringToSign and SK:
-Signature = URL-Encode( Base64( HMAC-SHA1( YourSecretAccessKeyID, UTF-8-Encoding-Of( StringToSign ) ) ) )+
Signature = URL-Encode( Base64( HMAC-SHA1( Your_SK, UTF-8-Encoding-Of( StringToSign ) ) ) )
Compared with the Authorization header method:
Calculation rule of the signature
-Signature = URL-Encode( Base64( HMAC-SHA1( YourSecretAccessKeyID, UTF-8-Encoding-Of( StringToSign ) ) ) )+
Signature = URL-Encode( Base64( HMAC-SHA1( Your_SK, UTF-8-Encoding-Of( StringToSign ) ) ) )
Calculate the signature and use the host as the prefix of the URL to generate a predefined URL:
http(s)://examplebucket.obs.region.example.com/objectkey?AccessKeyId=AccessKeyID&Expires=1532779451&Signature=0Akylf43Bm3mD1bh2rM3dmVp1Bo%3D
If you enter the address in the browser, then the object objectkey in the examplebucket bucket can be downloaded. The validity period of this link is 1532779451 (indicating Sat Jul 28 20:04:11 CST 2018).
diff --git a/docs/obs/api-ref/obs_04_0012.html b/docs/obs/api-ref/obs_04_0012.html index 616b5be28..6bff0c1d6 100644 --- a/docs/obs/api-ref/obs_04_0012.html +++ b/docs/obs/api-ref/obs_04_0012.html @@ -1,11 +1,11 @@ -OBS supports browser-based uploads using POST requests. Authenticating such a request uses the signature carried in the form. First, create a policy to specify the requirements for requests, such as bucket name or object name prefix. Then, create a signature based on this policy. The request form to be signed must contain a valid signature and policy. Finally, create a form to upload the object to the bucket.
The process of calculating a signature is as follows:
StringToSign = Base64( UTF-8-Encoding-Of( policy ) ) -Signature = Base64( HMAC-SHA1( YourSecretAccessKeyID, StringToSign ) )+Signature = Base64( HMAC-SHA1( Your_SK, StringToSign ) )
The content of the policy is as follows:
{ "expiration": "2017-12-31T12:00:00.000Z",
"conditions": [
diff --git a/docs/obs/api-ref/obs_04_0017.html b/docs/obs/api-ref/obs_04_0017.html
index 0a410e108..85f0f0eed 100644
--- a/docs/obs/api-ref/obs_04_0017.html
+++ b/docs/obs/api-ref/obs_04_0017.html
@@ -7,6 +7,8 @@
Prerequisites
- You have obtained the AK and SK. For details, see Obtaining Access Keys (AK/SK).
- At least one bucket is available.
- The file to be uploaded has been prepared and you know the complete local path of the file.
- You have obtained the region of the bucket which you want to upload files to and determined the endpoint required for API calls. For details, see Regions and Endpoints.
Uploading the Object objecttest1 to Bucket bucket001 in the a1 Region
In this example, an Apache HttpClient is used.
+
If the contentType parameter in the sample code is left blank, the parameter in the signature header must also be left blank during signature calculation. Otherwise, a signature mismatch error is reported.
+
1
2
3
diff --git a/docs/obs/api-ref/obs_04_0020.html b/docs/obs/api-ref/obs_04_0020.html
index 4f0ef9282..75c84ff4f 100644
--- a/docs/obs/api-ref/obs_04_0020.html
+++ b/docs/obs/api-ref/obs_04_0020.html
@@ -14,7 +14,7 @@ Authorization: authorization
Regardless of the endpoint you specified, a list of buckets spanning all regions is returned.
-Do not list buckets during bucket creation.
+When creating a bucket, do not list buckets.
Request Parameters
This request contains no parameters.
@@ -164,7 +164,9 @@ Content-Length: length
3
4
5
-6GET / HTTP/1.1
+6
+7
GET /
+ HTTP/1.1
User-Agent: curl/7.29.0
Host: obs.region.example.com
Accept: */*
diff --git a/docs/obs/api-ref/obs_04_0021.html b/docs/obs/api-ref/obs_04_0021.html
index 91f90e0bd..a2da04e65 100644
--- a/docs/obs/api-ref/obs_04_0021.html
+++ b/docs/obs/api-ref/obs_04_0021.html
@@ -2,7 +2,7 @@
Creating a Bucket
Functions
This operation is used to create a bucket with a specified name.
-
- By default, a user can have a maximum of 100 buckets.
- The name of a deleted bucket can be reused for a bucket or a parallel file system at least 30 minutes after the deletion.
- You can enable WORM when you create a bucket, but you cannot enable WORM for an existing bucket. In a bucket with WORM enabled, you can further configure retention policies for objects you upload to this bucket. For more information, see Configuring a Default WORM Policy for a Bucket. Once enabled, WORM cannot be disabled for a bucket. When you create a bucket with WORM enabled, OBS automatically enables versioning for the bucket and the versioning cannot be suspended for that bucket. When you create a parallel file system, you cannot enable WORM for it.
+
- By default, a user can have a maximum of 100 buckets.
- The name of a deleted bucket can be reused for a bucket or a parallel file system at least 30 minutes after the deletion.
- You can enable WORM when you create a bucket. After WORM is enabled, you can configure retention policies for objects you upload to the bucket. For more information, see Configuring a Default WORM Policy for a Bucket. When you create a bucket with WORM enabled, OBS automatically enables versioning for the bucket, which cannot be suspended. When you create a parallel file system, you cannot enable WORM for it.
A bucket name must be unique in OBS. If a user creates a bucket with the same name as that of an existing bucket under the same account and in the same region, a 200 code (indicating success) is returned. In scenarios other than the preceding one, the request for creating a bucket with the same name as that of an existing one will receive the 409 code (indicating that a namesake bucket already exists). To set an access control policy for the bucket to be created, you can add the x-obs-acl parameter to request headers.
@@ -40,7 +40,7 @@ Authorization: authorization
Mandatory (Yes/No)
-Description
+Description
@@ -83,7 +83,7 @@ Authorization: authorization
Explanation:
Grants the read permission to all users in a specified domain. It allows you to list objects in a bucket, list multipart tasks in a bucket, list multi-version objects in a bucket, and obtain bucket metadata.
Example: x-obs-grant-read:id=tenant-ID
-Restrictions:
+Restrictions:
None
Value range:
id=tenant-ID. For details, see Obtaining a Domain ID and a User ID.
@@ -100,11 +100,11 @@ Authorization: authorization
Explanation:
Grants the WRITE permission to all users in a specified domain to create, delete, and overwrite all objects in a bucket; and initiate multipart uploads, upload parts, copy parts, assemble parts, and cancel multipart uploads.
Example: x-obs-grant-write:id=tenant-ID
-Restrictions:
+Restrictions:
None
-Value range:
+Value range:
id=tenant-ID. For details, see Obtaining a Domain ID and a User ID.
-Default value:
+Default value:
None
@@ -116,12 +116,12 @@ Authorization: authorization
Explanation:
Grant the READ_ACP permission to all users in a specified domain to allow them to read the bucket ACL.
-Example: x-obs-grant-read-acp:id=Account ID
-Restrictions:
+Example: x-obs-grant-read-acp:id=Account ID
+Restrictions:
None
-Value range:
+Value range:
id=tenant-ID. For details, see Obtaining a Domain ID and a User ID.
-Default value:
+Default value:
None
@@ -133,12 +133,12 @@ Authorization: authorization
Explanation:
Grants the WRITE_ACP permission to all users in a specified domain to allow them to modify the bucket ACL.
-Example: x-obs-grant-write-acp:id=Account ID
-Restrictions:
+Example: x-obs-grant-write-acp:id=Account ID
+Restrictions:
None
-Value range:
+Value range:
id=tenant-ID. For details, see Obtaining a Domain ID and a User ID.
-Default value:
+Default value:
None
@@ -151,11 +151,11 @@ Authorization: authorization
Explanation:
Grants the FULL_CONTROL permission to all users in a specified domain.
Example: x-obs-grant-full-control:id=tenant-ID
-Restrictions:
+Restrictions:
None
-Value range:
+Value range:
id=tenant-ID. For details, see Obtaining a Domain ID and a User ID.
-Default value:
+Default value:
None
@@ -168,11 +168,11 @@ Authorization: authorization
Explanation:
Grants the READ permission to all users in a specified domain. By default, the read permission is granted on all objects in the bucket.
Example: x-obs-grant-read-delivered:id=tenant-ID
-Restrictions:
+Restrictions:
None
Value range:
id=tenant-ID. For details, see Obtaining a Domain ID and a User ID.
-Default value:
+Default value:
None
@@ -185,11 +185,11 @@ Authorization: authorization
Explanation:
Grants the FULL_CONTROL permission to all users in a specified domain. By default, the FULL_CONTROL permission is granted on all objects in the bucket.
Example: x-obs-grant-full-control-delivered:id=tenant-ID
-Restrictions:
+Restrictions:
None
-Value range:
+Value range:
id=tenant-ID. For details, see Obtaining a Domain ID and a User ID.
-Default value:
+Default value:
None
@@ -201,7 +201,7 @@ Authorization: authorization
Explanation:
This header can be carried when you want to create a parallel file system.
-Example: x-obs-fs-file-interface:Enabled
+Example: x-obs-fs-file-interface:Enabled
Value range:
Enabled
Default value:
@@ -216,7 +216,7 @@ Authorization: authorization
Explanation:
When creating a bucket, you can use this header to enable WORM for the bucket.
-Example: x-obs-bucket-object-lock-enabled:true
+Example: x-obs-bucket-object-lock-enabled:true
Restrictions:
Only object buckets are supported.
Value range:
@@ -231,7 +231,7 @@ Authorization: authorization
Request Elements
This request can use additional elements. For details about additional elements, see Table 2.
-Table 2 Additional request elements Element
+Table 2 Additional request elements Element
Type
@@ -250,9 +250,9 @@ Authorization: authorization
Explanation:
Specifies the region where a bucket will be created.
-- When creating a bucket using the endpoint of the default region, note the following:
- If Location is not specified, the bucket is created in the default region.
- If Location is specified to other region, the bucket is created in the specified region.
- - When creating a bucket using the endpoint of a non-default region, Location must be specified to the region corresponding to the endpoint.
-Restrictions:
+- When creating a bucket using the endpoint of the default region, note the following:
- If Location is not specified, the bucket is created in the default region.
- If Location is specified to other region, the bucket is created in the specified region.
+ - When creating a bucket using the endpoint of a non-default region, Location must be specified to the region corresponding to the endpoint.
+Restrictions:
If the used endpoint is obs.otc.t-systems.com, this parameter is not required. If any other endpoint is used, this parameter is required.
Value range:
For details about OBS regions and endpoints, see Regions and Endpoints.
diff --git a/docs/obs/api-ref/obs_04_0022.html b/docs/obs/api-ref/obs_04_0022.html
index 3e0ea7222..e4d927082 100644
--- a/docs/obs/api-ref/obs_04_0022.html
+++ b/docs/obs/api-ref/obs_04_0022.html
@@ -94,9 +94,9 @@ Authorization: authorization
No
Explanation:
-Separator used to group object names. If a prefix is specified, objects with the same string from the prefix to the first delimiter are grouped into one CommonPrefixes. If no prefix is specified, objects with the same string from the first character to the first delimiter are grouped into one CommonPrefixes.
-For example, there are three objects (abcd, abcde, and bbcde) in a bucket. If delimiter is set to d and prefix is set to a, objects abcd and abcde are grouped into a CommonPrefixes with abcd as the prefix. If only delimiter is set to d, objects abcd and abcde are grouped into a CommonPrefixes with abcd as the prefix, and bbcde is grouped separately into another CommonPrefixes with bbcd as the prefix.
-For a parallel file system, if this parameter is not specified, all the content in the directory is recursively listed by default, and subdirectories are also listed. In big data scenarios, parallel file systems usually have deep directory levels and each directory has a large number of files. In such case, you are advised to configure [delimiter=/] to list the content in the current directory, but not list subdirectories, thereby improving the listing efficiency.
+Separator used to group object names. If a prefix is specified, objects with the same string from the prefix to the first delimiter are grouped into one CommonPrefixes. If no prefix is specified, objects with the same string from the first character to the first delimiter are grouped into one CommonPrefixes.
+For example, there are three objects (abcd, abcde, and bbcde) in a bucket. If delimiter is set to d and prefix is set to a, objects abcd and abcde are grouped into a CommonPrefixes with abcd as the prefix. If only delimiter is set to d, objects abcd and abcde are grouped into a CommonPrefixes with abcd as the prefix, and bbcde is grouped separately into another CommonPrefixes with bbcd as the prefix.
+For a parallel file system, if this parameter is not specified, all the content in the directory is recursively listed by default, and subdirectories are also listed. In big data scenarios, parallel file systems usually have deep directory levels and each directory has a large number of files. In such case, you are advised to configure [delimiter=/] to list the content in the current directory, but not list subdirectories, thereby improving the listing efficiency.
Restrictions:
None
Value range:
@@ -182,7 +182,7 @@ Authorization: authorization
Explanation:
A list of objects in a bucket
-Restrictions:
+Restrictions:
None
Value range:
None
@@ -230,7 +230,7 @@ Authorization: authorization
Parent: ListBucketResult
Restrictions:
None
-Value range:
+Value range:
The value can contain 1 to 1,024 characters.
Default value:
None
@@ -241,11 +241,11 @@ Authorization: authorization
String
Explanation:
-Base64-encoded 128-bit MD5 digest of an object. ETag is the unique identifier of the object content. It can be used to determine whether the object content is changed. For example, if the ETag value is A when an object is uploaded, but this value has changed to B when the object is downloaded, it indicates that the object content has been changed. The ETag value is a hash of the object. The ETag reflects changes to the object content, rather than the object metadata. An uploaded object or copied object has a unique ETag after being encrypted using MD5.
+Base64-encoded 128-bit MD5 digest of an object. ETag is the unique identifier of the object content. It can be used to determine whether the object content is changed. For example, if the ETag value is A when an object is uploaded, but this value has changed to B when the object is downloaded, it indicates that the object content has been changed. The ETag value is a hash of the object. The ETag reflects changes to the object content, rather than the object metadata. An uploaded object or copied object has a unique ETag after being encrypted using MD5.
Parent: ListBucketResult.Contents
Restriction:
If the object is encrypted on the server side, the ETag value is not the MD5 digest of the object, but the unique identifier calculated through server-side encryption.
-Value range:
+Value range:
The value must contain 32 characters.
Default value:
None
@@ -288,7 +288,7 @@ Authorization: authorization
Explanation:
Whether all results are returned in the response.
Parent: ListBucketResult
-Restrictions:
+Restrictions:
None
Value range:
- true: Not all results are returned.
- false: All results are returned.
@@ -331,13 +331,13 @@ Authorization: authorization
String
-Explanation:
+Explanation:
Name of the object to start with when listing objects in a bucket. All objects following this object are listed in lexicographical order by object name.
Assume that you have the following objects: test/a, test/b, test/c, and test/d. If you specify test/b as the marker, test/c and test/d are returned.
Parent: ListBucketResult
Restrictions:
None
-Value range:
+Value range:
The value can contain 1 to 1,024 characters.
Default value:
None
@@ -348,9 +348,9 @@ Authorization: authorization
String
Explanation:
-The last object in the returned list. This parameter is returned when not all the objects are listed. You can set the Marker value to list the remaining objects in follow-up requests.
+The last object in the returned list. This parameter is returned when not all the objects are listed. You can set the Marker value to list the remaining objects in follow-up requests.
Parent: ListBucketResult
-Restrictions:
+Restrictions:
None
Value range:
An object name string
@@ -362,7 +362,7 @@ Authorization: authorization
String
-Explanation:
+Explanation:
The maximum number of objects returned in the response in alphabetical order
Parent: ListBucketResult
Restrictions:
@@ -377,7 +377,7 @@ Authorization: authorization
String
-Explanation:
+Explanation:
Bucket name
Parent: ListBucketResult
Restrictions:
@@ -469,7 +469,7 @@ Authorization: authorization
Table 3 Elements in the response message for listing versioned objects Parameter
-Type
+Type
Description
@@ -511,7 +511,7 @@ Authorization: authorization
Explanation:
Name prefix that the objects to be listed must contain.
-Assume that you have the following objects: logs/day1, logs/day2, logs/day3, and ExampleObject.jpg. If you specify logs/ as the prefix, logs/day1, logs/day2, and logs/day3 will be returned. If you leave this parameter blank and there are also no other filters specified, all objects in the bucket will be returned.
+Assume that you have the following objects: logs/day1, logs/day2, logs/day3, and ExampleObject.jpg. If you specify logs/ as the prefix, logs/day1, logs/day2, and logs/day3 will be returned. If you leave this parameter blank and there are also no other filters specified, all objects in the bucket will be returned.
Parent: ListVersionsResult
Restrictions:
The prefix you specified must already exist in the bucket.
@@ -525,9 +525,9 @@ Authorization: authorization
String
-Explanation:
+Explanation:
Name of the object to start with when listing objects in a bucket. All objects following this object are listed in lexicographical order by object name.
-Assume that you have the following objects: test/a, test/b, test/c, and test/d. If you specify test/b as the marker, test/c and test/d are returned.
+Assume that you have the following objects: test/a, test/b, test/c, and test/d. If you specify test/b as the marker, test/c and test/d are returned.
Parent: ListVersionsResult
Restrictions:
This parameter is used only for listing versioned objects.
@@ -541,7 +541,7 @@ Authorization: authorization
String
-Explanation:
+Explanation:
Version ID to start with when listing versioned objects, which is consistent with that set in the request
Restrictions:
This parameter is used only for listing versioned objects.
@@ -555,8 +555,8 @@ Authorization: authorization
String
-Explanation:
-Start position when listing versioned objects in the next request. Key marker for the last returned object in the list. NextKeyMarker is returned when not all the objects are listed. You can set the KeyMarker value to list the remaining objects in follow-up requests.
+Explanation:
+Start position when listing versioned objects in the next request. Key marker for the last returned object in the list. NextKeyMarker is returned when not all the objects are listed. You can set the KeyMarker value to list the remaining objects in follow-up requests.
Parent: ListVersionsResult
Restrictions:
None
@@ -570,14 +570,14 @@ Authorization: authorization
String
-Explanation:
-Version ID to start with when listing versioned objects in the next request. It is used with the nextKeyMarker parameter. Version ID marker for the last returned object in the list. NextVersionIdMarker is returned when not all the objects are listed. You can set the VersionIdMarker value to list the remaining objects in follow-up requests.
+Explanation:
+Version ID to start with when listing versioned objects in the next request. It is used with the nextKeyMarker parameter. Version ID marker for the last returned object in the list. NextVersionIdMarker is returned when not all the objects are listed. You can set the VersionIdMarker value to list the remaining objects in follow-up requests.
Parent: ListVersionsResult
Restrictions:
This parameter is used only for listing versioned objects.
Value range:
The value must contain 32 characters.
-Default value:
+Default value:
None
@@ -635,9 +635,9 @@ Authorization: authorization
Parent: ListVersionsResult
Restrictions:
None
-Value range:
+Value range:
None
-Default value:
+Default value:
None
@@ -645,12 +645,12 @@ Authorization: authorization
String
-Explanation:
+Explanation:
Name of the versioned object. An object is uniquely identified by an object name in a bucket. An object name is a complete path that does not contain the bucket name.
Parent: ListVersionsResult.Version | ListVersionsResult.DeleteMarker
Restrictions:
None
-Value range:
+Value range:
The value can contain 1 to 1,024 characters.
Default value:
None
@@ -667,7 +667,7 @@ Authorization: authorization
None
Value range:
The value must contain 32 characters.
-Default value:
+Default value:
None
@@ -690,13 +690,13 @@ Authorization: authorization
Date
-Explanation:
+Explanation:
Time (UTC) when an object was last modified
Parent: ListVersionsResult.Version | ListVersionsResult.DeleteMarker
Restrictions:
The date is in the ISO8601 format.
Example: 2018-01-01T00:00:00.000Z
-Value range:
+Value range:
None
Default value:
None
@@ -706,12 +706,12 @@ Authorization: authorization
String
-Explanation:
-Base64-encoded 128-bit MD5 digest of an object. ETag is the unique identifier of the object content. It can be used to determine whether the object content is changed. For example, if the ETag value is A when an object is uploaded, but this value has changed to B when the object is downloaded, it indicates that the object content has been changed. The ETag value is a hash of the object. The ETag reflects changes to the object content, rather than the object metadata. An uploaded object or copied object has a unique ETag after being encrypted using MD5.
+Explanation:
+Base64-encoded 128-bit MD5 digest of an object. ETag is the unique identifier of the object content. It can be used to determine whether the object content is changed. For example, if the ETag value is A when an object is uploaded, but this value has changed to B when the object is downloaded, it indicates that the object content has been changed. The ETag value is a hash of the object. The ETag reflects changes to the object content, rather than the object metadata. An uploaded object or copied object has a unique ETag after being encrypted using MD5.
Parent: ListVersionsResult.Version
Restrictions:
None
-Value range:
+Value range:
The value must contain 32 characters.
Default value:
None
@@ -784,7 +784,7 @@ Authorization: authorization
Explanation:
Name of the object owner
Parent: ListVersionsResult.Version.Owner | ListVersionsResult.DeleteMarker.Owner
-Restrictions:
+Restrictions:
None
Value range:
None
@@ -827,7 +827,7 @@ Authorization: authorization
String
Explanation:
-Indicates a different prefix in the group information in CommonPrefixes.
+Indicates a different prefix in the group information in CommonPrefixes.
Parent: ListVersionsResult.CommonPrefixes
Restrictions:
The prefix you specified must already exist in the bucket.
diff --git a/docs/obs/api-ref/obs_04_0023.html b/docs/obs/api-ref/obs_04_0023.html
index ef2691a72..45db95323 100644
--- a/docs/obs/api-ref/obs_04_0023.html
+++ b/docs/obs/api-ref/obs_04_0023.html
@@ -133,10 +133,10 @@ Date: date
Explanation:
Whether it is a parallel file system
-Restrictions:
+Restrictions:
If this header field is not carried, the bucket is not a parallel file system.
Value range:
-The value can be Enabled (parallel file system).
+The value can be Enabled (parallel file system).
Default value:
None
@@ -174,7 +174,7 @@ Date: date
Integer
Explanation:
-Value of MaxAgeSeconds in the CORS configuration of the server when CORS is configured for buckets.
+Value of MaxAgeSeconds in the CORS configuration of the server when CORS is configured for buckets.
Restrictions:
None
Value range:
@@ -188,7 +188,7 @@ Date: date
String
Explanation:
-Indicates that methods in the rule are included in the response if Access-Control-Request-Method in the request meets the CORS configuration requirements when CORS is configured for buckets.
+Indicates that methods in the rule are included in the response if Access-Control-Request-Method in the request meets the CORS configuration requirements when CORS is configured for buckets.
Restrictions:
None
Value range:
@@ -201,13 +201,13 @@ Date: date
String
-Explanation:
+Explanation:
ExposeHeader in the CORS rules of the bucket. It specifies additional headers allowed in the response by a CORS rule, which are used to provide extra information to clients. By default, a browser can access only headers Content-Length and Content-Type. If the browser needs to access other headers, you need to configure them in this parameter.
Restrictions:
Spaces, wildcard characters (*), ampersands (&), colons (:), less-than signs (<), and full-width characters are not allowed.
Value range:
None
-Default value:
+Default value:
None
diff --git a/docs/obs/api-ref/obs_04_0027.html b/docs/obs/api-ref/obs_04_0027.html
index 3f6d1dc8e..f3176a93a 100644
--- a/docs/obs/api-ref/obs_04_0027.html
+++ b/docs/obs/api-ref/obs_04_0027.html
@@ -297,6 +297,69 @@ Server: OBS
+Sample Request 5
Granting permissions to a specified agency
+The tenant whose account ID is 783fc6652cf246c096ea836694f71855 has an agency named exampleAgency. This example grants the agency the permission to view logs of the logging.bucket bucket.
+
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
PUT /?policy HTTP/1.1
+Host: examplebucket.obs.region.example.com
+Date: WED, 01 Jul 2015 02:32:25 GMT
+Authorization: OBS H4IPJX0TQTHTHEBQQCEC:jZiAT8Vx4azWEvPRMWi0X5BpJMA=
+
+{
+ "Statement": [
+ {
+ "Sid": "Stmt1375240018061",
+ "Action": [
+ "GetBucketLogging"
+ ],
+ "Effect": "Allow",
+ "Resource": "logging.bucket",
+ "Principal": {
+ "ID": [
+ "domain/783fc6652cf246c096ea836694f71855:agency/exampleAgency"
+ ]
+ }
+ }
+ ]
+}
+
+
+
+Sample Response 5
1
+2
+3
+4
+5
+6
HTTP/1.1 204 No Content
+x-obs-request-id: A603000001604A7DFE4A4AF31E301891
+x-obs-id-2: BKOvGmTlt6sda5X4G89PuMO4fabObGYmnpRGkaMba1LqPt0fCACEuCMllAObRK1n
+Date: WED, 01 Jul 2015 02:34:34 GMT
+Content-Length: 0
+Server: OBS
+
+
+
diff --git a/docs/obs/api-ref/obs_04_0030.html b/docs/obs/api-ref/obs_04_0030.html
index 3d740e289..5f7a01959 100644
--- a/docs/obs/api-ref/obs_04_0030.html
+++ b/docs/obs/api-ref/obs_04_0030.html
@@ -118,12 +118,12 @@ Content-Length: length
Yes
Explanation:
-Tenant ID of the grantee.
+Account ID of the authorized user.
Restrictions:
None
-Value range:
+Value range:
None
-Default value:
+Default value:
None
@@ -135,11 +135,11 @@ Content-Length: length
Explanation:
Container for the grantee and the granted permissions
-Restrictions:
+Restrictions:
A single bucket can contain at most 100 grants in its ACL.
-Value range:
+Value range:
None
-Default value:
+Default value:
None
@@ -153,9 +153,9 @@ Content-Length: length
Grantee information
Restrictions:
None
-Value range:
+Value range:
None
-Default value:
+Default value:
None
@@ -214,7 +214,7 @@ Content-Length: length
Yes
Explanation:
-Indicates an ACL, which consists of three elements: Grant, Grantee, and Permission.
+Indicates an ACL, which consists of three elements: Grant, Grantee, and Permission.
Restrictions:
None
Value range:
diff --git a/docs/obs/api-ref/obs_04_0032.html b/docs/obs/api-ref/obs_04_0032.html
index bb1f06726..fa4196230 100644
--- a/docs/obs/api-ref/obs_04_0032.html
+++ b/docs/obs/api-ref/obs_04_0032.html
@@ -1,7 +1,7 @@
Configuring Logging for a Bucket
-Functions
When a bucket is created, the logging function is not enabled by default. To generate logs recording operations on buckets, you need to enable the logging function for the bucket. After the logging function is enabled, a log is generated for each operation on a bucket and multiple logs are packed into a log file. When enabling the logging function, you need to specify a location where log files are stored. They can be stored in the bucket for which the logging is enabled, or in other buckets that you have the required permissions. However, the bucket where log files are stored and the bucket for which the logging is enabled must be in the same region.
+Functions
When a bucket is created, the logging function is not enabled by default. To generate logs recording operations on buckets, you need to enable the logging function for the bucket. After the logging function is enabled, a log is generated for each operation on a bucket and multiple logs are packed into a log file. The target bucket for storing log files must be specified when logging is enabled. It can be the bucket logging is enabled for, or any other bucket you have access to. If you specify another bucket for storing logs, the bucket must be in the same region as the logged bucket.
Log files are generated by OBS and uploaded to the bucket where logs are stored. Therefore, OBS needs to be authorized to upload generated log files. Before configuring the logging function, you need to create an agency for OBS in IAM, the agency name is configured as a parameter of the bucket, and the logging function must be configured under the LoggingEnabled tag in the XML file. You only need to authorize the agency with the upload permissions for the target bucket.
Example of agency permissions
{
@@ -167,7 +167,7 @@ Authorization: signatureValue
- <TargetPrefix> is the log name prefix specified by the user.
- YYYY-mm-DD-HH-MM-SS indicates the date and time when the log is generated.
- <UniqueString> indicates a character string generated by OBS.
-The following is an example of a log file name:
+The following is an example of a log object name:
1bucket-log2015-06-29-12-22-07-N7MXLAF1BDG7MPDV
diff --git a/docs/obs/api-ref/obs_04_0034.html b/docs/obs/api-ref/obs_04_0034.html
index 0db6e27da..e8bdf0fad 100644
--- a/docs/obs/api-ref/obs_04_0034.html
+++ b/docs/obs/api-ref/obs_04_0034.html
@@ -2,7 +2,7 @@
Configuring Bucket Lifecycle Rules
Functions
This operation configures lifecycle rules that can delete or migrate objects from a bucket at a specified time. Typical application scenarios:
-- Delete periodically uploaded files. Some files uploaded periodically need only to be retained for only one week or one month.
- Delete files that are frequently accessed within a certain period of time but are seldom accessed afterward. You can archive these files and then schedule the time for deletion.
- The minimum time for the transition of the bucket storage to Warm or Cold can be configured. The value ranges from 24 to 8640.
+- Delete periodically uploaded files. Some files uploaded periodically need only to be retained for only one week or one month.
- Delete files that are frequently accessed within a certain period of time but are seldom accessed afterward. You can archive these files and then schedule the time for deletion.
You can perform this operation to create or update the lifecycle configuration of a bucket.
- Expired objects deleted based on a lifecycle rule cannot be recovered.
@@ -49,7 +49,14 @@
36
37
38
-39PUT /?lifecycle HTTP/1.1
+39
+40
+41
+42
+43
+44
+45
+46
PUT /?lifecycle HTTP/1.1
Host: bucketname.obs.region.example.com
Content-Length: length
Date: date
@@ -59,6 +66,13 @@ Content-MD5: MD5
<LifecycleConfiguration>
<Rule>
<ID>id</ID>
+ <Filter>
+ <And>
+ <Prefix>prefix</Prefix>
+ <Tag><Key>key1</Key><Value>value1</Value></Tag>
+ <Tag><Key>key2</Key><Value>value2</Value></Tag>
+ </And>
+ </Filter>
<Prefix>prefix</Prefix>
<Status>status</Status>
<Expiration>
@@ -117,7 +131,7 @@ Content-MD5: MD5
Request Elements
In this request body, you need to specify the lifecycle configuration in XML format. Table 2 describes the specific configuration elements.
-- If the versioning of a bucket is enabled or suspended, you can set NoncurrentVersionTransition or NoncurrentVersionExpiration to control the lifecycle of historical object versions. The lifecycle of a historical version depends on the time when it becomes a historical one (time when the version is replaced by a new version) and the value of NoncurrentDays. If NoncurrentDays is set to 1 in an object deletion scenario, an object version will be deleted one day after it becomes historical. If the version V1 of object A is created on the first date of a month and new version V2 is uploaded on the fifth date of the month, V1 becomes a historical version. At 00:00 on the seventh date of the month, V1 will expire. If an object version does not meet the deletion conditions, but NoncurrentDays is set to 1 and StorageClass is set to WARM, the version transitions to the Warm storage class one day after it has become a historical version. For example, the V1 version of object A is created on the first day of a month, and its new version V2 is uploaded on the fifth day of the month. Then V1 becomes a historical version. One day later, that is, at 0 o'clock of the seventh day, V1 transitions to the Warm storage class. The deletion or transition of the object after the expiration time may be delayed. The delay is within 48 hours.
- Objects are processed according to the following procedures, if their latest versions meet the expiration rule and versioning is enabled or suspended for the bucket.
- Versioning enabled:
If the latest object version is not a delete marker, a new delete marker will be inserted for the object.
+- If the versioning of a bucket is enabled or suspended, you can set NoncurrentVersionTransition or NoncurrentVersionExpiration to control the lifecycle of historical object versions. The lifecycle of a historical version depends on the time when it becomes a historical one (time when the version is replaced by a new version) and the value of NoncurrentDays. If NoncurrentDays is set to 1 in an object deletion scenario, an object version will be deleted one day after it becomes historical. If the version V1 of object A is created on the first date of a month and new version V2 is uploaded on the fifth date of the month, V1 becomes a historical version. At 00:00 on the seventh date of the month, V1 will expire. If an object version does not meet the deletion conditions, but NoncurrentDays is set to 1 and StorageClass is set to WARM, the version transitions to the Warm storage class one day after it has become a historical version. For example, the V1 version of object A is created on the first day of a month, and its new version V2 is uploaded on the fifth day of the month. Then V1 becomes a historical version. One day later, that is, at 0 o'clock of the seventh day, V1 transitions to the Warm storage class. The deletion or transition of the object after the expiration time may be delayed. The delay is within 48 hours.
- Objects are processed according to the following procedures, if their latest versions meet the expiration rule and versioning is enabled or suspended for the bucket.
- Versioning enabled:
If the latest object version is not a delete marker, a new delete marker will be inserted for the object.
If the latest object version is a delete marker and is the only version of the object, this latest version will be deleted.
If the object of the latest version has the DeleteMarker and the object has other versions, all versions of the object remain unchanged.
- Versioning suspended:
If the latest version of the object does not have the DeleteMarker and is not the null version, the object generates a new DeleteMarker for the null version.
@@ -142,7 +156,7 @@ Content-MD5: MD5
Type: string
Parent: Expiration, Transition
-Required if the Days element is absent.
+Yes if the Days element is absent.
Days
@@ -151,7 +165,7 @@ Content-MD5: MD5
Type: integer
Parent: Expiration, Transition
-Required if the Date element is absent.
+Yes if the Date element is absent.
StorageClass
@@ -161,7 +175,7 @@ Content-MD5: MD5
Value options: WARM, COLD
Parent: Transition, NoncurrentVersionTransition
-Required if the Transition or NoncurrentVersionTransition element is present.
+Yes if the Transition or NoncurrentVersionTransition element is present.
Transition
@@ -171,7 +185,7 @@ Content-MD5: MD5
Child: Date or Days, StorageClass
Parent: Rule
-Required if the NoncurrentVersionTransition, Expiration, AbortIncompleteMultipartUpload, or NoncurrentVersionExpiration element is absent.
+Yes if the NoncurrentVersionTransition, Expiration, AbortIncompleteMultipartUpload, and NoncurrentVersionExpiration elements are absent.
Expiration
@@ -181,7 +195,7 @@ Content-MD5: MD5
Child: Date or Days
Parent: Rule
-Required if Transition, NoncurrentVersionTransition, AbortIncompleteMultipartUpload, or NoncurrentVersionExpiration is absent.
+Yes if Transition, NoncurrentVersionTransition, AbortIncompleteMultipartUpload, and NoncurrentVersionExpiration are absent.
ID
@@ -209,7 +223,7 @@ Content-MD5: MD5
Type: integer
Parent: NoncurrentVersionExpiration, NoncurrentVersionTransition
-Required if the NoncurrentVersionExpiration or NoncurrentVersionTransition element is present.
+Yes if the NoncurrentVersionExpiration or NoncurrentVersionTransition element is present.
NoncurrentVersionTransition
@@ -219,7 +233,7 @@ Content-MD5: MD5
Child: NoncurrentDays, StorageClass
Parent: Rule
-Required if the Transition, Expiration, AbortIncompleteMultipartUpload, or NoncurrentVersionExpiration element is absent.
+Yes if the Transition, Expiration, AbortIncompleteMultipartUpload, and NoncurrentVersionExpiration elements are absent.
NoncurrentVersionExpiration
@@ -241,7 +255,7 @@ Content-MD5: MD5
NOTE: AbortIncompleteMultipartUpload does not support filtering by tag.
-Required if the Transition, Expiration, NoncurrentVersionExpiration, or NoncurrentVersionTransition element is absent.
+Yes if the Transition, Expiration, NoncurrentVersionExpiration, and NoncurrentVersionTransition elements are absent.
DaysAfterInitiation
@@ -250,7 +264,64 @@ Content-MD5: MD5
Type: integer
Parent: AbortIncompleteMultipartUpload
-Required if the AbortIncompleteMultipartUpload element is present.
+Yes if the AbortIncompleteMultipartUpload element is present.
+
+
+Filter
+
+A specific filter. The lifecycle rule will apply to the objects matching this filter in a bucket.
+You can filter objects by object key prefix, object tag, or both. If there are multiple filters in a rule, use the And logic to combine them.
+Type: XML
+Parent: Rule
+
+Either Filter or Prefix can be configured at the same level under Rule.
+Prefix can be a child node of Filter.
+
+
+
+And
+
+The And logic among filtering criteria.
+The And logic can be used when both the object name prefix and object tag are used or multiple object tags are used.
+Type: XML
+Parent: Filter
+Constraints:
+- And must have child nodes.
- If Filter has Tag or Prefix as its child node, And cannot be a child node at the same level as the Tag or Prefix child node under Filter. (Tag and Prefix can be included in And.)
+
+Yes if there are multiple Prefix and Tag rules.
+
+
+Tag
+
+Specifies which objects can match the current Rule.
+Type: container
+Parent: Filter or And
+Constraints:
+- If Tag is configured as a child node of Filter, there can be only one Tag node. If Filter has a Prefix child node, there cannot be any Tag node at the same level with Prefix under Filter.
- If Tag is configured under And, there can be a maximum of 10 Tag nodes, and the tag key values must be different.
- If AbortIncompleteMultipartUpload exists as a child node of Rule, Tag cannot be configured to filter fragments.
- If the tags in multiple rules overlap and lifecycle actions conflict, the configuration is not allowed. For example, rule 1 uses one tag (key1, value1) and deletes objects 90 days after creation, while rule 2 uses two tags (key1, value1; key2, value2) and transitions objects to COLD 120 days after creation. In this case, the tags in two rules overlap and lifecycle actions conflict, so such configuration is not allowed.
+
+No
+
+
+Key
+
+The key of the tag.
+Type: string
+Parent: Tag
+Constraints:
+A tag key is case sensitive and must be unique. It cannot be left blank or exceed 128 characters. The following characters are not allowed: =*<>\,|/?!;
+
+Yes if Tag is present.
+
+
+Value
+
+The value of the tag.
+Type: string
+Parent: Tag
+Constraints:
+A tag value is case sensitive and can be left blank. It cannot exceed 255 characters. The following characters are not allowed: =*<>\,|?!;
+
+Yes if Tag is present.
Prefix
@@ -342,7 +413,10 @@ Content-Length: length
39
40
41
-42PUT /?lifecycle HTTP/1.1
+42
+43
+44
+45
PUT /?lifecycle HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.example.com
Accept: */*
@@ -354,8 +428,14 @@ Content-Length: 919
<?xml version="1.0" encoding="utf-8"?>
<LifecycleConfiguration>
<Rule>
- <ID>delete-2-days</ID>
- <Prefix>test/</Prefix>
+ <ID>lifecycle-rule-id</ID>
+ <Filter>
+ <And>
+ <Prefix>prefix</Prefix>
+ <Tag><Key>key1</Key><Value>value1</Value></Tag>
+ <Tag><Key>key2</Key><Value>value2</Value></Tag>
+ </And>
+ </Filter>
<Status>Enabled</Status>
<Expiration>
<Days>70</Days>
@@ -379,9 +459,6 @@ Content-Length: 919
<NoncurrentDays>60</NoncurrentDays>
<StorageClass>COLD</StorageClass>
</NoncurrentVersionTransition>
- <AbortIncompleteMultipartUpload>
- <DaysAfterInitiation>10</DaysAfterInitiation>
- </AbortIncompleteMultipartUpload>
</Rule>
</LifecycleConfiguration>
@@ -401,6 +478,32 @@ Content-Length: 0
+Sample Request: Deleting Fragments
PUT /?lifecycle HTTP/1.1
+Authorization: OBS H4IPJX0TQTHTHEBQQCEC:iqSPeUBl66PwXDApxjRKk6hlcN4=
+User-Agent: curl/7.29.0
+Host: examplebucket.obs.region.example.com
+Date: Thu, 24 Apr 2025 14:28:22 GMT
+Content-Type: application/xml
+Content-MD5: PBgGafte2ACjUwYxdJA47Q==
+
+<LifecycleConfiguration>
+ <Rule>
+ <ID>lifecycle-rule-id</ID>
+ <Prefix>test/</Prefix>
+ <Status>Enabled</Status>
+ <AbortIncompleteMultipartUpload>
+ <DaysAfterInitiation>10</DaysAfterInitiation>
+ </AbortIncompleteMultipartUpload>
+ </Rule>
+</LifecycleConfiguration>
+
+Sample Response: Deleting Fragments
HTTP/1.1 200 OK
+x-obs-id-2: 32AAAQAAEAABSAAgAAEAABAAAQAAEAABCTlN+glNMVGtTicAnVXkTVDjR5xKSLuH
+x-obs-request-id: 0000018A2BE86742D2C6989CA79E136C
+Server: OBS
+Content-Length: 0
+Date: Thu, 24 Apr 2025 14:28:23 GMT
+
HTTP/1.1 status_code +39 +40 +41 +42 +43 +44 +45 +46
HTTP/1.1 status_code Date: date Content-Type: application/xml Date: date @@ -68,6 +75,13 @@ Content-Length: length <LifecycleConfiguration xmlns="http://obs.region.example.com/doc/2015-06-30/"> <Rule> <ID>id</ID> + <Filter> + <And> + <Prefix>prefix</Prefix> + <Tag><Key>key1</Key><Value>value1</Value></Tag> + <Tag><Key>key2</Key><Value>value2</Value></Tag> + </And> + </Filter> <Prefix>prefix</Prefix> <Status>status</Status> <Expiration> @@ -201,6 +215,43 @@ Content-Length: lengthParent: AbortIncompleteMultipartUpload
Filter
+A specific filter. The lifecycle rule will apply to the objects matching this filter in a bucket.
+You can filter objects by object key prefix, object tag, or both. If there are multiple filters in a rule, use the And logic to combine them.
+Type: XML
+Parent: Rule
+And
+The And logic among filtering criteria.
+The And logic can be used when both the object name prefix and object tag are used.
+Type: XML
+Parent: Filter
+Tag
+The Tag element.
+Type: container
+Parent: Filter or And
+Key
+The key of the tag.
+Type: string
+Parent: Tag
+Value
+The value of the tag.
+Type: string
+Parent: Tag
+Prefix
Object name prefix identifying one or more objects to which the rule applies.
@@ -314,6 +365,9 @@ Content-Length: 919 <LifecycleConfiguration> <Rule> <ID>delete-2-days</ID> + <Filter> + <Prefix>test/</Prefix> + </Filter> <Status>Enabled</Status> <Expiration> <Days>2</Days> @@ -337,9 +391,6 @@ Content-Length: 919 <NoncurrentDays>60</NoncurrentDays> <StorageClass>COLD</StorageClass> </NoncurrentVersionTransition> - <AbortIncompleteMultipartUpload> - <DaysAfterInitiation>10</DaysAfterInitiation> - </AbortIncompleteMultipartUpload> </Rule> </LifecycleConfiguration>Content-MD5
Base64-encoded 128-bit MD5 digest of the message calculated based on RFC 1864. For details about how to calculate the value of Content-MD5, see Content-MD5 Algorithm in Java.
+Base64-encoded 128-bit MD5 value of the request body calculated according to RFC 1864. For details about how to calculate Content-MD5, see Content-MD5 Algorithm in Java.
Yes
Content-MD5
Base64-encoded 128-bit MD5 digest of the message according to RFC 1864.
+Explanation:
+Base64-encoded 128-bit MD5 digest of the message according to RFC 1864.
Type: string
Example: n58IG6hfM7vqI4K0vnWpog==
+Restrictions:
+None
+Value range:
+None
+Default value:
+None
Yes
Tagging
Root element for TagSet and Tag
+Explanation:
+Root element for TagSet and Tag
Type: container
Parent: none
TagSet
Element of the tag set
+Explanation:
+Element of the tag set
Type: container
Parent: Tagging
Tag
Information element of Tag
+Explanation:
+Information element of Tag
Type: container
Parent: TagSet
Explanation:
Name of a tag. Type: string. Parent: Tag.
Restrictions:
-Value range:
-A string between 0 and 36 characters long.
+A string between 1 and 36 characters long.
Default value:
None
Explanation:
Tag value. Type: string. Parent: Tag.
Restrictions:
-Value range:
-A string of 0 to 42 characters.
+A string of 0 (included) to 43 (excluded) characters.
Default value:
None
OBS uses the PUT method to configure a custom domain name for a bucket. After the configuration is successful, you can access the bucket through the domain name.
+To perform this operation, the user must be the bucket owner or the bucket owner's IAM user that has permissions required for configuring custom domain names.
Ensure that the custom domain name can correctly resolve to the OBS service through DNS.
1 @@ -20,24 +21,29 @@ Content-Length: 0 |
Parameter +
|
|---|