Principals, Users, AccountUsers and Groups define the types of users defined in ShareFile.
GET https://account.sf-api.com/sf/v3/Users
GET https://account.sf-api.com/sf/v3/Users(id)
GET https://account.sf-api.com/sf/v3/Users?emailaddress=email
Retrieve a single user, by ID or email, or the currently authenticated user. A user can retrieve another user when * (1) The current user has AdminManageEmployees role * OR * (2) The current user has CanManageUsers role and the other user is a client. Users without these permissions can retrieve minimal user info from the endpoint https://account.sf-api.com/sf/v3/Users.
| id | String | User ID |
| emailAddress | String | User email address to lookup |
Returns: the requested User object
POST https://account.sf-api.com/sf/v3/Users
{
"Email":"user.one@domain.com",
"FirstName":"Name",
"LastName":"Last Name",
"Company":"Company",
"DefaultZone":
{
"Id":"zoneid"
}
}
Creates a new Client User and associates it to an Account
The following parameters from the input object are used: Email, FirstName, LastName, Company, DefaultZone
Other parameters are ignored
| user | User | A User object with the properties of the new user |
| pushCreatorDefaultSettings | Boolean | Use the settings of the API authenticated user as defaults for the new user |
| addshared | Boolean | Obsolete - Will always be true. Adds the new user to the Account shared Address Book |
| notify | Boolean | If set to true, sharefile will send an email to the new user email address. |
| ifNecessary | Boolean | Creates a new user if the email is not found on the account, and do not fail if the user is already present |
| addPersonal | Boolean | Obsolete - Will always be true. Add user to personal address book |
Returns: The new user
POST https://account.sf-api.com/sf/v3/UsersForFolder
{
"Email":"user.one@domain.com",
"FirstName":"Name",
"LastName":"Last Name",
"Company":"Company",
"DefaultZone":
{
"Id":"zoneid"
}
}
Creates a new Client User with validation that client is admin of folder for which client is created and associates it to an Account
The following parameters from the input object are used: Email, FirstName, LastName, Company, DefaultZone
Other parameters are ignored
| user | User | A User object with the properties of the new user |
| folderId | String | ID of folder for which client user is created |
| pushCreatorDefaultSettings | Boolean | Use the settings of the API authenticated user as defaults for the new user |
| addshared | Boolean | Obsolete - Will always be true. Adds the new user to the Account shared Address Book |
| notify | Boolean | If set to true, sharefile will send an email to the new user email address. |
| ifNecessary | Boolean | Creates a new user if the email is not found on the account, and do not fail if the user is already present |
| addPersonal | Boolean | Obsolete - Will always be true. Add user to personal address book |
Returns: The new user
POST https://account.sf-api.com/sf/v3/Users/AccountUser
{
"Email":"user.one@domain.com",
"FirstName":"Name",
"LastName":"Last Name",
"Company":"Company",
"StorageQuotaLimitGB":50,
"DefaultZone":
{
"Id":"zoneid"
},
"IsAdministrator": false,
"CanCreateFolders": false,
"CanUseFileBox": true,
"CanManageUsers": false,
"Roles": [
"CanChangePassword", "CanManageMySettings",
"CanUseFileBox", "CanManageUsers", "CanCreateFolders", "CanUseDropBox", "CanSelectFolderZone",
"AdminAccountPolicies", "AdminBilling", "AdminBranding", "AdminChangePlan", "AdminFileBoxAccess",
"AdminManageEmployees", "AdminRemoteUploadForms", "AdminReporting", "AdminSharedDistGroups",
"AdminSharedAddressBook", "AdminViewReceipts", "AdminDelegate", "AdminManageFolderTemplates",
"AdminEmailMessages", "AdminSSO", "AdminSuperGroup", "AdminZones", "AdminCreateSharedGroups", "AdminConnectors"
]
}
Creates a new Employee User (AccountUser) and associates it to an Account
The following parameters from the input object are used: Email, FirstName, LastName, Company, DefaultZone, IsEmployee, IsAdministrator, CanCreateFolders, CanUseFileBox, CanManageUsers. Other parameters are ignored
StorageQuotaLimitGB parameter is optional. If not specified or equal to -1 the account default storage quota value will be set for the User.
| user | AccountUser | A User object with the properties of the new user |
| pushCreatorDefaultSettings | Boolean | Use the settings of the API authenticated user as defaults for the new user |
| addshared | Boolean | Obsolete - Will always be true. Adds the new user to the Account shared Address Book |
| notify | Boolean | If set to true, sharefile will send an email to the new user email address. |
| ifNecessary | Boolean | Creates a new user if the email is not found on the account, and do not fail if the user is already present |
| addPersonal | Boolean | Obsolete - Will always be true. Add user to personal address book |
Returns: The new employee user
PATCH https://account.sf-api.com/sf/v3/Users(id)
{
"FirstName":"FirstName",
"LastName":"LastName",
"Company":"Company",
"Email":"user@domain.com",
"Security":
{
"IsDisabled":false
},
"DefaultZone":
{
"Id":"newzoneid"
}
}
Modifies an existing user object
The following parameters can be modified through this call: FirstName, LastName, Company, Email, IsDisabled, DefaultZone Id
| id | String | User Identifier |
| user | User | User object containing parameters to modify |
Returns: a modified user record
PATCH https://account.sf-api.com/sf/v3/Users(id)/Roles
{
"Roles" : [ "CanManageUsers", "CanSelectFolderZone" ]
}
Modifies an existing user object to ADD a new role
The following roles can be added to the user through this call (depending on User type): CanCreateFolders, CanSelectFolderZone, CanUseFileBox, CanManageUsers, AdminSharedAddressBook, CanChangePassword, CanManageMySettings, AdminManageDropBox
| parentid | String | User Identifier |
| user | User | User object containing roles to modify |
Returns: a modified user record
PUT https://account.sf-api.com/sf/v3/Users(id)/Roles
{
"Roles" : [ "CanManageUsers", "CanSelectFolderZone" ]
}
Sets the roles for a user (roles not provided will be disabled.)
The following roles can be set to the user through this call (depending on User type): CanCreateFolders, CanSelectFolderZone, CanUseFileBox, CanManageUsers, AdminSharedAddressBook, CanChangePassword, CanManageMySettings, AdminManageDropBox
| parentid | String | User Identifier |
| user | User | User object containing roles to set |
Returns: a modified user record
POST https://account.sf-api.com/sf/v3/Users(id)/RemoveRoles
[ "CanManageUsers", "CanSelectFolderZone" ]
Removes the roles for user.
The following roles can be removed from user through this call (depending on User type): CanCreateFolders, CanSelectFolderZone, CanUseFileBox, CanManageUsers, AdminSharedAddressBook, CanChangePassword, CanManageMySettings
| userId | String | User Identifier |
| userRoles | UserRole[] | List of User Roles to be revoked |
PATCH https://account.sf-api.com/sf/v3/Users/AccountUser(id)
{
"FirstName":"FirstName",
"LastName":"LastName",
"Company":"Company",
"Email":"user@domain.com",
"StorageQuotaLimitGB":100,
"Bandwidth": 50,
"Security":
{
"IsDisabled":false
},
"DefaultZone":
{
"Id":"newzoneid"
}
}
Modifies an existing user object
The following parameters can be modified through this call: FirstName, LastName, Company, Email, IsEmployee, IsDisabled, DefaultZone Id, StorageQuotaLimitGB, Bandwidth.
During a promotion (the user id points to Customer), the following parameters can be modified: CanCreateFolders, CanUseFileBox, CanManageUsers.
StorageQuotaLimitGB equal to -1 sets the user quota to the account default storage quota value.
Bandwidth equal to -1 sets the user bandwidth to unlimited.
| id | String | User Identifier |
| user | AccountUser | User object containing parameters to modify |
Returns: a modified user record
GET https://account.sf-api.com/sf/v3/Users(id)/HomeFolder
GET https://account.sf-api.com/sf/v3/Users/HomeFolder
Returns a user's home folder
| id | String | User identifier. If not provided, the current user is used |
Returns: A folder record representing the requesting user home folder
GET https://account.sf-api.com/sf/v3/Users(id)/TopFolders
| id | String | User Identifier |
Returns: User's Top Folders
GET https://account.sf-api.com/sf/v3/Users(id)/Box
| id | String | User Identifier |
Returns: User's FileBox children
GET https://account.sf-api.com/sf/v3/Users(id)/FileBox
| id | String | User Identifier |
Returns: User's FileBox
GET https://account.sf-api.com/sf/v3/Users/Preferences
GET https://account.sf-api.com/sf/v3/Users(id)/Preferences
Retrieves the User preferences record - all user-selected prefernces, such as timezone, time format, sort preferences, etc.
| id | String | User identifier. Default is currently logged on user. |
Returns: the user selected preferences
PATCH https://account.sf-api.com/sf/v3/Users(id)/Preferences
{
"EnableFlashUpload":"true",
"EnableJavaUpload":"true",
"...":"..."
}
| parentid | String | User identifier |
| preferences | UserPreferences | Preferences to modify |
Returns:
GET https://account.sf-api.com/sf/v3/Users/Security
GET https://account.sf-api.com/sf/v3/Users(id)/Security
Retrieve the user security record - current state of the user regarding security and password settings.
| id | String | User identifier. Default is currently logged on user. |
Returns: the user security status
POST https://account.sf-api.com/sf/v3/Users/ResetPassword?notify=false
{
"NewPassword":"new password",
"OldPassword":"old password"
}
Resets the current user password.
| properties | ODataObject | |
| notify | Boolean | If set to true, a notification email will be sent to the user affected by this change. |
Returns: The modified user record
POST https://account.sf-api.com/sf/v3/Users/ForgotPassword?email=email&resetOnMobile=false&initiatedByAdmin=false
Triggers a reset password email
| String | Email address | |
| resetOnMobile | Boolean | If the action is called through mobile |
| initiatedByAdmin | Boolean | If the action is initiated by the admin |
POST https://account.sf-api.com/sf/v3/Users(id)/ResendWelcome
Resends the 'welcome' email to the given user. This endpoint has been deprecated in favor of "Send Welcome Notification," but it will continue to be supported in the current version of the Api.
| id | String | User identifier |
| customMessage | String | Custom message to the user when sending the welcome email |
| notifySender | Boolean | Send a copy of the welcome email without the activation link to the Sender |
POST https://account.sf-api.com/sf/v3/Users(id)/WelcomeNotification
{
"CustomMessage": "Message",
"NotifySender": true
}
Sends a Welcome email to the given User. An optional custom message can be added to the standard email
The following properties from WelcomeNotificationParameters are used: CustomMessage, and NotifySender.
| id | String | User identifier |
| parameters | WelcomeNotificationParameters | Notification body that contains properties: { CustomMessage: string, NotifySender: boolean } |
DELETE https://account.sf-api.com/sf/v3/Users(id)?completely=false&itemsReassignTo=id&groupsReassignTo=id
Removes an user
| id | String | User identifier |
| completely | Boolean | If set, all user records will be removed. Otherwise, the user will be disabled, but not removed from the system. A complete removal is not recoverable. |
| itemsReassignTo | String | If set, all user item records will be reassigned to the user provided. |
| groupsReassignTo | String | If set, all user group records will be reassigned to the user provided. |
DELETE https://account.sf-api.com/sf/v3/Users/Clients
["id1","id2"]
Removes a list of client users. The list should not exceed 100 client user ids.
| clientIds | String[] | List of client user ids to be deleted |
POST https://account.sf-api.com/sf/v3/Users/Clients/BulkDelete
{
UserIds: ["id1", "id2"]
}
Removes a list of client users. The list should not exceed 100 client user ids.
| deleteRequest | UserBulkOperationRequest | UserBulkOperationRequest |
Returns: 204 if successful
POST https://account.sf-api.com/sf/v3/Users/Employees/Downgrade
{
UserIds: ["id1", "id2"],
ReassignItemsToId: "id3",
ReassignGroupsToId: "id3"
}
Downgrades a list of employee users to clients. The list should not exceed 100 employee user ids.
| downgradeRequest | UserBulkDowngradeRequest | UserBulkDowngradeRequest |
Returns: 204 if successful
POST https://account.sf-api.com/sf/v3/Users/Confirm
{
"FirstName":"",
"LastName":"",
"Company":"",
"Password":"",
"SecurityQuestion":"",
"SecurityQuestionAnswer":"",
"DayLightName":"",
"UTCOffset":"",
"DateFormat":"",
"TimeFormat":"",
"EmailInterval":0,
"UserNotificationLocale":"Spanish"
}
| settings | UserConfirmationSettings | confirmation settings |
Returns: no data on success
POST https://account.sf-api.com/sf/v3/Users/DeleteEmailAddress?email=example%40sharefile.com
| String | the email address to be deleted |
Returns: User
POST https://account.sf-api.com/sf/v3/Users/MakePrimary?email=example%40sharefile.com
| String | the email address you want to set primary as |
Returns: User
POST https://account.sf-api.com/sf/v3/Users/SendConfirmationEmail?email=example%40sharefile.com
| String | the email address you want to send notification to |
Returns: User
POST https://account.sf-api.com/sf/v3/Users/SendEmailVerificationCode?email=example%40sharefile.com
| String | Email address |
Returns: 204 if successful
POST https://account.sf-api.com/sf/v3/Users/SendEmailVerificationCodeForMarketing?email=example%40sharefile.com
| String | Email address |
Returns: ResponseWrapper with EmailVerificationCodeMarketingData object if successful
POST https://account.sf-api.com/sf/v3/Users/VerifyEmailAddress?email=example%40sharefile.com&verificationCode=000000
| String | Email address | |
| verificationCode | String | Verification code |
Returns: 204 if successful
POST https://account.sf-api.com/sf/v3/Users/WebAppLink
Returns: Redirection populated with link in Uri field
GET https://account.sf-api.com/sf/v3/Users/InboxMetadata
GET https://account.sf-api.com/sf/v3/Users(userId)/InboxMetadata
Returns metadata of the inbox.
User identifier
Returns: Inbox metadata
GET https://account.sf-api.com/sf/v3/Users/Inbox
GET https://account.sf-api.com/sf/v3/Users(id)/Inbox
Retrieve all outstanding Shares in the inbox.
User identifier
Returns: List of Shares created by the authenticated user
GET https://account.sf-api.com/sf/v3/Users/SentMessages
GET https://account.sf-api.com/sf/v3/Users(userId)/SentMessages
Returns sent messages for the given user.
User identifier
Returns: Feed of Shares
POST https://account.sf-api.com/sf/v3/Users(userId)/WebAppManageUser
| id | String | User identifier |
Returns: Redirection populated with link in Uri field
POST https://account.sf-api.com/sf/v3/Users/WebAppManageUsers
Returns: Redirection populated with link in Uri field
POST https://account.sf-api.com/sf/v3/Users/WebAppAddEmployee
Returns: Redirection populated with link in Uri field