Help Center/ Organizations/ API Reference/ APIs/ Managing Invitations/ Inviting an Account to Join an Organization
Updated on 2026-07-29 GMT+08:00

Inviting an Account to Join an Organization

Function

This API is used to send an invitation to another account. The invited account will join your organization as a member account. This API can be called only from the organization's management account.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

Authorization Information

Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.

  • If you are using role/policy-based authorization, see Permissions Policies and Supported Actions for details on the required permissions.
  • If you are using identity policy-based authorization, the following identity policy-based permissions are required.

    Action

    Access Level

    Resource Type (*: required)

    Condition Key

    Alias

    Dependencies

    organizations:accounts:invite

    Write

    -

    • g:RequestTag/<tag-key>

    • g:TagKeys

    -

    organizations:resources:tag

URI

POST /v1/organizations/accounts/invite

Request Parameters

Table 1 Request header parameters

Parameter

Mandatory

Type

Description

X-Security-Token

No

String

Definition

Security token (session token) of your temporary security credentials. If a temporary security credential is used, this header is required.

Constraints

N/A

Range

The value contains 0 to 32,768 characters.

Default Value

No default value

Table 2 Request body parameters

Parameter

Mandatory

Type

Description

target

Yes

TargetDto object

Definition

Details about the account to be invited to join an organization.

Constraints

Mandatory

Range

N/A

Default Value

No default value

notes

Yes

String

Definition

Additional information that you want to include in the email to the recipient account owner.

Constraints

Mandatory

Range

The value must comply with the regular expression ^[\s\S]*$.

The value contains a maximum of 1,024 characters.

Default Value

No default value

tags

No

Array of TagDto objects

Definition

List of tags you want to attach to the new account.

Constraints

N/A

Range

0 to 200 tags

Default Value

No default value

Table 3 TargetDto

Parameter

Mandatory

Type

Description

type

Yes

String

Definition

Target type. It can be account (account ID) or name (account name).

Constraints

Mandatory

Range

The value contains 1 to 64 characters.

Default Value

No default value

entity

Yes

String

Definition

If you set type to account, you must provide the account ID. If you set type to name, you must specify the account name.

Constraints

Mandatory

Range

The value contains 1 to 100 characters.

Default Value

No default value

Table 4 TagDto

Parameter

Mandatory

Type

Description

key

Yes

String

Definition

Identifier or name of the tag key.

Constraints

Mandatory

Range

The value must comply with the regular expression ^((?!sys|\s)[\p{L}\p{Z}\p{N}.:=+-@]*[\p{L}\p{N}.:=+-@])$.

The value contains 1 to 128 characters.

Default Value

None

value

Yes

String

Definition

String value associated with the tag key. You can set the tag value to an empty string, but cannot set it to NULL.

Constraints

Mandatory

Range

The value must comply with the regular expression ^([\p{L}\p{Z}\p{N}_.:/=+-@]*)$.

The value contains 0 to 255 characters.

Default Value

None

Response Parameters

Status code: 200

Table 5 Response body parameters

Parameter

Type

Description

handshake

HandshakeDto object

Definition

Invitation (handshake) details.

Constraints

Mandatory

Range

N/A

Default Value

No default value

Table 6 HandshakeDto

Parameter

Type

Description

id

String

Definition

Unique ID of an invitation (handshake). The originating account creates the ID when initiating the invitation (handshake).

Constraints

Mandatory

Range

The value must comply with the regular expression ^h-[0-9a-z]{8,32}$.

The value contains a maximum of 34 characters.

Default Value

No default value

urn

String

Definition

Uniform resource name of an invitation (handshake).

Constraints

Mandatory

Range

The value contains 1 to 1,500 characters.

Default Value

No default value

updated_at

String

Definition

Date and time when an invitation (handshake) request was accepted, canceled, declined, or expired.

Constraints

Mandatory

Range

The value must be in ISO 8601 format.

Default Value

No default value

created_at

String

Definition

Date and time when an invitation (handshake) request was made.

Constraints

Mandatory

Range

The value must be in ISO 8601 format.

Default Value

No default value

expired_at

String

Definition

Date and time when the invitation (handshake) expired.

Constraints

Mandatory

Range

The value must be in ISO 8601 format.

Default Value

No default value

management_account_id

String

Definition

Unique ID of the organization's management account.

Constraints

Mandatory

Range

The value must comply with the regular expression ^[\w-]+$.

The value contains a maximum of 64 characters.

Default Value

No default value

management_account_name

String

Definition

Name of the organization's management account.

Constraints

Mandatory

Range

The value must comply with the regular expression ^[\u4e00-\u9fa5a-zA-Z0-9_- ]+$.

The value contains a maximum of 64 characters.

Default Value

No default value

organization_id

String

Definition

Unique ID of an organization.

Constraints

Mandatory

Range

The value must comply with the regular expression ^o-[0-9a-z]{10,32}$.

The value contains a maximum of 34 characters.

Default Value

No default value

notes

String

Definition

Additional information that you want to include in the email to the recipient account owner.

Constraints

Mandatory

Range

The value must comply with the regular expression ^[\s\S]*$.

The value contains a maximum of 1,024 characters.

Default Value

No default value

target

TargetDto object

Definition

Information about the account to be invited to join an organization.

Constraints

Mandatory

Range

N/A

Default Value

No default value

status

String

Definition

Current state of the invitation (handshake). The value can be pending, accepted, cancelled, declined, or expired.

Constraints

Mandatory

Range

The value contains 1 to 64 characters.

Default Value

No default value

Table 7 TargetDto

Parameter

Type

Description

type

String

Definition

Target type. It can be account (account ID) or name (account name).

Constraints

Mandatory

Range

The value contains 1 to 64 characters.

Default Value

No default value

entity

String

Definition

If you set type to account, you must provide the account ID. If you set type to name, you must specify the account name.

Constraints

Mandatory

Range

The value contains 1 to 100 characters.

Default Value

No default value

Example Requests

Inviting an account to join an organization

POST https://{endpoint}/v1/organizations/accounts/invite

{
  "target" : {
    "type" : "account",
    "entity" : "05c734152f00d4200f2bc0179ac6c5e0"
  },
  "notes" : "test-notes",
  "tags" : [ {
    "key" : "keystring",
    "value" : "valuestring"
  } ]
}

Example Responses

Status code: 200

Successful.

{
  "handshake" : {
    "id" : "h-awjp43m7bz3b8jgy5v61jrfwakt3og8w",
    "urn" : "organizations::0a6d25d23900d45c0faac010e0fb4de0:policy:o-fhkmi6mek7wlqdp6nideqhb47qwtjdsv/service_control_policy/p-b4wpejd02o66g0pvfinvsatp4t9krfum",
    "updated_at" : "2022-08-25T08:11:53Z",
    "created_at" : "2022-08-25T08:11:20Z",
    "expired_at" : "2022-09-08T08:11:20Z",
    "management_account_id" : "0a6d25d23900d45c0faac010e0fb4de0",
    "management_account_name" : "paas_iam_573331",
    "organization_id" : "o-fhkmi6mek7wlqdp6nideqhb47qwtjdsv",
    "notes" : "test-notes",
    "target" : {
      "type" : "account",
      "entity" : "05c734152f00d4200f2bc0179ac6c5e0"
    },
    "status" : "pending"
  }
}

Status Codes

Status Code

Description

200

Successful.

Error Codes

See Error Codes.