Register service account to Subaccount

This function links service accounts to subaccounts and creates a subaccount if one does not exist.

Note:

You can only link email, FTP, or Web Disk accounts.

Important

You must use at least one of the following parameters:

  • services.email.merge
  • services.ftp.merge
  • services.webdisk.merge

To link multiple service accounts, the service accounts must share the same username and domain.

SecurityBasicAuth
Request
query Parameters
domain
required
string <domain>

The service account's associated domain.

Example: domain=example.com
username
required
string <username>

The username for the service account that meets the account name limitations.

  • Length - 64 characters
  • Characters — a-z, A-Z, 0-9, dot (.), hyphen (-), underscore (_).

Note:

This value does not include the domain name.

Example: username=example
services.email.merge
integer
Default: 0

Whether to link the email account to the subaccount.

  • 1 - Merge.
  • 0 - Do not merge.
Enum: 0 1
Example: services.email.merge=1
services.ftp.merge
integer
Default: 0

Whether to link the FTP account to the subaccount.

  • 1 - Merge.
  • 0 - Do not merge.
Enum: 0 1
Example: services.ftp.merge=1
services.webdisk.merge
integer
Default: 0

Whether to link the Web Disk account to the subaccount.

  • 1 - Merge.
  • 0 - Do not merge.
Enum: 0 1
Example: services.webdisk.merge=1
Responses
200

HTTP Request was successful.

Response Schema: application/json
apiversion
integer

The version of the API.

func
string

The name of the method called.

module
string

The name of the module called.

object
get/UserManager/merge_service_account
Request samples
uapi --output=jsonpretty \
  --user=username \
  UserManager \
  merge_service_account \
  username='example' \
  domain='example.com'
Response samples
application/json
{
  • "apiversion": 3,
  • "func": "merge_service_account",
  • "module": "UserManager",
  • "result": {
    • "data": {
      • "alternate_email": "user@example.com",
      • "can_delete": 0,
      • "can_set_password": 1,
      • "can_set_quota": 0,
      • "dismissed": 1,
      • "dismissed_merge_candidates": [
        • {
          • "alternate_email": "user@example.com",
          • "can_delete": 0,
          • "can_set_password": 1,
          • "can_set_quota": 0,
          • "domain": "example.com",
          • "full_username": "user@example.com",
          • "guid": "N4641:EXAMPLE.COM:564CC8A7:A82EA007D8348AC631C0170F9418EC1DEB0D164CC5A722A87C55EF5DD2AD98D4",
          • "has_siblings": 0,
          • "issues": [
            • {
              • "area": "quota",
              • "limit": 1500,
              • "message": "Your account is over quota.",
              • "service": "email",
              • "type": "info",
              • "used": 2000
              }
            ],
          • "parent_type": "hypothetical",
          • "phone_number": "+15551234567",
          • "real_name": "John Doe",
          • "services": {
            • "email": {
              • "enabled": 1,
              • "quota": 100
              },
            • "ftp": {
              • "enabled": 0,
              • "homedir": "/subaccount",
              • "quota": 100
              },
            • "webdisk": {
              • "enabled": 0,
              • "homedir": "/bob",
              • "perms": "rw",
              • "private": 0
              }
            },
          • "special": 1,
          • "sub_account_exists": 0,
          • "synced_password": 0,
          • "type": "sub",
          • "username": "example"
          }
        ],
      • "domain": "example.com",
      • "full_username": "user@example.com",
      • "guid": "N4641:EXAMPLE.COM:564CC8A7:A82EA007D8348AC631C0170F9418EC1DEB0D164CC5A722A87C55EF5DD2AD98D4",
      • "has_expired_invite": 0,
      • "has_invite": 0,
      • "has_siblings": 0,
      • "invite_expiration": 1591718154,
      • "issues": [
        • {
          • "area": "quota",
          • "limit": 1500,
          • "message": "Your account is over quota.",
          • "service": "email",
          • "type": "info",
          • "used": 2000
          }
        ],
      • "merge_candidates": [
        • {
          • "alternate_email": "user@example.com",
          • "can_delete": 0,
          • "can_set_password": 1,
          • "can_set_quota": 0,
          • "domain": "example.com",
          • "full_username": "user@example.com",
          • "guid": "N4641:EXAMPLE.COM:564CC8A7:A82EA007D8348AC631C0170F9418EC1DEB0D164CC5A722A87C55EF5DD2AD98D4",
          • "has_siblings": 0,
          • "issues": [
            • {
              • "area": "quota",
              • "limit": 1500,
              • "message": "Your account is over quota.",
              • "service": "email",
              • "type": "info",
              • "used": 2000
              }
            ],
          • "parent_type": "hypothetical",
          • "phone_number": "+15551234567",
          • "real_name": "John Doe",
          • "services": {
            • "email": {
              • "enabled": 1,
              • "quota": 100
              },
            • "ftp": {
              • "enabled": 0,
              • "homedir": "/subaccount",
              • "quota": 100
              },
            • "webdisk": {
              • "enabled": 0,
              • "homedir": "/bob",
              • "perms": "rw",
              • "private": 0
              }
            },
          • "special": 1,
          • "sub_account_exists": 0,
          • "synced_password": 0,
          • "type": "sub",
          • "username": "example"
          }
        ],
      • "parent_type": "hypothetical",
      • "phone_number": "+15551234567",
      • "real_name": "John Doe",
      • "services": {
        • "email": {
          • "enabled": 1,
          • "quota": 100
          },
        • "ftp": {
          • "enabled": 0,
          • "homedir": "/subaccount",
          • "quota": 100
          },
        • "webdisk": {
          • "enabled": 0,
          • "homedir": "/bob",
          • "perms": "rw",
          • "private": 0
          }
        },
      • "special": 1,
      • "sub_account_exists": 0,
      • "synced_password": 0,
      • "type": "sub",
      • "username": "example"
      },
    • "errors": null,
    • "messages": null,
    • "metadata": { },
    • "status": 1,
    • "warnings": null
    }
}