> For the complete documentation index, see [llms.txt](https://docs.navigaglobal.com/naviga-subscribe-api/MhIk9TtEtuSKzip2tsSt/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.navigaglobal.com/naviga-subscribe-api/MhIk9TtEtuSKzip2tsSt/users-orchestrator-api/migration-to-usersorchestrator-api/create-passwordless-user.md).

# Create Passwordless User

## **Introduction** <a href="#migrationtopaymentsapi-applypayment" id="migrationtopaymentsapi-applypayment"></a>

This endpoint handles the workflow orchestration between the integration services (such as Auth0, Gigya, SSOR, and Firefly) and Subscribe Registration API to create a user.

## **Comparison** <a href="#migrationfromusertousersorchestrator-comparison" id="migrationfromusertousersorchestrator-comparison"></a>

When creating a passwordless user, UsersOrchestrator will generate a dummy password and the proper Change Password URL.

#### **Note:**&#x20;

1. *The old model is in PascalCase, while the new model is in CamelCase.*
2. Cookie tokens will not be returned by the UsersOrchestrator API.
3. For custom fields, use Metadata.

<table data-full-width="true"><thead><tr><th width="135.33333333333337"></th><th width="495">User API</th><th>Users Orchestrator API</th></tr></thead><tbody><tr><td>URL</td><td>/User/Passwordless</td><td>/v4/Users</td></tr><tr><td>Method</td><td>POST</td><td>POST</td></tr><tr><td>Request</td><td><pre class="language-json" data-overflow="wrap"><code class="lang-json">{
  "Email": "string",
  "CreationMode": 0,
  "CustomerRegistrationId": "string",
  "FirstName": "string",
  "LastName": "string",
  "DisplayName": "string",
  "Phone": "string",
  "MobilePhone": "string",
  "DOB": "string",
  "BirthYear": "string",
  "Gender": "string",
  "OptInEVantageSubscriberRewards": true,
  "OptInSpecialOffers": true,
  "OptInContestAndPromotions": true,
  "OptInPaperlessBilling": true,
  "OptInEEdition": true,
  "OptInEEditionEmailNotification": true,
  "OptInSubscriberDiscounts": true,
  "OptInAdvertiserEmails": true,
  "MemberEvent": true,
  "ContentEngagement": true,
  "SUBCOM": true,
  "Survey": true,
  "AccountUpdates": true,
  "AcceptsEmailOffers": 0,
  "AcceptsEmailAds": 0,
  "AcceptsEmailPromotions": 0,
  "IsOkToEmail": 0,
  "IsOkToPhone": 0,
  "IsOkToMail": 0,
  "AcceptsEENotification": 0,
  "AcceptsTermsOfService": true,
  "Country": "string",
  "Address": "string",
  "City": "string",
  "State": "string",
  "ZipCode": "string",
  "Photo": "string",
  "OptOutMarketing": true,
  "VerifyEmail": true,
  "ReturnUrl": "string",
  "PaperCode": "string",
  "NewspaperId": 0,
  "AuthSystemId": 0,
  "Metadata": {}
}
</code></pre></td><td><pre class="language-json" data-overflow="wrap"><code class="lang-json">{
    "email": "string",
    "customerRegistrationId": "string",
    "encryptedCustomerRegistrationId": "string",
    "verifyEmail": true,
    "returnUrl": "string",
    "firstName": "string",
    "lastName": "string",
    "metadata": {
        "title": "",
        "phoneNumber": "",
        "gender": "",
        "age": "",
        "dob": "",
        "dobYYYY": "",
        "acceptsEmailOffers": "",
        "acceptsEmailAds": "",
        "acceptsEmailPromotions": "",
        "address": "",
        "city": "",
        "country": "",
        "position": "",
        "isOkToEmail": "",
        "isOkToPhone": "",
        "isOkToMail": "",
        "workPhone": "",
        "timeZone": "",
        "scoreMember": "",
        "companyName": "",
        "postalCode": "",
        "cellPhone": "",
        "acceptsEENotification": "",
        "ebill_flag": "",
        "eadvan_flag": "",
        "eedition_flag": "",
        "ee_email_flag": "",
        "promo_flag": "",
        "feat_flag": "",
        "dealdigger_flag": "",
        "ads_flag": "",
        "member_event_flag": "",
        "contentEngagement_flag": "",
        "subcom_flag": "",
        "survey_flag": "",
        "accountUpdates_flag": "",
        "photo": "",
        "displayName": "",
        "optOutMarketing": "",
        "agreeToTerms": "",
        "bounceType": "",
    },
    "ignoreProvider": true
}
</code></pre></td></tr><tr><td>Response</td><td><pre class="language-json" data-overflow="wrap"><code class="lang-json">{
  "Code": 0,
  "Errors": [
    {
      "Message": "string",
      "Code": "string",
      "Type": {
        "Id": 0,
        "Code": "string"
      },
      "ErrorSource": "string"
    }
  ],
  "Result": {
    "CustomerRegistrationId": "string",
    "EncryptedCustomerRegistrationId": "string",
    "Mg2RegistrationId": 0,
    "RegistrationVerificationId": 0,
    "Tokens": [
      {
        "Name": "string",
        "Content": "string",
        "CookieDurationDays": "string"
      }
    ]
  },
  "SessionId": "string",
  "RequestId": "string"
}
</code></pre></td><td><pre class="language-json" data-overflow="wrap"><code class="lang-json">{
  "message": {
    "code": "string",
    "text": "string",
    "type": 0
  },
  "meta": "string",
  "data": {
    "customerRegistrationId": "string",
    "encryptedCustomerRegistrationId": "string"
  }
}
</code></pre></td></tr></tbody></table>

***

## Create Passwordless User

<mark style="color:green;">`POST`</mark> `/v4/Users`

This endpoint is used to create a user without a password.

**Note:** *The parameters marked with an asterisk* (<mark style="color:red;">\*</mark>) *are mandatory and must be included in the input model.*

#### Headers

| Name                                                | Type   | Description                                   |
| --------------------------------------------------- | ------ | --------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark>     | String | JSON Web Token used for security purposes     |
| X-SourceSystem<mark style="color:red;">\*</mark>    | String | To identify the consumer or the Source System |
| X-ClientCode<mark style="color:red;">\*</mark>      | String | Client Code of the Tenant                     |
| X-PaperCode<mark style="color:red;">\*</mark>       | String | Paper Code of the Tenant                      |
| X-ClientGroupCode<mark style="color:red;">\*</mark> | String | Client Group Code of the Tenant               |

#### Request Body

| Name                            | Type    | Description                                                                                                                                                                                                                                         |
| ------------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Email                           | String  | Subscriber’s email.                                                                                                                                                                                                                                 |
| CustomerRegistrationId          | String  | Unique identifier for the user in the authentication provider                                                                                                                                                                                       |
| EncryptedCustomerRegistrationid | String  | Encrypted unique identifier for the user in authentication system.                                                                                                                                                                                  |
| VerifyEmail                     | Boolean | <p>Default false.</p><p>If True is provided, then the registration will not be created right away. Naviga would wait until the user confirmed the registration by clicking the link in the verification email.</p>                                  |
| ReturnUrl                       | String  | URL to which users must be redirected after they have successfully verified their registration.                                                                                                                                                     |
| FirstName                       | String  | Subscriber’s first name.                                                                                                                                                                                                                            |
| LastName                        | String  | Subscriber’s last name.                                                                                                                                                                                                                             |
| Metadata                        | Object  | Metadata must be an object in camelCase format.                                                                                                                                                                                                     |
| IgnoreProvider                  | Boolean | <p>If the IgnoreProvider flag is false, it executes a Create operation through the ThirdParty system (Integration).</p><p>If the IgnoreProvider flag is true, it executes a Create operation through the SubscribeRegistration API (Subscribe).</p> |

{% tabs %}
{% tab title="200" %}

```json
{
    "message": {
        "code": "UsersOrchestrator_S200_06",
        "text": "Create completed.",
        "type": "Success"
    },
    "data": {
        "customerRegistrationId": "string",
        "encryptedCustomerRegistrationId": "string"
    }
}
```

{% endtab %}

{% tab title="Error Codes" %}

<table><thead><tr><th width="169">Status Code</th><th>Code</th><th>Message</th></tr></thead><tbody><tr><td>400</td><td>UsersOrchestrator_E400</td><td>Bad Request</td></tr><tr><td>400</td><td>UsersOrchestrator_E400_00</td><td>Invalid InputModel - {Message}</td></tr><tr><td>400</td><td>UsersOrchestrator_E400_07</td><td>The entered email address is still pending for verification.</td></tr><tr><td>400</td><td>UsersOrchestrator_E400_08</td><td>The email is already in use by another user.</td></tr><tr><td>400</td><td>UsersOrchestrator_E400_09</td><td>The metadata is invalid.</td></tr><tr><td>400</td><td>UsersOrchestrator_E400_17</td><td>Metadata Key or Value cannot contain more than 100 characters.</td></tr><tr><td>400</td><td>UsersOrchestrator_E400_23</td><td>The customer registration id already exists.</td></tr><tr><td>500</td><td>UsersOrchestrator_E500</td><td>Internal Server Error</td></tr><tr><td>500</td><td>UsersOrchestrator_E500_01</td><td>There was a problem during the GetById workflow.</td></tr></tbody></table>
{% endtab %}
{% endtabs %}

## Events <a href="#events.5" id="events.5"></a>

**Note:–** The associated Event IDs for the Event Type Codes are specified in parentheses (i.e., **EventTypeCode (EventID)**) in the table below.

<table><thead><tr><th width="161">Current</th><th width="300">New</th><th>Note</th></tr></thead><tbody><tr><td>GETUSER (73)</td><td><strong>AUTHSYSTEM_USER_GET (4601)</strong></td><td><p>Renamed.</p><p>This event retrieves a User by Id from AuthSystem.</p></td></tr><tr><td>CREATELOGIN (68)</td><td><ul><li><strong>AUTHSYSTEM_USER_CREATE (4602)</strong></li><li><strong>SUBSCRIBE_USER_CREATE (4002)</strong></li></ul></td><td><ul><li>For each CREATELOGIN old event, we now create two events. One is for the call to the third-party system, and the other is for the call to our database.</li><li>SUBSCRIBE_USER_CREATE is responsible for sending the email.</li></ul></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.navigaglobal.com/naviga-subscribe-api/MhIk9TtEtuSKzip2tsSt/users-orchestrator-api/migration-to-usersorchestrator-api/create-passwordless-user.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
