Users

A User represents a human or system/service user with the ability to connect to Files.com via any of the available connectivity methods (unless restricted to specific protocols).

Users are associated with API Keys, SSH (SFTP) Keys, Notifications, Permissions, and Group memberships.

Authentication

The authentication_method property on a User determines exactly how that user can login and authenticate to their Files.com account. Files.com offers a variety of authentication methods to ensure flexibility, security, migration, and compliance.

These authentication methods can be configured during user creation and can be modified at any time by site administrators. The meanings of the available values are as follows:

  • password - Allows authentication via a password. If API Keys or SSH (SFTP) Keys are also configured, those can be used instead of the password. If Two Factor Authentication (2FA) methods are also configured, a valid 2nd factor is required in addition to the password.
  • email_signup - When set upon user creation, an email will be sent to the new user with a link for them to create their password. Once the user has created their password, their authentication type will change to password.
  • sso - Allows authentication via a linked Single Sign On provider. If API Keys or SSH (SFTP) Keys are also configured, those can be used instead of Single Sign On. If Two Factor Authentication (2FA) methods are also configured, a valid 2nd factor is required in addition to Single Sign On. When using this method, you must also provide a valid sso_strategy_id to associate the User to the appropriate SSO provider.
  • password_with_imported_hash - Works like the password method but allows importing a hashed password in MD5, SHA-1, or SHA-256 format. Provide the imported hash in the field imported_password_hash. Upon first use, the password will be converted to Files.com's internal storage format and the authentication type will change to password. Typically only used when migrating to Files.com from another MFT solution.
  • none - Does not allow authentication via username and password, but does allow authentication via API Key or SSH (SFTP) Key. Typically only used for service users.
  • password_and_ssh_key - Allows authentication only by providing a password and also a valid SSH (SFTP) Key in a single attempt. If API Keys are also configured, those can be used instead of the password and key combination. This method only works with (typically enterprise) SSH/SFTP clients capable of sending both authentication methods at once. Typically only used for service users.

List Users

SDK Method

user.List()

Return Object

[]*User

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Folder Admin permissions.

UserListParams Fields

FieldDescription
Ids
string
comma-separated list of User IDs
IncludeParentSiteUsers
boolean
Include users from the parent site.
Search
string
Searches for partial matches of name, username, or email.

Additional Arguments

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/user"
)

userIterator, err := user.List(files_sdk.UserListParams{IncludeParentSiteUsers: lib.Bool(false)})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

for userIterator.Next() {
    user := userIterator.user()
}
err = userIterator.Err()
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Show User

SDK Method

user.Find()

Return Object

User

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Folder Admin permissions.

UserFindParams Fields

FieldDescription
Id
int64
Required
User ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/user"
)

user, err := user.Find(files_sdk.UserFindParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Create User

SDK Method

user.Create()

Return Object

User

Authorization Requirement

Available to all authenticated keys or sessions.

UserCreateParams Fields

FieldDefaultDescription
AvatarFile
file
An image file for your user avatar. See Attaching Files to API Requests.
AvatarDelete
boolean
If true, the avatar will be deleted.
ChangePassword
string
Used for changing a password on an existing user.
ChangePasswordConfirmation
string
Optional, but if provided, we will ensure that it matches the value sent in change_password.
Email
string
User's email.
GrantPermission
string
Permission to grant on the User Root upon user creation. Can be blank or full, read, write, list, read+write, or list+write
GroupId
int64
Group ID to associate this user with.
GroupIds
string
A list of group ids to associate this user with. Comma delimited.
ImportedPasswordHash
string
Pre-calculated hash of the user's password. If supplied, this will be used to authenticate the user on first login. Supported hash methods are MD5, SHA1, and SHA256.
Password
string
User password.
PasswordConfirmation
string
Optional, but if provided, we will ensure that it matches the value sent in password.
AnnouncementsRead
boolean
Signifies that the user has read all the announcements in the UI.
AiAssistantPersonalityId
int64
AI Assistant Personality ID assigned directly to this user, if any.
AllowedIps
string
A list of allowed IPs if applicable. Newline delimited
AttachmentsPermission
boolean
falseDEPRECATED: If true, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
AuthenticateUntil
string
Scheduled Date/Time at which user will be deactivated
AuthenticationMethod
string
"password"How is this user authenticated?
Possible values: password, sso, none, email_signup, password_with_imported_hash, password_and_ssh_key
BillingPermission
boolean
falseAllow this user to perform operations on the account, payments, and invoices?
BypassUserLifecycleRules
boolean
falseExempt this user from user lifecycle rules?
BypassSiteAllowedIps
boolean
falseAllow this user to skip site-wide IP blacklists?
DavPermission
boolean
trueCan the user connect with WebDAV?
DesktopConfigurationProfileId
int64
Desktop Configuration Profile ID assigned directly to this user, if any.
DefaultWorkspaceId
int64
Workspace ID the user should land in by default when more than one Workspace is available.
Disabled
boolean
falseIs user disabled? Disabled users cannot log in, and do not count for billing purposes. Users can be automatically disabled after an inactivity period via a Site setting or schedule to be deactivated after specific date.
FilesystemLayout
string
"site_root"File system layout
Possible values: site_root, user_root, partner_root, integration_centric, workspace_root
FtpPermission
boolean
trueCan the user access with FTP/FTPS?
HeaderText
string
Text to display to the user in the header of the UI
IntegrationCentricProfileId
int64
Integration Centric Profile ID assigned directly to this user, if any.
Language
string
""Preferred language
NotificationDailySendTime
int64
Hour of the day at which daily notifications should be sent. Can be in range 0 to 23
Name
string
User's full name
Company
string
User's company
Notes
string
Any internal notes on the user
OfficeIntegrationEnabled
boolean
trueEnable integration with Office for the web?
PartnerAdmin
boolean
falseIs this user a Partner administrator?
PartnerId
int64
Partner ID if this user belongs to a Partner
PasswordValidityDays
int64
0Number of days to allow user to use the same password
PrimaryGroupId
int64
Primary group ID for Group Admin scoping
ReadonlySiteAdmin
boolean
falseIs the user an allowed to view all (non-billing) site configuration for this site?
ReceiveAdminAlerts
boolean
falseDeprecated. Use notify_on_all_site_warnings and granular failure notification preferences instead.
NotifyOnAllSiteWarnings
boolean
falseShould the user receive site warnings via email?
NotifyOnAllSsoFailures
boolean
falseShould the user receive sso/scim/ldap configuration/sync failures via email?
NotifyOnAllUserSecurityEvents
boolean
falseShould the user receive user security events via email?
NotifyOnAllPendingWorkFailures
boolean
falseShould the user receive pending work failures via email?
NotifyOnAllSiemHttpDestinationFailures
boolean
falseShould the user receive siem failures via email?
NotifyOnAllSyncFailures
boolean
falseShould the user receive sync failures via email?
NotifyOnAllAutomationFailures
boolean
falseShould the user receive automation failures via email?
NotifyOnAllExpectationFailures
boolean
falseShould the user receive expectation failures and misses via email?
RequireLoginBy
string
Require user to login by specified date otherwise it will be disabled.
RequirePasswordChange
boolean
falseIs a password change required upon next user login?
ResponsibleGroupId
int64
ID of the internal Group responsible for this Partner User, overriding the Partner default.
ResponsibleUserId
int64
ID of the internal User responsible for this Partner User, overriding the Partner default.
RestapiPermission
boolean
trueCan this user access the Web app, Desktop app, SDKs, or REST API? (All of these tools use the API internally, so this is one unified permission set.)
SelfManaged
boolean
trueDoes this user manage it's own credentials or is it a shared/bot user?
SftpPermission
boolean
trueCan the user access with SFTP?
SiteAdmin
boolean
falseIs the user an administrator for this site?
SkipWelcomeScreen
boolean
falseSkip Welcome page in the UI?
SslRequired
string
"use_system_setting"SSL required setting
Possible values: use_system_setting, always_require, never_require
SsoStrategyId
int64
SSO (Single Sign On) strategy ID for the user, if applicable.
SubscribeToNewsletter
boolean
falseIs the user subscribed to the newsletter?
Require2fa
string
"use_system_setting"2FA required setting. use_system_setting uses the site-wide setting, including SSO exemptions. always_require and never_require override the site-wide setting when user-level overrides are allowed.
Possible values: use_system_setting, always_require, never_require
Tags
string
Comma-separated list of Tags for this user. Tags are used for other features, such as UserLifecycleRules, which can target specific tags. Tags must only contain lowercase letters, numbers, and hyphens.
TimeZone
string
"Eastern Time (US & Canada)"User time zone
UserRoot
string
""If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
UserHome
string
""Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
WorkspaceAdmin
boolean
falseIs the user a Workspace administrator? Applicable only to the workspace ID related to this user, if one is set.
Username
string
Required
User's username
WorkspaceId
int64
0Workspace ID

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/user"
)

user, err := user.Create(files_sdk.UserCreateParams{Username: "user"})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Unlock user who has been locked out due to failed logins

SDK Method

user.Unlock()

Return Object

No return value.

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

UserUnlockParams Fields

FieldDescription
Id
int64
Required
User ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/user"
)

err := user.Unlock(files_sdk.UserUnlockParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Resend user welcome email

SDK Method

user.ResendWelcomeEmail()

Return Object

No return value.

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

UserResendWelcomeEmailParams Fields

FieldDescription
Id
int64
Required
User ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/user"
)

err := user.ResendWelcomeEmail(files_sdk.UserResendWelcomeEmailParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Trigger 2FA Reset process for user who has lost access to their existing 2FA methods

SDK Method

user.User2faReset()

Return Object

No return value.

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

The X-Files-Reauthentication header is required for all requests to this endpoint.

UserUser2faResetParams Fields

FieldDescription
Id
int64
Required
User ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/user"
)

err := user.User2faReset(files_sdk.UserUser2faResetParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Update User

SDK Method

user.Update()

Return Object

User

Authorization Requirement

Not available to user API keys or sessions from users that are marked as Shared/Bot users.

The X-Files-Reauthentication header is required for any requests including the following parameters: password, change_password, email, site_admin.

UserUpdateParams Fields

FieldDescription
Id
int64
Required
User ID.
AvatarFile
file
An image file for your user avatar. See Attaching Files to API Requests.
AvatarDelete
boolean
If true, the avatar will be deleted.
ChangePassword
string
Used for changing a password on an existing user.
ChangePasswordConfirmation
string
Optional, but if provided, we will ensure that it matches the value sent in change_password.
Email
string
User's email.
GrantPermission
string
Permission to grant on the User Root upon user creation. Can be blank or full, read, write, list, read+write, or list+write
GroupId
int64
Group ID to associate this user with.
GroupIds
string
A list of group ids to associate this user with. Comma delimited.
ImportedPasswordHash
string
Pre-calculated hash of the user's password. If supplied, this will be used to authenticate the user on first login. Supported hash methods are MD5, SHA1, and SHA256.
Password
string
User password.
PasswordConfirmation
string
Optional, but if provided, we will ensure that it matches the value sent in password.
AnnouncementsRead
boolean
Signifies that the user has read all the announcements in the UI.
AiAssistantPersonalityId
int64
AI Assistant Personality ID assigned directly to this user, if any.
AllowedIps
string
A list of allowed IPs if applicable. Newline delimited
AttachmentsPermission
boolean
DEPRECATED: If true, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
AuthenticateUntil
string
Scheduled Date/Time at which user will be deactivated
AuthenticationMethod
string
How is this user authenticated?
Possible values: password, sso, none, email_signup, password_with_imported_hash, password_and_ssh_key
BillingPermission
boolean
Allow this user to perform operations on the account, payments, and invoices?
BypassUserLifecycleRules
boolean
Exempt this user from user lifecycle rules?
BypassSiteAllowedIps
boolean
Allow this user to skip site-wide IP blacklists?
DavPermission
boolean
Can the user connect with WebDAV?
DesktopConfigurationProfileId
int64
Desktop Configuration Profile ID assigned directly to this user, if any.
DefaultWorkspaceId
int64
Workspace ID the user should land in by default when more than one Workspace is available.
Disabled
boolean
Is user disabled? Disabled users cannot log in, and do not count for billing purposes. Users can be automatically disabled after an inactivity period via a Site setting or schedule to be deactivated after specific date.
FilesystemLayout
string
File system layout
Possible values: site_root, user_root, partner_root, integration_centric, workspace_root
FtpPermission
boolean
Can the user access with FTP/FTPS?
HeaderText
string
Text to display to the user in the header of the UI
IntegrationCentricProfileId
int64
Integration Centric Profile ID assigned directly to this user, if any.
Language
string
Preferred language
NotificationDailySendTime
int64
Hour of the day at which daily notifications should be sent. Can be in range 0 to 23
Name
string
User's full name
Company
string
User's company
Notes
string
Any internal notes on the user
OfficeIntegrationEnabled
boolean
Enable integration with Office for the web?
PartnerAdmin
boolean
Is this user a Partner administrator?
PartnerId
int64
Partner ID if this user belongs to a Partner
PasswordValidityDays
int64
Number of days to allow user to use the same password
PrimaryGroupId
int64
Primary group ID for Group Admin scoping
ReadonlySiteAdmin
boolean
Is the user an allowed to view all (non-billing) site configuration for this site?
ReceiveAdminAlerts
boolean
Deprecated. Use notify_on_all_site_warnings and granular failure notification preferences instead.
NotifyOnAllSiteWarnings
boolean
Should the user receive site warnings via email?
NotifyOnAllSsoFailures
boolean
Should the user receive sso/scim/ldap configuration/sync failures via email?
NotifyOnAllUserSecurityEvents
boolean
Should the user receive user security events via email?
NotifyOnAllPendingWorkFailures
boolean
Should the user receive pending work failures via email?
NotifyOnAllSiemHttpDestinationFailures
boolean
Should the user receive siem failures via email?
NotifyOnAllSyncFailures
boolean
Should the user receive sync failures via email?
NotifyOnAllAutomationFailures
boolean
Should the user receive automation failures via email?
NotifyOnAllExpectationFailures
boolean
Should the user receive expectation failures and misses via email?
RequireLoginBy
string
Require user to login by specified date otherwise it will be disabled.
RequirePasswordChange
boolean
Is a password change required upon next user login?
ResponsibleGroupId
int64
ID of the internal Group responsible for this Partner User, overriding the Partner default.
ResponsibleUserId
int64
ID of the internal User responsible for this Partner User, overriding the Partner default.
RestapiPermission
boolean
Can this user access the Web app, Desktop app, SDKs, or REST API? (All of these tools use the API internally, so this is one unified permission set.)
SelfManaged
boolean
Does this user manage it's own credentials or is it a shared/bot user?
SftpPermission
boolean
Can the user access with SFTP?
SiteAdmin
boolean
Is the user an administrator for this site?
SkipWelcomeScreen
boolean
Skip Welcome page in the UI?
SslRequired
string
SSL required setting
Possible values: use_system_setting, always_require, never_require
SsoStrategyId
int64
SSO (Single Sign On) strategy ID for the user, if applicable.
SubscribeToNewsletter
boolean
Is the user subscribed to the newsletter?
Require2fa
string
2FA required setting. use_system_setting uses the site-wide setting, including SSO exemptions. always_require and never_require override the site-wide setting when user-level overrides are allowed.
Possible values: use_system_setting, always_require, never_require
Tags
string
Comma-separated list of Tags for this user. Tags are used for other features, such as UserLifecycleRules, which can target specific tags. Tags must only contain lowercase letters, numbers, and hyphens.
TimeZone
string
User time zone
UserRoot
string
If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
UserHome
string
Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
WorkspaceAdmin
boolean
Is the user a Workspace administrator? Applicable only to the workspace ID related to this user, if one is set.
Username
string
User's username
WorkspaceId
int64
Workspace ID
Clear2fa
boolean
If true when changing authentication_method from password to sso, remove all two-factor methods. Ignored in all other cases.
ConvertToPartnerUser
boolean
Required when assigning a Partner to an existing non-Partner user. If true, convert the user by assigning the partner_id provided.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/user"
)

user, err := user.Update(files_sdk.UserUpdateParams{
  Id: 1,
  AvatarDelete: lib.Bool(false)
})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Delete User

SDK Method

user.Delete()

Return Object

No return value.

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

The X-Files-Reauthentication header is required for all requests to this endpoint.

UserDeleteParams Fields

FieldDescription
Id
int64
Required
User ID.
NewOwnerId
int64
Provide a User ID here to transfer ownership of certain resources such as Automations and Share Links (Bundles) to that new user.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/user"
)

err := user.Delete(files_sdk.UserDeleteParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

The User Object

Some of the methods above return a User object. The attributes of this object are listed below.

AttributeDescription
Id
int64
User ID
Username
string
User's username
AdminGroupIds
array(int64)
List of group IDs of which this user is an administrator
AllowedIps
string
A list of allowed IPs if applicable. Newline delimited
AttachmentsPermission
boolean
If true, the user can user create Bundles (aka Share Links). Use the bundle permission instead.
ApiKeysCount
int64
Number of API keys associated with this user
AuthenticateUntil
date-time
Scheduled Date/Time at which user will be deactivated
AuthenticationMethod
string
How is this user authenticated?
Possible values: password, sso, none, email_signup, password_with_imported_hash, password_and_ssh_key
AvatarUrl
string
URL holding the user's avatar
Billable
boolean
Is this a billable user record?
BillingPermission
boolean
Allow this user to perform operations on the account, payments, and invoices?
BypassSiteAllowedIps
boolean
Allow this user to skip site-wide IP blacklists?
BypassUserLifecycleRules
boolean
Exempt this user from user lifecycle rules?
CreatedAt
date-time
When this user was created
DavPermission
boolean
Can the user connect with WebDAV?
Disabled
boolean
Is user disabled? Disabled users cannot log in, and do not count for billing purposes. Users can be automatically disabled after an inactivity period via a Site setting or schedule to be deactivated after specific date.
DisabledExpiredOrInactive
boolean
Computed property that returns true if user disabled or expired or inactive.
AiAssistantPersonalityId
int64
AI Assistant Personality ID assigned directly to this user, if any.
DesktopConfigurationProfileId
int64
Desktop Configuration Profile ID assigned directly to this user, if any.
IntegrationCentricProfileId
int64
Integration Centric Profile ID assigned directly to this user, if any.
Email
email
User email address
FilesystemLayout
string
File system layout
Possible values: site_root, user_root, partner_root, integration_centric, workspace_root
FirstLoginAt
date-time
User's first login time
FtpPermission
boolean
Can the user access with FTP/FTPS?
GroupIds
string
Comma-separated list of group IDs of which this user is a member
HeaderText
string
Text to display to the user in the header of the UI
Language
string
Preferred language
LastLoginAt
date-time
User's most recent login time via any protocol
LastWebLoginAt
date-time
User's most recent login time via web
LastFtpLoginAt
date-time
User's most recent login time via FTP
LastSftpLoginAt
date-time
User's most recent login time via SFTP
LastDavLoginAt
date-time
User's most recent login time via WebDAV
LastDesktopLoginAt
date-time
User's most recent login time via Desktop app
LastRestapiLoginAt
date-time
User's most recent login time via Rest API
LastApiUseAt
date-time
User's most recent API use time
LastActiveAt
date-time
User's most recent activity time, which is the latest of most recent login, most recent API use, enablement, or creation
LastProtocolCipher
string
The most recent protocol and cipher used
LockoutExpires
date-time
Time in the future that the user will no longer be locked out if applicable
Name
string
User's full name
Company
string
User's company
Notes
string
Any internal notes on the user
NotificationDailySendTime
int64
Hour of the day at which daily notifications should be sent. Can be in range 0 to 23
OfficeIntegrationEnabled
boolean
Enable integration with Office for the web?
PartnerAdmin
boolean
Is this user a Partner administrator?
PartnerId
int64
Partner ID if this user belongs to a Partner
PartnerName
string
Name of the Partner if this user belongs to a Partner
PasswordSetAt
date-time
Last time the user's password was set
PasswordValidityDays
int64
Number of days to allow user to use the same password
PrimaryGroupId
int64
Primary group ID for Group Admin scoping
PublicKeysCount
int64
Number of public keys associated with this user
ReceiveAdminAlerts
boolean
Deprecated. Use notify_on_all_site_warnings and granular failure notification preferences instead.
NotifyOnAllSiteWarnings
boolean
Should the user receive site warnings via email?
NotifyOnAllSsoFailures
boolean
Should the user receive sso/scim/ldap configuration/sync failures via email?
NotifyOnAllUserSecurityEvents
boolean
Should the user receive user security events via email?
NotifyOnAllPendingWorkFailures
boolean
Should the user receive pending work failures via email?
NotifyOnAllSiemHttpDestinationFailures
boolean
Should the user receive siem failures via email?
NotifyOnAllSyncFailures
boolean
Should the user receive sync failures via email?
NotifyOnAllAutomationFailures
boolean
Should the user receive automation failures via email?
NotifyOnAllExpectationFailures
boolean
Should the user receive expectation failures and misses via email?
Require2fa
string
2FA required setting. use_system_setting uses the site-wide setting, including SSO exemptions. always_require and never_require override the site-wide setting when user-level overrides are allowed.
Possible values: use_system_setting, always_require, never_require
RequireLoginBy
date-time
Require user to login by specified date otherwise it will be disabled.
Active2fa
boolean
Is 2fa active for the user?
RequirePasswordChange
boolean
Is a password change required upon next user login?
PasswordExpired
boolean
Is user's password expired?
ResponsibleGroupId
int64
ID of the internal Group responsible for this Partner User, overriding the Partner default.
ResponsibleUserId
int64
ID of the internal User responsible for this Partner User, overriding the Partner default.
ReadonlySiteAdmin
boolean
Is the user an allowed to view all (non-billing) site configuration for this site?
RestapiPermission
boolean
Can this user access the Web app, Desktop app, SDKs, or REST API? (All of these tools use the API internally, so this is one unified permission set.)
SelfManaged
boolean
Does this user manage it's own credentials or is it a shared/bot user?
SftpPermission
boolean
Can the user access with SFTP?
SiteAdmin
boolean
Is the user an administrator for this site?
WorkspaceAdmin
boolean
Is the user a Workspace administrator? Applicable only to the workspace ID related to this user, if one is set.
SiteId
int64
Site ID
WorkspaceId
int64
Workspace ID
DefaultWorkspaceId
int64
Workspace ID the user should land in by default when more than one Workspace is available.
SkipWelcomeScreen
boolean
Skip Welcome page in the UI?
SslRequired
string
SSL required setting
Possible values: use_system_setting, always_require, never_require
SsoStrategyId
int64
SSO (Single Sign On) strategy ID for the user, if applicable.
SubscribeToNewsletter
boolean
Is the user subscribed to the newsletter?
ExternallyManaged
boolean
Is this user managed by a SsoStrategy?
Tags
string
Comma-separated list of Tags for this user. Tags are used for other features, such as UserLifecycleRules, which can target specific tags. Tags must only contain lowercase letters, numbers, and hyphens.
TimeZone
string
User time zone
TypeOf2fa
string
Type(s) of 2FA methods in use, for programmatic use. Will be either sms, totp, webauthn, yubi, email, or multiple values sorted alphabetically and joined by an underscore. Does not specify whether user has more than one of a given method.
TypeOf2faForDisplay
string
Type(s) of 2FA methods in use, formatted for displaying in the UI. Unlike type_of_2fa, this value will make clear when a user has more than 1 of the same type of method.
UserRoot
string
If filesystem layout is user_root, this path is the root path the user is fixed to for all interfaces. If the filesystem layout is site_root or partner_root, this acts as a root folder only for FTP and SFTP (SFTP applicability also requires a site-wide setting to be set). For partner_root layout, this path is relative to the Partner root folder for all callers and blank opts out of an additional protocol root. In this situation, this path is not applied to the API, Desktop, or Web interface.
UserHome
string
Home folder for FTP/SFTP. For users with the partner_root filesystem layout, this path is relative to the Partner root folder. In all other cases, it is an absolute path. Only applies to FTP and SFTP, and not any other interface.
DaysRemainingUntilPasswordExpire
int64
Number of days remaining until password expires
PasswordExpireAt
date-time
Password expiration datetime