Creating an Agency

Function

This API is provided for the administrator to create an agency.

The API can be called using both the global endpoint and region-specific endpoints. For IAM endpoints, see Regions and Endpoints.

URI

POST /v3.0/OS-AGENCY/agencies

Request Parameters

Table 1 Parameters in the request header

Parameter

Mandatory

Type

Description

Content-Type

Yes

String

Fill application/json;charset=utf8 in this field.

X-Auth-Token

Yes

String

Token with Security Administrator permissions.

Table 2 Parameters in the request body

Parameter

Mandatory

Type

Description

agency

Yes

object

Agency information.

Table 3 agency

Parameter

Mandatory

Type

Description

name

Yes

String

Agency name, which must contain less than or equal to 64 characters.

domain_id

Yes

String

ID of the delegating account.

trust_domain_id

No

String

ID of the delegated account. Either trust_domain_id or trust_domain_name must be specified. If both of them are specified, trust_domain_name takes precedence.

trust_domain_name

No

String

Name of the delegated account. Either trust_domain_id or trust_domain_name must be specified. If both of them are specified, trust_domain_name takes precedence.

description

No

String

Description of the agency, which must contain less than or equal to 255 characters.

duration

No

String

Validity period of the agency. Unit: day.

Options:

  • FOREVER: The agency has unlimited validity.
  • ONEDAY: The agency is valid for one day.
  • Specific days: The agency has limited validity, for example, 20 days.

Response Parameters

Table 4 Parameters in the response body

Parameter

Type

Description

agency

object

Agency information.

Table 5 agency

Parameter

Type

Description

create_time

String

Time when the agency was created.

description

String

Description of the agency.

domain_id

String

ID of the delegating account.

duration

String

Validity period of the agency. Unit: hour.

  • FOREVER/null: The agency has unlimited validity.
  • 24: The agency is valid for 24 hours.
  • XXX: The agency has limited validity, for example, 480 hours.

expire_time

String

Expiration time of the agency. null indicates that the agency has unlimited validity.

id

String

Agency ID.

name

String

Agency name.

trust_domain_id

String

ID of the delegated account.

trust_domain_name

String

Name of the delegated account.

Example Request

POST https://iam.myhuaweicloud.com/v3.0/OS-AGENCY/agencies
{
    "agency": {
        "name": "IAMAgency",
        "domain_id": "d78cbac186b744899480f25bd...",
        "trust_domain_id": "c2cd82a33fb043dc9304bf72a...",
        "trust_domain_name": "IAMDomainB",
        "duration": "FOREVER",
        "description": "IAMDescription"
    }
}

Example Response

Status code: 201

The agency is created successfully.

{
    "agency": {
        "description": "IAMDescription",
        "trust_domain_id": "a2cd82a33fb043dc9304bf72a0f...",
        "id": "078ade0fc20010004f8fc0034fad529d",
        "duration": "FOREVER",
        "create_time": "2020-01-20T12:59:20.811642",
        "expire_time": null,
        "domain_id": "d78cbac186b744899480f25bd02...",
        "name": "IAMAgency"
    }
}

Status Codes

Status Code

Description

201

The agency is created successfully.

400

Invalid parameters.

401

Authentication failed.

403

Access denied.

404

The requested resource cannot be found.

409

A resource conflict occurs.

500

Internal server error.

Error Codes

None