> ## Documentation Index
> Fetch the complete documentation index at: https://docs.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Send a new verification message

This is the standard use case delivered by the [Send Verification](c_sendVerification) Process.

An authenticated user selects to send a verification message to either an e-mail address or phone number, as they may have misplaced or accidentally deleted the previous one. The email/mobile is registered to this user, but it still has an `activating` or `pending` status.

## Request

Your client calls the [Process Start](c_processStart) API to initialize the Process. Unlike most Process Start-based Processes, Send Verification requires the client to provide the target authN ID upfront in the initial request.

```
**POST https://\{your.url\}/process/start/userManagement.SendVerification.v1.0?authnIdentifier=bob@example.com**
```

**Note:** In this example use case, the client provides the authN ID in the API request URL. However, the client can specify the authN ID in the request body.

## Response

If the target authN ID is valid, then Storefront Gateway issues a new action token, and sends it (either as a clickable link, an OTP, or both) to the target email address or mobile number. The Process then returns an `HTTP 200` status:

```
**RESPONSE - body**
{
   "processId": "501da7c2-77c5-4a2f-a83b-2ddb62f186c0",
   "processName": "userManagement.SendVerification.v1.0",
   "lastStep": true,
   "output": {
      "pkat":"c053fb7e-5efb-4876-b2f3-944790223e2c"
   }
}
```

**OTP Verification & Resend Verification**

Any Process that sends a Storefront Gateway action token to a user also returns a corresponding Proof key for Action Token (PKAT) to the client application. In order to enable OTP verification on the UI, the client **must** retain the PKAT returned in the final Process response. The PKAT, along with the user-supplied OTP, is required for the [Session Token](c_sessionToken) API to invoke the subsequent Process to complete the user journey.

In cases where the user is anonymous, the PKAT is required if the application wants to provide a quick token resend option on the UI, using the [Token Resend](c_putSessionToken) API. This method applies to cases where the user is anonymous (i.e., they are not authenticated in Storefront Gateway). However, if the user is currently authenticated in Storefront Gateway, the client application can instead invoke the [Send Verification](c_sendVerification) Process for this purpose.

| `processId` | Unique identifier for the current instance of this Process. |
| - | - |
| `processName` | Full name of the Process, including the category and version number. |
| `lastStep` | Boolean that indicates whether or not this was the last step in the Process. |
| `output` | Object that contains data that the client can consume, retain, and use for additional operations. |
| `pkat` | Unique Proof Key for Action Token that corresponds to an existing action token. |
| **Parent topic:**[Send Verification Process](c_sendVerification) | |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.