User Login Id Duplicate Update

User Login Id Duplicate Update

FusionAuth Reactor logo

This feature is only available in the Enterprise plan. Please visit our pricing page to learn more.

This event has been available since 1.30.0

This event is generated when a request to update a user with a login Id (email or username) which is already in use has been received.

Event type
user.loginId.duplicate.update

Event Scope

This is a tenant scoped event.

Prior to version 1.37.0 this event was sent to all webhooks, and it was a webhook's responsibility to filter on the tenantId field.

In version 1.37.0 and later, this event will only be sent to tenants for which webhooks for this event are enabled.

Prior to version 1.37.0 this was a tenant scoped event. This event will be sent to all tenants that are listening, but will contain a tenantId to allow for filtering.

In version 1.37.0 and later this is also a tenant scoped event. It can be sent to all tenants or to one or more specified tenants. However, those tenants will not be sent events for other tenants, but only events related to themselves.

Transaction Compatibility

This event is non-transactional. The operation will succeed regardless of the webhook response status code.

Event Body

event.createInstant[Long]

The instant that the event was generated.

event.duplicateEmail[String]

The email address that is already in-use.

event.duplicateUsername[String]

The username that is already in-use.

event.existing[Object]

The existing user that is using the requested email address or username. See the Users API for property definitions and example JSON.

event.id[UUID]

The unique Id of the event. You may receive an event more than once based upon your transaction settings. This Id may be used to identify a duplicate event.

event.info.data[Object]available since 1.30.0
An object that can hold any information about the event that should be persisted.
event.info.deviceDescription[String]available since 1.30.0
The description of the device associated with the event.
event.info.deviceName[String]available since 1.30.0
The device name associated with the event.
event.info.deviceType[String]available since 1.30.0
The type of device associated with the event.
event.info.ipAddress[String]available since 1.27.0
The source IP address of the event.
event.info.location.city[String]available since 1.30.0
The city where the event originated. Note: A paid plan is required to utilize event info location.
event.info.location.country[String]available since 1.30.0
The country where the event originated. Note: A paid plan is required to utilize event info location.
event.info.location.latitude[Double]available since 1.30.0
The latitude where the event originated. Note: A paid plan is required to utilize event info location.
event.info.location.longitude[Double]available since 1.30.0
The longitude where the event originated. Note: A paid plan is required to utilize event info location.
event.info.location.region[String]available since 1.30.0
The geographic location where the event originated. Note: A paid plan is required to utilize event info location.
event.info.location.zipcode[String]available since 1.30.0
The zip code where the event originated. Note: A paid plan is required to utilize event info location.
event.info.os[String]available since 1.30.0
The operating system associated with the event.
event.info.userAgent[String]available since 1.30.0
The user agent associated with the event.
event.tenantId[UUID]

The unique tenant identifier. This value may not be returned if not applicable.

event.type[String]

The event type, this value will always be user.loginId.duplicate.update.

event.user[Object]

The user on the update request that attempted to use a duplicate login Id. See the Users API for property definitions and example JSON.

Example Event JSON

{
  "event": {
    "createInstant": 1629436692150,
    "duplicateUsername": "best-ceo",
    "existing": {
      "active": true,
      "birthDate": "1981-06-04",
      "connectorId": "e3306678-a53a-4964-9040-1c96f36dda72",
      "data": {
        "Company": "Aviato",
        "foobar": "baz",
        "user_type": "iconoclast"
      },
      "email": "ceo@example.com",
      "firstName": "Erlich",
      "id": "9ea5b4b6-14df-44af-8a5e-c6e4bcb31ced",
      "insertInstant": 1625783576299,
      "lastLoginInstant": 1629232057071,
      "lastName": "Bachman",
      "lastUpdateInstant": 1628024498202,
      "passwordChangeRequired": false,
      "passwordLastUpdateInstant": 1625783576327,
      "registrations": [
        {
          "applicationId": "d23ecde6-0661-44a7-808b-a23013e6dfdc",
          "id": "1a01a91e-9861-490f-b4a0-5f91804fa06f",
          "insertInstant": 1626116367082,
          "lastLoginInstant": 1628102540879,
          "lastUpdateInstant": 1626116367082,
          "roles": [
            "USER"
          ],
          "usernameStatus": "ACTIVE",
          "verified": true
        },
        {
          "applicationId": "3c219e58-ed0e-4b18-ad48-f4f92793ae32",
          "id": "22e6a9b2-1d37-463f-8cba-1bd78aa74345",
          "insertInstant": 1625783576372,
          "lastLoginInstant": 1629232057071,
          "lastUpdateInstant": 1625783576372,
          "roles": [
            "admin"
          ],
          "usernameStatus": "ACTIVE",
          "verified": true
        }
      ],
      "tenantId": "a743e2cd-55bb-789c-b076-8846fdd3a51f",
      "twoFactor": {},
      "usernameStatus": "ACTIVE",
      "verified": true
    },
    "id": "7df73fe3-35a9-4085-a10e-792fc395afa2",
    "info": {
      "ipAddress": "71.229.161.136",
      "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36"
    },
    "type": "user.loginId.duplicate.update",
    "user": {
      "active": true,
      "birthDate": "1981-06-04",
      "connectorId": "e3306678-a53a-4964-9040-1c96f36dda72",
      "data": {
        "Company": "Aviato",
        "foobar": "baz",
        "user_type": "iconoclast"
      },
      "email": "ceo@example.com",
      "firstName": "Erlich",
      "id": "9ea5b4b6-14df-44af-8a5e-c6e4bcb31ced",
      "insertInstant": 1625783576299,
      "lastLoginInstant": 1629232057071,
      "lastName": "Bachman",
      "lastUpdateInstant": 1628024498202,
      "passwordChangeRequired": false,
      "passwordLastUpdateInstant": 1625783576327,
      "registrations": [
        {
          "applicationId": "d23ecde6-0661-44a7-808b-a23013e6dfdc",
          "id": "1a01a91e-9861-490f-b4a0-5f91804fa06f",
          "insertInstant": 1626116367082,
          "lastLoginInstant": 1628102540879,
          "lastUpdateInstant": 1626116367082,
          "roles": [
            "USER"
          ],
          "usernameStatus": "ACTIVE",
          "verified": true
        },
        {
          "applicationId": "3c219e58-ed0e-4b18-ad48-f4f92793ae32",
          "id": "22e6a9b2-1d37-463f-8cba-1bd78aa74345",
          "insertInstant": 1625783576372,
          "lastLoginInstant": 1629232057071,
          "lastUpdateInstant": 1625783576372,
          "roles": [
            "admin"
          ],
          "usernameStatus": "ACTIVE",
          "verified": true
        }
      ],
      "tenantId": "a743e2cd-55bb-789c-b076-8846fdd3a51f",
      "twoFactor": {},
      "usernameStatus": "ACTIVE",
      "verified": true
    }
  }
}