Delete user profiles in bulk
You can delete user profiles in bulk by using the Import job definition. Although the import job feature is used, the logic is actually deleting the user profiles. The import job definition handles importing, updating, and in this case, removing unwanted or inactive user profiles. The section below instructs you on how to delete profiles in bulk via the ReachFive Console.
Delete user profiles from console
You may wish to remove unwanted to inactive user profiles from your system. Do this by removing the profiles via the ReachFive Console.
Prerequisites
-
You must have access to the ReachFive Console.
-
You must have a Developer, Manager, or Administrator role.
-
You must have the Import Jobs feature enabled.
Multi-threaded imports
Our import jobs are multi-threaded. This means that many profiles are imported simultaneously. Therefore, it’s important that you ensure all profiles are unique; otherwise, you may get duplicate profiles.
We strongly encourage you to check the following fields to ensure each profile is unique:
-
email
-
external_id
-
custom_identifier
-
phone_number
(if SMS feature is enabled)
See the User Profile for more on these fields.
Instructions
The instructions below apply to both creating and editing an import job definition.
If editing an existing import job, be sure to select the ![]() |
-
Go to
. -
Select New definition.
-
Under General, give the import job a name and description. Don’t forget to Enable the job.
-
Under Source, choose the protocol you wish to use to import the file.
-
Specify the Server host for the secure FTP site.
-
Specify the Server port.
-
Under Authentication method, choose the authentication method type:
Username and password:
-
Enter the Username for the server.
-
Enter the Password for the server.
OpenSSH:
-
Enter the Username for the server.
-
Enter the OpenSSH private key.
example-----BEGIN ENCRYPTED PRIVATE KEY----- MIIBpjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQI5yNCu9T5SnsCAggA MBQGCCqGSIb3DQMHBAhJISTgOAxtYwSCAWDXK/a1lxHIbRZHud1tfRMR4ROqkmr4 kVGAnfqTyGptZUt3ZtBgrYlFAaZ1z0wxnhmhn3KIbqebI4w0cIL/3tmQ6eBD1Ad1 nSEjUxZCuzTkimXQ88wZLzIS9KHc8GhINiUu5rKWbyvWA13Ykc0w65Ot5MSw3cQc w1LEDJjTculyDcRQgiRfKH5376qTzukileeTrNebNq+wbhY1kEPAHojercB7d10E +QcbjJX1Tb1Zangom1qH9t/pepmV0Hn4EMzDs6DS2SWTffTddTY4dQzvksmLkP+J i8hkFIZwUkWpT9/k7MeklgtTiy0lR/Jj9CxAIQVxP8alLWbIqwCNRApleSmqtitt Z+NdsuNeTm3iUaPGYSw237tjLyVE6pr0EJqLv7VUClvJvBnH2qhQEtWYB9gvE1dS BioGu40pXVfjiLqhEKVVVEoHpI32oMkojhCGJs8Oow4bAxkzQFCtuWB1 -----END ENCRYPTED PRIVATE KEY-----
-
-
Specify the Path where the import file is located.
- For example
-
<serverhost>/path-to-file/file.csv
.
-
Specify the URL for the S3 bucket.
-
Specify the name Bucket.
-
Enter the Region for the server.
-
Enter the Access key for AWS.
-
Enter the Secret key for AWS.
-
Specify the Path where the import file is located.
- For example
-
<serverhost>/path-to-file/file.csv
.
-
Specify the Project ID for the Google Cloud Storage.
-
Specify the App name.
-
Enter the User name for the server.
-
Specify the name Bucket.
-
Enter the Credentials in JSON format.
-
Specify the Path where the import file is located.
- For example
-
<serverhost>/path-to-file/file.csv
.
-
-
If you are importing files with additional encryption:
-
Select Encrypt.
-
Enter your password that is used as part of the encryption.
-
Specify the number of PBKDF2 iterations you used.
-
-
Under Schedule, if desired, use a cron expression for scheduling the job.
-
Under File format, select the file format type you wish to import. This will be either JSON or CSV.
Choose the Encoding standard for your JSON file.
{ "external_id": "1", "email": "foo@gmail.com" } \n (1) { "email": "bar@gmail.com", "name": "Joe", "gender": "M", "custom_fields": { (2) "has_loyalty_card": true }, "consents": { (3) "exampleConsent": { "date": "2021-11-23T11:42:40.858Z", "consent_version": { "language": "fr", "version_id": 1 }, "granted": true, "consent_type": "opt-in", "reporter": "managed" } } }
1 Each profile must separated by a line feed character ( \n
).2 Import custom_fields
as an object containing a series of fields.3 Import consents
as an object or as a flattened field with the formatconsents.<consent>.<parameter>
shown below.... "consents.cgu.date": "2021-09-03T19:08:01Z", "consents.cgu.granted": true, "consents.cgu.consent_version.version_id": 2, "consents.cgu.consent_version.language": "fr", "consents.cgu.consent_type": "opt-in", "consents.cgu.reporter": "managed" ...
-
Choose the Encoding standard for your CSV file.
-
Enter your Delimiter. The default is
;
. -
Enter your Quote char. The default is
"
. -
Enter your Escape character. The default is
\
.
email,name,gender,custom_fields.has_loyalty_card,consents.newsletter.consent_type,consents.newsletter.granted,consents.newsletter.date,consents.newsletter.reporter bar@gmail.com,Joe,M,true,opt-in,true,2018-05-25T15:41:09.671Z,managed
-
-
If desired, enable the End Job Notification Webhook.
For more information on the webhook, see the End Job Notification Webhook page.
Job reports
Job reports provide a snapshot of the different export and import jobs that you have run. Information such as the id
, a definition, the job type, the progress of the job, the job’s status, and when the job was last run is provided for you so you can get a quick look at the latest jobs. To find more information about the job, you can view the job logs.
Only job reports run in the last 6 months are displayed on the Job reports page in the ReachFive Console. Older jobs are automatically deleted.
To access job reports:
-
Open your ReachFive Console.
-
Go to
.The following statuses are possible for job reports:
-
FAILURE which indicates the job has failed. Check out the logs for more information.
-
WAITING which indicates the job has yet to finish.
-
SUCCESS which indicates the job was successfully run.
For Bulk deletion jobs:
-
If the job runs completely through the file, the Succeeded: <N> and Failed: <N> displayed on the Job Report accurately reflect the number of profiles successfully deleted and those that weren’t successfully deleted.
-
If the job is stopped during execution, the Succeeded: <N> and Failed: <N> displayed on the Job Report are only an estimate of the number of profiles successfully deleted and those that weren’t successfully deleted.
-
Job logs
To view more information on the job itself or download the logs, click Show logs found on the far right hand side of the table.
In the job logs, you can see the information Level, the Content of the information, and the Date on which it occurred.
Category | Description | Example |
---|---|---|
Level |
Denotes the level of the log information. possible values
|
ERROR |
Content |
Gives a description of the log information. |
"Export profiles from beginning" |
Date |
The timestamp for the log information. |
|
Download logs
You can download full logs or just the errors by clicking the desired dropdown and choosing the format for the download.

{"Level":"LOG","Content":"Export profiles from beginning","Date":"2023-04-02T00:00:00.899Z"}
{"Level":"LOG","Content":"Total profiles to export: 47","Date":"2023-04-02T00:00:01.296Z"}
{"Level":"LOG","Content":"Uploading to path: /uploads/weekly-export.csv","Date":"2023-04-02T00:00:01.298Z"}
{"Level":"ERROR","Content":"Error occurred: Invalid SFTP credentials.","Date":"2023-04-02T00:00:06.991Z"} (1)
1 | Shows where the ERROR occurred and gives details on what the error was. |
Export logs
You can export logs for a specific job using the Management API’s Export job logs endpoint.