Access-cli supports adding and editing users in batch mode, importing data from JSON or CSV files. Batch operations on users use the common batch mode flags.
- JSON files should contain an array of objects, each containing the fields for each user one wishes to add or edit.
- CSV files should be comma-separated. They must contain a header, specifying the fields and their order, followed by the records (one per line).
When editing users, unspecified and non-mandatory fields remain unchanged.
Fields
The expected fields for each format are as follows:
JSON Field Name | JSON Type | CSV Field Name | Example | Description | Mandatory |
---|---|---|---|---|---|
id | integer | ID | 123 | ID of the user to edit. Used only when editing | When editing |
name | string | Name | John Doe | Name of the user | When adding |
email | string | Email | john@site.com | Email address of the user | No |
group_ids | integer array | GroupIds | [12,56] | User group IDs. In CSV, surround by quotes | No |
enabled | boolean | Enabled | true | Whether the user is enabled | No |
send_email _invitation | boolean | SendEmail Invitation | false | Whether to send an email invitation. Used only when adding | No |
File Examples
Adding Users
JSON
[
{
"name": "User 1", "email": "1@example.com",
"group_ids": [34,56], "enabled": true, "send_email_invitation": false
},
{
"name": "User 2", "email": "2@example.com",
"group_ids": [], "enabled": true, "send_email_invitation": true
}
]
$ access-cli users add --from-file=example.json
CSV
Name,Email,GroupIds,Enabled,SendEmailInvitation
User 1,1@example.com,"[34,56]",true,false
User 2,2@example.com,[],true,true
$ access-cli users add --from-file=example.csv --file-format=csv
Editing Users
JSON
[
{
"id": 12, "name": "User 1", "email": "1@example.com",
"group_ids": [], "enabled": false
},
{
"id": 34, "name": "User 2", "email": "2@example.com",
"group_ids": [34,56], "enabled": true
}
]
$ access-cli users edit --from-file=example.json
CSV
ID,Name,Email,GroupIds,Enabled
12,User 1,1@example.com,[],false
34,User 2,2@example.com,"[34,56]",true
$ access-cli users edit --from-file=example.csv --file-format=csv