Change Email Script Template

Change Email Script Template

The Change Email script implements the defined function when a user's email address or their email address verification status changes. We recommend naming this function changeEmail.

The script is only used in a legacy authentication scenario, and is required if you want to update a user's email address (and/or email address verification status) in Auth0 and your external database in the same operation.

The Change Email script is not configurable through the Auth0 Dashboard. To manage this script, you must use the Auth0 Management API Create a connection or Update a connection endpoint, or the Auth0 Deploy CLI.

ChangeEmail function

The changeEmail function should:

  • Update the user's email address in the external database.

  • Return an error if the operation failed or an error occurred.

Definition

The changeEmail function accepts four parameters and returns a callback function:

changeEmail(email, newEmail, verified, callback): function

Was this helpful?

/

Parameter Type Description
email String User's current email address.
newEmail String Value to be set as user's new email address in external database.
verified Boolean Email verification status of the new email address.
callback Function Used to pass error data through the pipeline.

Example

This is a pseudo-JavaScript example of how you could implement the changeEmail function:

function (email, newEmail, verified, callback) {
  // Prepare the API call
  let options = {
    url: "https://example.com/api/users",
    action: "PATCH",
    body: {
      email: email,
      new_email: newEmail,
      email_verified: verified
    }
  };

  // Call the API
  send(options, err => {
    // Return `false` value in callback if operation failed
    if (err && err.id == "FAIL_CHANGE_EMAIL") {
      return callback(null, false);
    } else if (err) {
      // Return error in callback if unspecified error occurred
      return callback(new Error("My custom error message."));
    }

    // Return `true` value in callback if operation succeeded
    return callback(null, true);
  });

Was this helpful?

/

Callback function

The callback function accepts two parameters and returns a function.

Definition

callback(error, operationResult): function

Was this helpful?

/

Parameter Type Required Description
error Object Required Contains error data.
operationResult Boolean Optional Indicates the result of the change email operation.

Return a success

If the change email operation succeeded, return the callback function, and pass a null value as the error parameter and a true value as the operationResult parameter:

return callback(null, true);

Was this helpful?

/

Return a failure

If the change email operation failed, return the callback function, and pass a null value as the error parameter and a false value as the operationResult parameter:

return callback(null, false);

Was this helpful?

/

Return an error

If an error occurred, return the callback function, and pass relevant error information as the error parameter:

return callback(new Error("My custom error message."));

Was this helpful?

/

Learn more