Changing Project Owner Account
In order to transfer a project from one account to another, the following mutation is called:
mutation changeProjectOwner(params: ChangeProjectOwnerInput!): ChangeProjectOwnerUnion!
input ChangeProjectOwnerInput {
tenantId: ID # Ignored when called by a tenant admin, only useful when called by
# an application admin
projectId: ID!
newAccountId: ID!
newProjectOwnerId: ID # If not specified, the system will select an admin from the target
# account;
# if there's more than one admin, the one with the most recent lastLoginTime will be selected
}
union ChangeProjectOwnerUnion = ProjectOutput
| AcsErrorOperationNotAllowedOutput
| AcsErrorProjectNotFoundOutput
| AcsErrorUserNotFoundOutput
| AcsErrorTenantNotFoundOutput
| AcsErrorSeatLimitReachedOutput
| AcsErrorStorageLimitReachedOutput
This mutation can be called by either application admin or a user with the tenant capability of CAN_CHANGE_PROJECT_OWNER (this capability is connected to the TENANT_ADMIN role).
As a result of this mutation:
- all existing users of the project are removed
- the (tenant) admin that performs the call will be added as viewer
- the user indicated in the call becomes the new owner
- the account indicated in the call will own the project, and the consumption of that project will be added to the usage count of the targeting account