Grass Roots Survey Mobile App

Heroku Initial Setup

Updated on

What's Heroku?

Heroku is the app that shakes hands both with your Salesforce organization AND your mobile phone. Heroku makes it possible to have many field workers out collecting data on their phones, but using up only ONE Salesforce license. Remember your "integration user"? That's the one license that the Grassroots Mobile App uses. Let's get Heroku set up. We use the free version, so if you are asked for your credit card, just know you won't be needing to pay anything.

Sign up for Heroku: https://www.heroku.com/home

To Set Up Multi-Factor Authentication

Multi-Factor Authentication (MFA) means that just having a password and a secret word aren't really enough to keep your account and your data safe. Salesforce, as a company, has moved to requiring MFA. Trust, after all, is Salesforce's most important product. Here's how to set this up on your Heroku account.

Go to Account Settings (under your profile picture or icon in the upper right corner of the page.)

Personal apps | Heroku - Google Chrome

Enable MFA

Scroll down to the MFA section and click Enable Multi-Factor Authentication. These are the options. I opted for the Salesforce Authenticator and the Recovery Codes (which come with a list of codes to plug in when you don't have access to a phone that will verify your login.) Be sure to save the document with the codes in a secure but unforgettable place!

Here are the other options, with short explanations. Press Add to get more info on each option.

Microsoft and Google Authenticator.-- One time password generator

Security Key - for example, a physical device that generates a one-time code

Built-in - Fingerprint on phone, Your laptop

Below is the Multi-Factor Authentication section on the Account Settings, showing that Multi-Factor Authentication is enabled.

Deploy the Login API app

Use the convenient purple button on the page to deploy the code to set up Heroku's Login API app for the phone.

Heroku Initial Setup · SFDO-Community-Sprints/GrassRootsMobileSurveyApp Wiki - Google Chrome

You'll get this screen, and can fill in the details. You can leave the App Name blank, and Heroku will give you an app name, or you can add the name of your organization + Grassroots Mobile App or some other name of your choice.

Create New App | Heroku - Google Chrome

Configure the Variables

Here's how:

Enter the Salesforce password, Security Token and Username of the Integration User you set up in the GrassRootsSurveySalesforcePackage install.

Forgot how to get your security token? Jump back to the Post-Install Configuration article and there are detailed instructions there.

Create New App | Heroku - Google Chrome

Salesforce login may need to be test.salesforce.com if you are installing in a sandbox.
Sandboxes have CS in the beginning of the instance.

Before I could deploy the app, however, I needed to verify my account by providing credit card information. If you click Deploy App, Heroku will remind you to enter your credit card info.

LastPass holds all the variables for me. I hope you have a good place to keep these details until they are installed in Heroku.

Manage the App

Click Manage App

Create New App | Heroku - Google Chrome

Click on the Auth0 app

shielded-everglades-15212 | Heroku - Google Chrome

Click on Applications> Applications> Default App

Tenant Settings - Google Chrome

Go to Settings

Tenant Settings - Google Chrome

Go to Advanced Settings at the bottom of the page

SCREENSHOT ON THE ADVANCED

Go to Grant Types Tab and enable the Password Checkbox. Save Changes.

Application Details - Google Chrome

 

Does the MFA work properly if we don't check that box? Or do we need to?

Add Users

These are the folks who will be using the app, but have no license to access Salesforce. Field workers, disaster relief workers, health workers, elder care workers, in-home care visitors, etc.

Check on the left side of the page for User Management

Users - Google Chrome
Users - Google Chrome

Create Users for all your Field Workers. The email should be the Field Worker's Login Email field from the Salesforce contact page.

Users - Google Chrome

With each user you add, you'll get an email asking you to verify the account for this Heroku user.

Mail - Patricia Perkins - Outlook - Google Chrome
Mail - Patricia Perkins - Outlook - Google Chrome

User Details

You'll have a user page for each of the Field Workers you add to Heroku

Email Verification - Google Chrome
Previous Article Create your first Survey
Next Article Heroku Troubleshooting