Sign in with Apple

iOS mobile apps must display the Sign in with Apple option if they also use other social providers such as Meta Connect (Facebook Login), Google Connect or some other social login provider. For more, see the Apple guidelines.

To use Sign in with Apple with ReachFive, you need your Apple App ID, Service ID, and Key. These are found in your Apple Developer account.

You must have an Apple Developer Program membership with the App Manager role to use the Sign in with Apple feature and follow these instructions.

Default values

The default values available to ReachFive from Apple are:

  • name

  • email

Best Practice

Even if it’s only mandatory to use Sign in with Apple in your iOS app, we still highly recommend pushing the Sign in with Apple option on your websites to offer a consistent authentication experience to your customers.

Create Apple Developer IDs

If you want to use Sign In with Apple using ReachFive, you, of course, need to have an Apple app ID. The instructions here guide you on setting up the necessary IDs and keys to seamlessly integrate Sign In with Apple with ReachFive.

The flow is as follows:

Though every effort is made to keep up-to-date instructions for the Apple side of things, some screenshots and steps may not reflect the latest Apple on-screen instructions. For the latest, see Apple’s developer documentation.

Prerequisites

Access Apple Developer

  1. Log in to your Apple Developer account.

  2. Navigate to your Account overview page.

  3. Go to Certificates, Identifiers & Profiles.

    This is typically on the center of the page or in the sidebar.

    apple developer certsAndIds


Next Step

Create your App ID

Create your App ID

  1. Go to the Identifiers section.

  2. Click the plus sign.

    apple developer add identifier

  3. Select App IDs from the list and click Continue.

    apple developer identifier appId

  4. Under Register a new identifier, select the type, App and click Continue.

    apple developer identifier Type

  1. Under Register an Apple ID, add a Description and Bundle ID.

    apple developer identifier registerApp

    1. Be sure to add the Sign in with Apple capability to your app by scrolling down and selecting Sign in with Apple.

      apple developer signInWithApple

  2. To Confirm your App ID, click Register.

    apple developer identifier confirmRegister


Create your App Services ID

You can associate as many service IDs with your app as your want. In this case, we’re going to set up Sign In with Apple.

  1. Go to the Identifiers section.

  2. Click the plus sign.

    apple developer add identifier

  3. Select Services IDs from the list and click Continue.

    apple developer identifier serviceId

  4. Under Register a Services ID, add a Description and the Identifier you want associated with the Service ID.

    The Description is what your users will see when signing in via Sign in with Apple. To edit this field after creation, see Edit your Apple app name.

    The Identifier is typically similar to the Bundle ID you entered when creating the App ID. However, it must be different than the Bundle ID.

    Example
    net.reach5.integ-appName (1)
    net.reach5.integ-appName.service (2)
    1 Example of Bundle ID.
    2 Example of Service ID.

    apple developer identifier serviceId register

  5. Go back to the Identifiers section and select your newly-created Service ID.

    apple developer identifier serviceId list

  6. Under Edit your Services ID Configuration, enable Sign In with Apple and click Configure.

    • Sign In with Apple

      apple developer identifier serviceId list configure

  7. In the Web Authentication Configuration pop-up:

    1. Select your Primary App ID from the drop-down list.

    2. Enter the Domains and Subdomains that will support Sign In with Apple.

      • Production

      • Staging

      console.reach5.co
      console-staging.reach5.co
    3. Enter the Return URLs.

      Return URLs
      https://{REACHFIVE_DOMAIN}/login/callback

      apple developer identifier serviceId webAuth


Create your Private Key

  1. Go to Keys.

  2. Click the plus sign.

    apple developer add key

  3. Under Register a New Key:

    1. Select Sign In with Apple and click Configure.

      apple developer key register

    2. Under Configure Key, select your Primary App ID from the drop-down list and click Save.

      apple developer key configure

  4. Click Continue under Register a New Key now that you have configured Sign in with Apple.

  5. On the next screen, click Register to register the key.

  6. You now have a chance to download the key.

    From Apple : After downloading your key, it cannot be re-downloaded as the server copy is removed. If you are not prepared to download your key at this time, click Done and download it at a later time. Be sure to save a backup of your key in a secure place.
  7. If you are ready, click Download to download your key.

    Make sure you do not lose this key as you’ll need it when you are <<connecting ReachFive to your Apple IDs.


Connect ReachFive to Apple

Now that you have set up what you need in your Apple Developer account, you can use those values to sync ReachFive with your Apple account, allowing you to finally leverage Sign in with Apple.

The data that you collect requires user consent. Users can choose to mask their email address, so you will need to configure your SMTP server to be able to use Apple’s private email relay service.

For more on how to do this, see Anonymized emails.

Variants

Only available for those using 7.1.0+ of our iOS SDK.

You can add variants of your Sign in with Apple provider, in case you have both web and native app use cases.

You should follow the instructions below on how to add a variant as there are some differences.

When do I need to add a variant?

Are you using webviewLogin for all iOS authentication?

  • Yes → You do not need to add a variant.
    Using webviewLogin for all authentication flows, including Sign in with Apple (SiWA), requires no variant.

  • No → You must create an iOS Variant
    The iOS variant must be linked to the Bundle ID (different from the Service ID, which is used for webviewLogin).

Instructions

You should repeat these instructions for each variant you create in the ReachFive Console.

  1. Go to Providers.

  2. Click Apple.

  3. Edit the default tab or add a variant.

    To create a variant, click the plus sign next to current tab in the dialog.

    Create variant tab console view

    When creating a variant for your native iOS app, the text ios must be in the name of the variant.

    create variant tab
  4. Fill in the dialog.

    1. Enter your Client ID.

      Value mapping

      The ReachFive Client ID maps to different IDs from Apple depending on the context.

      • Web: ReachFive Console Client ID Services ID (reverse domain)

      • Native iOS app: ReachFive Console Client ID Bundle ID

      Note this is the Bundle ID of your Apple application.

    2. Enter your Team ID.

      Value mapping

      ReachFive Console Team ID Prefix before domain

    3. Enter your Key ID.

      Value mapping

      ReachFive Console Key ID Key ID

    4. Select name and email for your Permissions. These are the default public profile values for Apple.

    5. Paste the private key (.p8 extension) that you downloaded earlier.

    6. Don’t forget to Save your input.

      select apple console

Go further

Want to make sure your users see your App Name while authenticating or need to make an edit on the Apple side of things? Check out Edit your Apple app name.

Implementing your own buttons

If you want to implement your own button and not use our widget, be sure to closely follow the Apple Guidelines.

That’s all folks!

That’s all you need to implement Sign in with Apple on your mobile app with ReachFive.