Create Multiple Users
Create new users and assign them to Vaults in bulk. You can also add multiple existing users as cross-domain users or VeevaID users.
- The maximum input file size is 1GB.
- The values in the input must be UTF-8 encoded.
- CSVs must follow the standard RFC 4180 format, with some exceptions.
- The maximum batch size is 500.
/api/{version}/objects/usersHeaders
Section link for Headers| Name | Description |
|---|---|
Content-Type | application/json or text/csv |
Accept | application/json (default) or text/csv |
Body Parameters
Section link for Body ParametersPrepare a JSON or CSV input file. You may add values to any other editable user field, unless you are adding a cross-domain user or VeevaID user. See Retrieve Users for all possible values. Using only the required fields will add users to your domain but will not assign them to individual Vaults within your domain. To assign users to individual Vaults, you must also use the required Vault Membership parameters.
| Name | Description |
|---|---|
user_name__vrequired | The user’s Vault username (login credential). For example, ewoodhouse@veepharm.com |
user_first_name__vrequired | The user's first name. |
user_last_name__vrequired | The user's last name. |
user_email__vrequired | The user's email address. |
user_timezone__vrequired | The user's time zone. Retrieve values from Retrieve Users. |
user_locale__vrequired | The user's location. Retrieve values from Retrieve Users. |
security_policy_id__vrequired | The user's security policy. Retrieve values from Retrieve All Security Policies. |
user_language__vrequired | The user's preferred language. Retrieve values from Retrieve Users. |
domainoptional | If you set this to true, the user will not be assigned to a Vault. |
security_profile__voptional | The user’s security profile. If omitted, the default value is document_user__v. |
license_type__voptional | The license type is the first level of access control that Vault applies to a user. If your Vault utilizes user-based licensing, assign application licensing using the app_licensing field. |
vault_membershipoptional | Use this field to assign a user to individual Vaults within your domain. This is required to create cross-domain users or VeevaID users. Learn how to configure this parameter in the Vault Membership section. |
app_licensingoptional | Use this field to assign a user to individual applications within your Vault. Learn how to configure this parameter in the Application Licensing section. |
Vault Membership
Section link for Vault MembershipTo assign user permissions across Vaults, create cross-domain users,or create VeevaID users, you must include the vault_membership column configured with the following fields:
| Name | Description |
|---|---|
vault_idrequired | The Vault ID to assign the user to. |
active__voptional | Set the user to active (true) or inactive (false). If not specified, default value is true. |
security_profile__voptional | Set the user's security profile, for example, read_only_user__v. If not specified, this value defaults to document_user__v. |
license_type__voptional | Set the user's license type, for example, read_only__v. If not specified, this value defaults to full__v. |
For example, to add an active user to Vault ID 3003 with the system_admin__v security profile and the full__v license type:
vault_membership |
|---|
3003:true:system_admin__v:full__v |
Application Licensing
Section link for Application LicensingTo add a user to specific applications within a Vault or across Vaults, you must include the app_licensing column configured with the following fields:
| Name | Description |
|---|---|
vault_idrequired | The Vault ID to assign the user to. |
active__voptional | Set the user to active (true) or inactive (false). If not specified, default value is true. |
application_namerequired | The application to add the user to. For example, use rimReg_v to assign a user to the RIM Registrations application. |
license_type__voptional | Set the user's license type for a specific application, for example, read_only__v. You must select a license value for at least one application. Possible values are:
license_type__v for an application cannot be more permissive than the user's Vault-wide license type. If omitted, the default value is full__v. The request fails if you provide an invalid license_type__v value for a specific application. Learn more about valid license values by application in Vault Help |
The format for adding these fields is:
{vault_id}|{application_name}{:active__v}{:license_type__v}
To add a user to more than one application, separate the applications with a pipe. To add a user to applications in multiple Vaults, separate the Vaults with a semicolon. For example:
app_licensing |
|---|
3003|rimReg_v:true:full__v|rimSubs_v:true:full__v;4112|rimSubs_v:true:full__v |
This adds an active user to both RIM Registrations and RIM Submissions in Vault ID 3003, and to the RIM Submissions application in Vault ID 4112, all with the full__v license type.
Add Cross-Domain Users
Section link for Add Cross-Domain UsersThe following are the only fields required to add cross-domain users. All other fields are ignored. Learn more about cross-domain users in Vault Help
| Name | Description |
|---|---|
user_name__vrequired | The user’s Vault username (login credential). For example, ewoodhouse@veepharm.com. |
vault_membershiprequired | Assign this user permissions across domains. Learn how to configure this parameter in the Vault Membership section. |
Add VeevaID Users
Section link for Add VeevaID UsersThe following are the only fields required to add an existing VeevaID user to Vault. All other fields are ignored.
| Name | Description |
|---|---|
user_name__vrequired | The user’s Vault username (login credential). For example, ewoodhouse@veepharm.com. |
vault_membershiprequired | Assign this user permissions across domains. Learn how to configure this parameter in the Vault Membership section. |
security_policy_id__vrequired | The name__v value of your Vault’s VeevaID security profile, for example, 25285. You can retrieve this ID from the Retrieve All Security Policies endpoint. |
Upsert Users
Section link for Upsert UsersUpsert is a combination of create and update. Use one input file to create new users and update existing users at the same time. If a matching user record is found in your Vault, it is updated with the field values specified in the input. If no matching user record is found, a new user is created using values in the input.
Query Parameters
Section link for Query Parameters| Name | Description |
|---|---|
operation | To upsert users, you must include operation=upsert |
idParam | To upsert users, you must include either idParam=id or idParam=user_name__v to the request endpoint. |
Request
Section link for Requestcurl -X POST -H "Authorization: {SESSION_ID}" \
-H "Content-Type: text/csv" \
-H "Accept: text/csv" \
--data-raw 'user_name__v,user_first_name__v,user_last_name__v,user_email__v,user_timezone__v,user_locale__v,user_language__v,security_policy_id__v,vault_membership,app_licensing
jim@veevapharm.com,Jim,Nabors,jim@veevapharm.com,America/Denver,en_US,en,821,3003:true:business_admin__v:full__v,3003|rimSubs_v:true:full__v
steve@veevapharm.com,Steve,Perry,steve@veevapharm.com,Europe/London,en_GB,en,821,3003:true:document_user__v:full__v,3003|rimSubs_v:true:full__v
megan@veevapharm.com,Megan,Murray,megan@veevapharm.com,Australia/Sydney,en_AU,en,554,4114:true:system_admin__v:full__v,3003|rimSubs_v:true:full__v|rimSubsArch_v:true:full__v
igor@veevapharm.com,Igor,Sikorsky,igor@veevapharm.com,Asia/Shanghai,zh_CN,zh_CN,554,3003:true:document_user__v:full__v,3003|rimSubs_v:true:full__v|rimSubsArch_v:true:full__v;4114rimReg_v:true:full__v' \
https://myvault.veevavault.com/api/v26.1/objects/usersResponse
Section link for Response{
"responseStatus":"SUCCESS",
"data":[
{
"responseStatus":"SUCCESS",
"id":"12021"
},
{
"responseStatus":"SUCCESS",
"id":"12022"
},
{
"responseStatus":"SUCCESS",
"id":"12023"
},
{
"responseStatus":"FAILURE",
"errors":[
{
"type":"INVALID_DATA",
"message":"Error message describing why this user was not created."
}
]
}
]
}Response Details
Section link for Response DetailsOn SUCCESS, Vault responds will list the id of each user. The order results are displayed in the response is the same as the order of records in the input.