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

# Authenticate with Email Address or Mobile Number and Password

Digital Identity Management provides user authentication with an email address or mobile number and password. A user navigates to the organization's login page to login, and once authenticated, they can access and start using the services associated with their account.

## User Authentication Flow

**Preconditions**

* The User ID exists in Digital Identity Management.
* The user has a password.

Following is a typical user authentication example for this flow:

* The user visits the organization's login page.
* The user enters a previously verified AuthN ID such as their mobile number or email.
* If the password is expired, the user is prompted to update their credentials (optional).
* The user is logged in after Digital Identity Management's successful identity verification.

## Authenticate User with Password

\[product: dim]<img src="https://mintcdn.com/amdocs-ulm/XSI-_zBHRIt1HJAz/portal/m1Connect/processGuide/images/authOnboardV2UserExistsPW.png?fit=max&auto=format&n=XSI-_zBHRIt1HJAz&q=85&s=5941ed6f61c270fee5170b269232812d" alt="Authenticate user with email or mobile and password authentication flow" width="1556" height="1764" data-path="portal/m1Connect/processGuide/images/authOnboardV2UserExistsPW.png" />\[/product: dim]

## Response Parameters

Depending on where the user is on their journey, the **Onboard and Authenticate** Process records events and returns these properties as required:

| Name | Trigger | CustomPayload | Admin UI | Description |
| - | - | - | - | - |
| PROCESS\_START | Process initiation | `relayingPartyId` (if available) | `uiFlowType: LOGIN` | User selected to authenticate into the service. |
| `uiFlowType: COMBINED` | User selected to either onboard or authenticate into the service. | | | |
| PROCESS\_END | Process ends normally | `userId` (if created) `identifier` | `**uiFlowType**: LOGIN` **Result**: signed in with password | Successfully authenticated with \&#123;identifier\&#125;. |
| `**uiFlowType:** LOGIN` **Result**: not signed in, OTP sent to end user. | Verification code was sent to \&#123;identifier\&#125;. User must provide code to sign in. | | | |
| `**uiFlowType:** COMBINED` **Result**: signed in (no OTP) | Successfully authenticated with \&#123;identifier\&#125;. | | | |
| `**uiFlowType:** COMBINED` **Result**: Neither flow has signed in or onboarded, OTP sent to user | Verification code was sent to \&#123;identifier\&#125;and the user must provide this code to complete their onboarding or sign-in attempt. | | | |
| PROCESS\_TIMEOUT | After the process times out | `userId` (if created) identifier | | |
| GET\_PROD\_INFO\_SUCCESS | After the process successfully retrieves product information from PLM | `productId` `produceName` | | Retrieved product information for for \&#123;productName\&#125; (\&#123;productId\&#125;). |
| VALIDATE\_ACCOUNT\_SUCCESS | After the process successfully validates account. | `identifier` | | Successfully validated account for \&#123;identifier\&#125;. |
| PROCESS\_SEND\_VERIFICATION | After request for verification is sent to destination. | `identifier` | | Request for verification sent to \&#123;identifier\&#125;. |
| USER\_AUTHENTICATED | After the user is successfully authenticated. | | | User successfully authenticated. |
| GET\_SUBSCRIPTIONS\_SUCCESS | After the user has successfully retrieved the subscription information. | | | Successfully get subscriptions for account \&#123;accountId\&#125;. |

## Example

**Request Process Start**

| `POST&#123;url&#125;/process/start?authentication.OnboardAndAuthenticate.v2.0?productId=Product_One` |
| - |
| **Response Process Start** |

| `HttpStatus 200 &#123; "processId": "b33d8abc-d777-4848-800e-6b8dab25954d", "processName": "authentication.OnboardAndAuthenticate.v2.0", "stepName": "IdentifierPrompt", "stepName": "EndStep", "lastStep": true, "runtimeId": 6723, "userId": 4865, "userAuthenticated": true, "output": &#123; "purchasePromptFlag": true, "productDetailsDTO": &#123; "productId": "Product_One", "productName": "Subscription One", "productDescription": "Sample Description Subscription One", "productPrice": "100", "productCurrency": "USD", "productTrialPeriod": "P30D", "productBillingCycle": "P1M", "appleDownloadLink": "https://apps.apple.com/us/app/example%A3%B3n/id444456788", "androidDownloadLink": "https://play.google.com/store/apps/details?id=com.example", "subscriptionName": "Streaming Subscription", "shortServiceName": "Sub stream", "serviceDescription": "example of service description, includes online straming services and access", "appTagLine": "Streaming Selection", "appName": "Stream Package", "subscriptionNameSms": "Streaming Subscription", "eligibilityWindow": 30, "eligibilityThreshold": 2, "checkEligibility": false &#125; &#125; &#125;` |
| - |
| **Request Step** |

| `PUT &#123;url&#125;/process/step &#123; "processId": "b33d8abc-d777-4848-800e-6b8dab25954d", "parameters": &#123; "identifier": "24355342" &#125; &#125;` |
| - |
| **Response Step** |

| `HttpStatus 202 &#123; "processId": "b33d8abc-d777-4848-800e-6b8dab25954d", "processName": "authentication.OnboardAndAuthenticate.v2.0", "stepName": "PasswordPrompt", "parameters": &#123; "password": "String" &#125; &#125;` |
| - |
| **Request Step** |

| `PUT &#123;url&#125;/process/step &#123; "processId": "b33d8abc-d777-4848-800e-6b8dab25954d", "parameters": &#123; "password": "12345" &#125; &#125;` |
| - |
| **Response Step** |

| `HttpStatus 200 &#123; "processId": "b33d8abc-d777-4848-800e-6b8dab25954d ", "processName": "authentication.OnboardAndAuthenticate.v2.0", "stepName": "IdentifierPrompt", "stepName": "EndStep", "lastStep": true, "runtimeId": 6723, "userId": 4865, "userAuthenticated": true, "output": &#123; "purchasePromptFlag": true, "productDetailsDTO": &#123; "productId": "Product_One", "productName": "Subscription One", "productDescription": "Sample Description Subscription One", "productPrice": "100", "productCurrency": "USD", "productTrialPeriod": "P30D", "productBillingCycle": "P1M", "appleDownloadLink": "https://apps.apple.com/us/app/example%A3%B3n/id444456788", "androidDownloadLink": "https://play.google.com/store/apps/details?id=com.example", "subscriptionName": "Streaming Subscription", "shortServiceName": "Sub stream", "serviceDescription": "example of service description, includes online straming services and access", "appTagLine": "Streaming Selection", "appName": "Stream Package", "subscriptionNameSms": "Streaming Subscription", "eligibilityWindow": 30, "eligibilityThreshold": 2, "checkEligibility": false &#125; &#125; &#125;` |
| - |
| **Parent topic:**[Onboard and Authenticate Process](../topics/onboardAuthenticateUserV2) |


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