Updated on 2026-05-26 GMT+08:00

Obtaining Bucket Location

Function

This API is used to obtain the region information about a specified bucket.

You are advised to use the API in Obtaining Bucket Metadata to obtain the bucket location.

Authorization

To call this API, you must be the bucket owner or have the permission to obtain the bucket location. You are advised to use IAM or bucket policies for authorization. For details about OBS authorization methods, see Differences Between OBS Permissions Control Methods.

  • If you use IAM for authorization, you need to use either role/policy-based authorization or identity policy-based authorization and configure the required permissions:
    • If you use role/policy-based authorization (IAM v3 APIs in the old IAM version), you must have the obs:bucket:GetBucketLocation permission. For details, see Creating a Custom IAM Policy.
    • If you use identity policy-based authorization (IAM v5 APIs in the new IAM version), you must have the obs:bucket:getBucketLocation permission, as shown in the following table. For details, see Creating a Custom IAM Identity Policy.

      Action

      Access Level

      Resource Type (*: Required)

      Condition Key

      Alias

      Dependencies

      obs:bucket:getBucketLocation

      Read

      bucket *

      -

      -

      -

      • obs:EpochTime
      • obs:SourceIp
      • obs:TlsVersion
      • obs:CustomDomain
  • If you use bucket policies for authorization, you must have the obs:bucket:GetBucketLocation permission. For details, see Creating a Custom Bucket Policy.

URI

GET /

Calling Method

For details, see Calling APIs. Before calling this API, calculate the API signature and add it to the request.

You can debug this API in API Explorer.

Request Syntax

The following is an example request. Replace BucketName in the example with your bucket name and replace RegionID with a region ID in Supported Regions. This does not affect the bucket location returned in the response.

GET /?location HTTP/1.1 
Host: BucketName.obs.RegionID.myhuaweicloud.com 
Date: GMT Date
Authorization: SignatureValue

URI Parameters

Table 1 URI parameters

Parameter

Mandatory

Type

Description

/?location

Yes

String

Definition

An identifier that indicates this API is used to query the region of a bucket.

Constraints

When calculating the signature, add /BucketName/?location to CanonicalizedResource. For details, see Using an Authorization Header.

Range

/?location

Default Value

N/A

Request Headers

This request uses common headers. For details, see Table 3.

Request Body

This request contains no request body parameters.

Response Syntax

The Location parameter in the response body contains the bucket location information.

1
2
3
4
5
6
7
HTTP/1.1 status_code
Date: date
Content-Type: type
Content-Length: length

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<Location xmlns="http://obs.region.myhuaweicloud.com/doc/2015-06-30/">region</Location>

Status Codes

For details about the status code, see Status Codes.

Response Headers

This response uses common headers. For details, see Table 1.

Response Body

This response contains elements of information about a bucket's region. Table 2 describes the elements.

Table 2 Response body parameters

Element

Description

Location

Indicates the region where the bucket resides.

Type: string

Sample Request

1
2
3
4
5
6
GET /?location HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.myhuaweicloud.com
Accept: */*
Date: WED, 01 Jul 2015 02:30:25 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:1DrmbCV+lhz3zV7uywlj7lrh0MY=

Sample Response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: BF260000016435D9F27CB2758E9B41A5
x-obs-id-2: 32AAAQAAEAABAAAQAAEAABAAAQAAEAABCSKWoJmaMyRXqofHgapbETDyI2LM9rUw
Content-Type: application/xml
Date: WED, 01 Jul 2015 02:30:25 GMT
Content-Length: 128

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Location xmlns="http://obs.region.myhuaweicloud.com/doc/2015-06-30/">region</Location>

Using SDKs to Call APIs

You are advised to use OBS SDKs to call APIs. SDKs encapsulate APIs to simplify development. You can call SDK API functions to access OBS without manually calculating signatures.

Java

Python

PHP

iOS

Go

BrowserJS

.NET

Android

Harmony: not supported

Node.js

Error Codes

No special errors. You can find all errors in Table 2.

Helpful Links

For details about the billing items involved in API operations, see Billing Items.