LiquidFiles Documentation
LiquidFiles Documentation
Updated v3.7

Group Admin API

The Admin User API will enable you to add, delete and update users on the LiquidFiles system.

Available Attributes

The following attributes are available when you're accessing the Group Admin API:

Request Parameters
Parameter Type Description
Basic Settings
id String The Groups unique ID.
name String The name of the Group.
default_view String The groups default location after logging in. Available options are: message, message_inbox, share, filelink. Default: message
quota Integer The quota for the entire group (in MB).
user_quota Integer The quota for each user in this group (in MB).
is_sysadmin Boolean True if the users in this group are Sysadmins.
is_domain_admin Boolean True if the users in this group are Domain Admins. This setting is only available for non-default domains.
is_admin Boolean True if the users in this group are Admins.
is_user_admin Boolean True if the users in this group are User Admins.
is_local Boolean True if the users in this group are Local Users.
match_ldap_groups String A comma separated list of LDAP groups users in this group should be matched to.
match_domains String A comma separated list of email domains that users in this group should be matched to.
can_invite_users Boolean True if users in this group can invite other users.
delete_inactive_users Integer Delete inactive users after this many days.
blocked_extensions String A comma separated list of blocked file extensions.
limit_extensions String A comma separated list of file extensions that users will be restricted to using.
created_at DateTime When this group was created.
updated_at DateTime When this group was last updated.
Security and Authentication
limit_networks String A comma separated list of IP networks users in this group are restricted to login from.
password_expires_after Integer Number of days passwords expire after.
strong_auth Boolean True if the users in this group should be authenticated with Strong Authentication.
strong_auth_type String Can be totp_enable, totp_require, sms_enable, sms_require or duo. Default: totp_enable.
strong_auth_exclude_networks String Comma separated list of networks that doesn't require strong authentication.
strong_auth_remember Boolean True if users in this group should be permitted to remember (skip) strong authentication for two weeks.
require_saml_authentication Boolean True if users in this group should be required to authenticate with SAML.
match_saml_groups String Comma separated list of group names that when sent as a SAML response should be matched to users of this group.
admin_can_access_data Boolean True if this is an Admin group and Admins are permitted to access users data.
admin_access_data_log Boolean True if this is an administrator group and administrators in this group should have user data accessed logged.
Secure Message
enable_send_messages Boolean True if users in this group should be able to send messages.
max_file_size Integer The maximum file size (in MB) per message.
message_recipient_groups String A comma separated list of LiquidFiles groups that users are only permitted to send to. Ex: ["local-users"]
message_recipient_domains String A comma separated list of permitted email domains. Only either message_recipient_domains or message_recipient_block_domains can be set.
message_recipient_block_domains String A comma seaprated list of blocked email domains. Only either message_recipient_domains or message_recipient_block_domains can be set.
message_recipient_pattern_match String A regular expression of required email recipients.
message_recipient_pattern_block String A regular expression of blocked email recipients.
message_can_send_to_existing_users_only Boolean True if users should only be permitted to send to users that exist on this system. When set to false, a message would be permitted to nonexistent@company.com if messages where permitted to the company.com email domain. When set to true, a message would not be permitted to existingbuthasntloggedin@company.com even if company.com is a permitted domain.
message_external_user_recipient_policy String For groups with external (non-local users), the permitted settings are local_users, local_domains or empty.
  • local_users — Can Send to Existing Local Users Only
  • local_domains — Can Send to any email in any Local Domain
  • empty — Can Send to anyone. Setting this will make these external users count towards your licenses if you have a user limited license.
default_private_message Boolean True if Private Messages are enabled on default.
can_change_private_message Boolean If true, users can change from the default private message setting.
recipient_domains String Comma separated list of email domains that users in this group can only send to.
default_expiration Integer The default message expiration (in days).
max_expiration Integer The maximum message expiration (in days).
can_change_expiration Boolean If true, users in this group can change message expiration.
If false, the default expiration above will be used.
max_expires_after Integer The maximum expires after that can be set for messages.
can_change_expires_after Boolean If true, users in this group can change expires after.
If false, the max expires after will be used.
default_permission Integer The default permission when sending a message. The following values applies:
  • 0: Anyone can download
  • 1: Anyone can download after authentication
  • 2: Specified Recipients and local users can download
  • 3: Only Specified Recipients can download
  • 4: Specified Recipients and Recipient Domains can download
can_use_specified Boolean If true, users in this group can select to send messages with the permission that only specified recipients can access and download.
can_use_specified_and_local Boolean Same as above for specified recipients and local users.
can_use_specified_and_domains Boolean Same as above for specified recipients and domains.
can_use_anyone_with_auth Boolean Same as above for anyone after authentication.
can_use_anyone Boolean Same as above for no authentication.
can_change_permission Boolean If true, users in this group can change message download permissions.
messages_reply_default Boolean True if replies should be enabled on default.
messages_reply_can_change Boolean True if users should be permitted to change the message reply option.
bcc_myself Boolean If true, users will be BCC'd on any messages sent.
can_change_bcc_myself Boolean If true, users can enable or disable if they should be BCC'd.
send_receipts Boolean If true, users will be sent download receipts.
message_delivery_action String The actionscript used for delivery actions.
message_parameter_action String The actionscript used for message parameters.
Filedrop
has_filedrop Boolean If true, users in this group have access to Filedrops with random strings.
has_filedrop_email Boolean If true, users in this group have access to Filedrops with their email address.
filedrop_permission Integer Determines who has permission to download messages sent through users Filedrop:
  • 2: Specified Recipients and local users can download
  • 3: Only Specified Recipients can download (default)
filedrop_max_filesize Integer How large files is permitted to submit using User Filedrops (in MB).
filedrop_expiration Integer How many days a message sent through a User Filedrop before it expires.
filedrop_send_receipts_to_sender Booelan Should download receipts be sent back to Senders after a Filedrop submission?
filedrop_require_validation Booelan Should users be required to validate their email address (or login) before access the users Filedrops?
File Requests
enable_file_request Boolean True if users in this group should have access to File Requests.
file_request_expiration Integer How many days a recipient of a File Request has to respond.
file_request_expire_download Integer How many days after a response that the sender has to download the requested file.
file_request_permission Integer Who will be granted access permissions to file request responses:
  • 2: Specified Recipients and local users can download
  • 3: Only Specified Recipients can download
file_request_multiuse Boolean True if users in this group has file request multiuse enabled on default.
file_request_multiuse_can_change Boolean True if users in this group can change file request multiuse.
file_request_max_expiration Integer The Max number of days users in this group can set file requests to.
file_request_can_change_expiration Boolean True if users in this group can change expiration.
FileLinks
enable_filelink Boolean True if users in this group can change expiration.
filelink_default_expiration Integer How long FileLinks are available on default (in days).
filelink_max_expiration Integer The maximum FileLink expiration that can be set (in days). Max value: 3650.
filelink_can_change_expiration Boolean If true, users can change from the default expiration.
filelink_default_require_authentication Boolean If true, FileLinks will require authentication on default.
filelink_can_change_require_authentication Boolean If true, users can change if authentication is required or not.
filelink_can_use_password Boolean True if users in this group can use passwords for FileLinks.
filelink_default_download_confirmation Boolean True if users in this group should receive download confirmation on default.
filelink_can_change_download_confirmation Boolean True if users in this group can change download confirmation.
filelink_can_change_download_confirmation Boolean True if users in this group can change download confirmation.
Share
share_write_access Boolean True if users in this group should have share write access enabled. This is a setting for External (non-Local) user groups only. Enabling this will make users in this group count towards your licenses.
API
enable_api Boolean True if users in this group should have access to the API.
api_enable_static_key Boolean True if users in this group should have access to the API authentication with Static (non-expiring) keys. Default: False.
api_key_expiration Integer After how many days should expiring API keys expire, default: 90.
api_enable_send_folders Boolean True if folders should be selectable in the Outlook plugin.
api_size_override Integer The size at which the Outlook plugin should automatically use LiquidFiles (in MB).
api_can_override_size_limit Boolean True if users should be able to override the size limit in the Outlook plugin.
api_custom_settings Integer Any custom settings you want to send.

List Groups

Request Info
Info Value
Request URL /admin/groups
Request VERB GET
Authentication Required

As a response, you will get an array of groups with the attributes as listed in the available attributes section above.

Example using curl:

curl -s -X GET --user "37DeYIkmDoQcsl3eEl2lE2:x" -H "Accept: application/json" -H "Content-Type: application/json" https://liquidfiles.company.com/admin/groups
[
  {"group":
    {
      "id": "sysadmins",
      "name": "Sysadmins",
      "quota": 1000,
      "user_quota": 0,
      "max_file_size": ,
      "default_expiration": 30,
      "max_expiration": 180,
      "default_permission": 3,
      "delete_inactive_users": 0,
      "use_specified": true,
      "use_specified_and_domains": true,
      "use_anyone_with_auth": true,
      "use_anyone": true,
      "can_change_permission": true,
      "can_change_expiration": true,
      "max_expires_after": 0,
      "can_change_expires_after": true,
      "has_filedrop": true,
      "has_filedrop_email": true,
      "filedrop_permission": 3,
      "file_request_expire_download": 14,
      "filedrop_expiration": 14,
      "enable_api": true,
      "api_custom_settings": "",
      "api_enable_send_folders": false,
      "api_can_override_size_limit": true,
      "api_size_override": 10,
      "can_send_to_local_users": true,
      "is_sysadmin": true,
      "is_domain_admin": true,
      "is_admin": true,
      "is_user_admin": false,
      "is_local": true,
      "strong_auth": false,
      "enable_send_messages": true,
      "match_ldap_groups": "",
      "match_domains": "",
      "recipient_domains": "",
      "limit_networks": "",
      "bcc_myself": true,
      "can_change_bcc_myself": true,
      "send_receipts": true,
      "file_request_expiration": 14,
      "file_request_permission": 3,
      "enable_file_request": true,
      "can_invite_users": true,
      "filelink_can_change_require_authentication": true,
      "filelink_default_require_authentication": true,
      "filelink_max_expiration": 180,
      "filelink_default_expiration": false,
      "enable_filelink": true,
      "default_private_message": false,
      "can_change_private_message": true,
      "password_expires_after": 0,
      "block_extensions": "exe, vbs, pif, scr, bat, cmd, com, cpl",
      "limit_extensions": "",
      "created_at": "2013-11-11 02:15:44 UTC"
    }
  },
  {"group":
    {
      "id": "admins",
      "name": "Admins",
      "quota": 0,
      "user_quota": 0,
      "max_file_size": 1000,
      "default_expiration": 30,
      "max_expiration": 180,
      "default_permission": 3,
      "delete_inactive_users": 0,
      "use_specified": true,
      "use_specified_and_domains": true,
      "use_anyone_with_auth": true,
      "use_anyone": true,
      "can_change_permission": true,
      "can_change_expiration": true,
      "max_expires_after": 0,
      "can_change_expires_after": true,
      "has_filedrop": false,
      "has_filedrop_email": false,
      "filedrop_permission": 3,
      "file_request_expire_download": 14,
      "filedrop_expiration": 14,
      "enable_api": false,
      "api_custom_settings": "",
      "api_enable_send_folders": true,
      "api_can_override_size_limit": true,
      "api_size_override": 10,
      "can_send_to_local_users": true,
      "is_sysadmin": false,
      "is_domain_admin": false,
      "is_admin": true,
      "is_user_admin": false,
      "is_local": true,
      "strong_auth": false,
      "enable_send_messages": true,
      "match_ldap_groups": "",
      "match_domains": "",
      "recipient_domains": "",
      "limit_networks": "",
      "bcc_myself": true,
      "can_change_bcc_myself": true,
      "send_receipts": true,
      "file_request_expiration": 14,
      "file_request_permission": 3,
      "enable_file_request": true,
      "can_invite_users": true,
      "filelink_can_change_require_authentication": true,
      "filelink_default_require_authentication": true,
      "filelink_max_expiration": 180,
      "filelink_default_expiration": false,
      "enable_filelink": true,
      "default_private_message": false,
      "can_change_private_message": true,
      "password_expires_after": 0,
      "block_extensions": "exe, vbs, pif, scr, bat, cmd, com, cpl",
      "limit_extensions": "",
      "created_at": "2013-11-11 02:15:44 UTC"
    }
  }
]

Only the first two groups are listed here as the output is fairly long.

View Group

To view an individual group, please use the following Request:

Request Info
Info Value
Request URL /admin/groups/_the_group_ID_
Request VERB GET
Authentication Required

Example using curl

curl -s -X GET --user "37DeYIkmDoQcsl3eEl2lE2:x" -H "Accept: application/json" -H "Content-Type: application/json" https://liquidfiles.company.com/admin/groups/local-users
{"group":
    {
      "id": "local-users",
      "name": "Local Users",
      "quota": 0,
      "user_quota": 0,
      "max_file_size": 1000,
      "default_expiration": 30,
      "max_expiration": 180,
      "default_permission": 3,
      "delete_inactive_users": 0,
      "use_specified": true,
      "use_specified_and_domains": true,
      "use_anyone_with_auth": true,
      "use_anyone": true,
      "can_change_permission": true,
      "can_change_expiration": true,
      "max_expires_after": 0,
      "can_change_expires_after": true,
      "has_filedrop": true,
      "has_filedrop_email": true,
      "filedrop_permission": 3,
      "file_request_expire_download": 14,
      "filedrop_expiration": 14,
      "enable_api": false,
      "api_custom_settings": "",
      "api_enable_send_folders": false,
      "api_can_override_size_limit": false,
      "api_size_override": 10,
      "can_send_to_local_users": true,
      "is_sysadmin": false,
      "is_domain_admin": false,
      "is_admin": false,
      "is_user_admin": false,
      "is_local": true,
      "strong_auth": false,
      "enable_send_messages": true,
      "match_ldap_groups": "",
      "match_domains": "",
      "recipient_domains": "",
      "limit_networks": "",
      "bcc_myself": true,
      "can_change_bcc_myself": true,
      "send_receipts": true,
      "file_request_expiration": 14,
      "file_request_permission": 3,
      "enable_file_request": true,
      "can_invite_users": true,
      "filelink_can_change_require_authentication": true,
      "filelink_default_require_authentication": true,
      "filelink_max_expiration": 180,
      "filelink_default_expiration": false,
      "enable_filelink": true,
      "default_private_message": false,
      "can_change_private_message": true,
      "password_expires_after": 0,
      "block_extensions": "exe, vbs, pif, scr, bat, cmd, com, cpl",
      "limit_extensions": "",
      "created_at": "2013-11-11 02:15:44 UTC"
    }
  }

Create Group

Request Info
Info Value
Request URL /admin/groups
Request VERB POST
Authentication Required
Please see the attributes above for a list of other attributes to set. The name is the only required parameter, all others are optional.

Create Example using curl

cat <<EOF | curl -s -X POST --user "37DeYIkmDoQcsl3eEl2lE2:x" -H "Accept: application/json" -H "Content-Type: application/json" -d @- https://liquidfiles.company.com/admin/groups
{"group":
  {
    "name": "Partner Group 1",
    "is_local": false,
    "recipient_domains": "company.com"
  }
}
EOF
{"group":
  {
    "id": "partner-group-1",
    "name": "Partner Group 1",
    "quota": 0,
    "user_quota": 0,
    "max_file_size": 1000,
    "default_expiration": 30,
    "max_expiration": 180,
    "default_permission": 3,
    "delete_inactive_users": 0,
    "use_specified": true,
    "use_specified_and_domains": true,
    "use_anyone_with_auth": true,
    "use_anyone": true,
    "can_change_permission": true,
    "can_change_expiration": true,
    "max_expires_after": 0,
    "can_change_expires_after": true,
    "has_filedrop": false,
    "has_filedrop_email": false,
    "filedrop_permission": 3,
    "file_request_expire_download": 14,
    "filedrop_expiration": 14,
    "enable_api": false,
    "api_custom_settings": "",
    "api_enable_send_folders": true,
    "api_can_override_size_limit": true,
    "api_size_override": 10,
    "can_send_to_local_users": true,
    "is_sysadmin": false,
    "is_domain_admin": false,
    "is_admin": false,
    "is_user_admin": false,
    "is_local": false,
    "strong_auth": false,
    "enable_send_messages": true,
    "match_ldap_groups": "",
    "match_domains": "",
    "recipient_domains": "company.com",
    "limit_networks": "",
    "bcc_myself": true,
    "can_change_bcc_myself": true,
    "send_receipts": true,
    "file_request_expiration": 14,
    "file_request_permission": 3,
    "enable_file_request": false,
    "can_invite_users": false,
    "filelink_can_change_require_authentication": true,
    "filelink_default_require_authentication": true,
    "filelink_max_expiration": 180,
    "filelink_default_expiration": false,
    "enable_filelink": false,
    "default_private_message": false,
    "can_change_private_message": true,
    "password_expires_after": 0,
    "block_extensions": "",
    "limit_extensions": "",
    "created_at": "2014-09-02 19:35:15 +1000"
  }
}

Update Group

When updating the group, you need to send the group ID that you wish to update, followed by the attributes you want to update.

Request Info
Info Value
Request URL /admin/groups/_the_group_ID_
Request VERB PUT
Authentication Required
Please see the attributes above for a list of other attributes to set.

Example using curl

cat <<EOF | curl -s -X PUT --user "37DeYIkmDoQcsl3eEl2lE2:x" -H "Accept: application/json" -H "Content-Type: application/json" -d @- https://liquidfiles.company.com/admin/groups/partner-group-1
{"group":
  {
    "recipient_domains": "company.com, other_internal_domain.com"
}
}
EOF
{"group": { "id": "partner-group-1", "name": "Partner Group 1", "quota": 0, "user_quota": 0, "max_file_size": 1000, "default_expiration": 30, "max_expiration": 180, "default_permission": 3, "delete_inactive_users": 0, "use_specified": true, "use_specified_and_domains": true, "use_anyone_with_auth": true, "use_anyone": true, "can_change_permission": true, "can_change_expiration": true, "max_expires_after": 0, "can_change_expires_after": true, "has_filedrop": false, "has_filedrop_email": false, "filedrop_permission": 3, "file_request_expire_download": 14, "filedrop_expiration": 14, "enable_api": false, "api_custom_settings": "", "api_enable_send_folders": true, "api_can_override_size_limit": true, "api_size_override": 10, "can_send_to_local_users": true, "is_sysadmin": false, "is_domain_admin": false, "is_admin": false, "is_user_admin": false, "is_local": false, "strong_auth": false, "enable_send_messages": true, "match_ldap_groups": "", "match_domains": "", "recipient_domains": "company.com, other_internal_domain.com", "limit_networks": "", "bcc_myself": true, "can_change_bcc_myself": true, "send_receipts": true, "file_request_expiration": 14, "file_request_permission": 3, "enable_file_request": false, "can_invite_users": false, "filelink_can_change_require_authentication": true, "filelink_default_require_authentication": true, "filelink_max_expiration": 180, "filelink_default_expiration": false, "enable_filelink": false, "default_private_message": false, "can_change_private_message": true, "password_expires_after": 0, "block_extensions": "", "limit_extensions": "", "created_at": "2014-09-02 19:35:15 +1000" } }

Delete Group

Request Info
Info Value
Request URL /admin/groups/_the_group_ID_
Request VERB DELETE
Authentication Required

The response will be blank, with a http status code of 200 if the group was deleted.

Example using curl

curl -s -X DELETE --user "ayFlT3BNx1OXxiZcM4h5Tl:x" -H "Accept: application/json" https://liquidfiles.company.com/admin/groups/partner-group-1