Resource Accounts
ResourceAccountsService manages resource account principals and their delegates. A resource account is a resource mailbox (mailbox, room, or equipment) that can be accessed by multiple users via delegation.
Base path: /resource-accounts
POST /resource-accounts/CreateResourceAccount
Section titled “POST /resource-accounts/CreateResourceAccount”CreateResourceAccount provisions a new resource account with the given identity.
Request (CreateResourceAccountRequest)
| Field | Type | Description |
|---|---|---|
name | string | name: Internal name for the resource account. |
display_name | string | display_name: Human-readable display name. |
local_part | string | local_part: Email local part for the primary address (e.g. “boardroom” for boardroom@example.com). |
domain_id | string | domain_id: Domain for the primary email address (dom_ prefix). |
resource_class | ResourceClass | resource_class: Type of resource this account represents. |
Response (CreateResourceAccountResponse)
| Field | Type | Description |
|---|---|---|
resource_account | ResourceAccount |
POST /resource-accounts/GetResourceAccount
Section titled “POST /resource-accounts/GetResourceAccount”GetResourceAccount retrieves a resource account by ID.
Request (GetResourceAccountRequest)
| Field | Type | Description |
|---|---|---|
id | string | id: The resource account ID to retrieve (res_ prefix). |
Response (GetResourceAccountResponse)
| Field | Type | Description |
|---|---|---|
resource_account | ResourceAccount |
POST /resource-accounts/ListResourceAccounts
Section titled “POST /resource-accounts/ListResourceAccounts”ListResourceAccounts lists all resource accounts for the tenant.
Request (ListResourceAccountsRequest)
No fields.
Response (ListResourceAccountsResponse)
| Field | Type | Description |
|---|---|---|
resource_accounts | ResourceAccount[] |
POST /resource-accounts/UpdateResourceAccount
Section titled “POST /resource-accounts/UpdateResourceAccount”UpdateResourceAccount updates resource account properties.
Request (UpdateResourceAccountRequest)
| Field | Type | Description |
|---|---|---|
id | string | id: The resource account to update (res_ prefix). |
display_name | string? | display_name: New display name for the resource account. |
Response (UpdateResourceAccountResponse)
| Field | Type | Description |
|---|---|---|
resource_account | ResourceAccount |
POST /resource-accounts/DeleteResourceAccount
Section titled “POST /resource-accounts/DeleteResourceAccount”DeleteResourceAccount removes the resource account and its account.
Request (DeleteResourceAccountRequest)
| Field | Type | Description |
|---|---|---|
id | string | id: The resource account to delete (res_ prefix). |
Response (DeleteResourceAccountResponse)
No fields.
POST /resource-accounts/AddDelegate
Section titled “POST /resource-accounts/AddDelegate”AddDelegate grants a principal delegate access to a resource account.
Request (AddDelegateRequest)
| Field | Type | Description |
|---|---|---|
account_id | string | account_id: The resource account to grant access to (acc_ prefix). |
principal_id | string | principal_id: The principal to grant delegate access to (usr_ or grp_ prefix). |
access_level | DelegateAccessLevel | access_level: The level of access to grant. |
Response (AddDelegateResponse)
| Field | Type | Description |
|---|---|---|
delegate | Delegate |
POST /resource-accounts/RemoveDelegate
Section titled “POST /resource-accounts/RemoveDelegate”RemoveDelegate revokes delegate access from a principal.
Request (RemoveDelegateRequest)
| Field | Type | Description |
|---|---|---|
account_id | string | account_id: The resource account to revoke access from (acc_ prefix). |
principal_id | string | principal_id: The principal to revoke delegate access from. |
Response (RemoveDelegateResponse)
No fields.
POST /resource-accounts/ListDelegates
Section titled “POST /resource-accounts/ListDelegates”ListDelegates lists all delegates for a resource account.
Request (ListDelegatesRequest)
| Field | Type | Description |
|---|---|---|
account_id | string | account_id: The resource account to list delegates for (acc_ prefix). |
Response (ListDelegatesResponse)
| Field | Type | Description |
|---|---|---|
delegates | Delegate[] |
POST /resource-accounts/AddResourceAccountCapability
Section titled “POST /resource-accounts/AddResourceAccountCapability”AddResourceAccountCapability idempotently adds a new JMAP capability to a resource account and provisions the required resources.
Request (AddResourceAccountCapabilityRequest)
| Field | Type | Description |
|---|---|---|
id | string | id: The resource account ID (res_ prefix). |
capability | common.v1.AccountCapability | capability: The JMAP capability to add. See common.v1.AccountCapability for valid values. |
Response (AddResourceAccountCapabilityResponse)
| Field | Type | Description |
|---|---|---|
resource_account | ResourceAccount | resource_account: The updated resource account with the new capability reflected in its account. |