loading
Preparing LoginRadius developer resources
Mission: Help enterprises accelerate digital transformation with our fully-managed Customer IAM technology.
Skip to main content

Webhook Payload Samples


B2C Events

User Profile Payload

The following events all include the user's full profile as the Data field in the payload:

Login · Register · UpdateProfile · ResetPassword · ChangePassword · EmailVerification · AddEmail · BlockAccount · DeleteAccount · SetUsername · AssignRoles · UnassignRoles · SetPassword · LinkAccount · UnlinkAccount · UpdatePhoneId · VerifyPhoneNumber · InvalidateEmailVerification · InvalidatePhoneVerification · RemovePhoneId · RemoveRoleContext · ConsentProfileUpdate · SetPIN · ResetPIN · ChangePIN

{
"HookName": "login",
"Time": "2024-01-15T10:30:00Z",
"HookId": "079345b7-7491-4619-91fa-eb881dd78ba4",
"Data": {
"Uid": "793fb102948e48c0bac4382200cc50a8",
"ID": "25bee67a725741fd8b5ee0e1f29eea63",
"Password": "<hashed>",
"FirstName": "Jane",
"LastName": "Doe",
"FullName": "Jane Doe",
"Email": [
{
"Type": "Primary",
"Value": "jane.doe@example.com"
}
],
"UserName": null,
"PhoneId": "+14155550123",
"PhoneIdVerified": true,
"EmailVerified": true,
"IsActive": true,
"IsDeleted": false,
"IsLoginLocked": false,
"NoOfLogins": 12,
"FirstLogin": false,
"Provider": "Email",
"RegistrationProvider": "Email",
"RegistrationSource": "API",
"LastLoginLocation": "San Francisco, United States",
"LastPasswordChangeDate": "2024-01-01T09:00:00.000Z",
"CreatedDate": "2024-01-01T09:00:00.000Z",
"ModifiedDate": "2024-01-15T10:30:00.000Z",
"LastLoginDate": "2024-01-15T10:30:00.000Z",
"CustomFields": {
"department": "engineering"
},
"Roles": ["admin"],
"Addresses": null,
"BirthDate": null,
"Gender": null
}
}
tip

For Login and Register events, FirstLogin is true when NoOfLogins == 1. Use this to trigger onboarding flows.


RemoveEmail

The RemoveEmail event has a different structure. The Data field wraps the user profile under UserProfile and includes the removed email address as a separate field.

{
"HookName": "removeemail",
"Time": "2024-01-15T10:30:00Z",
"HookId": "d1cb8336-4314-4b0e-afa6-eb5e3d0bd874",
"Data": {
"UserProfile": {
"Uid": "f4dc95133b7c4fed876c65d7776fbb3c",
"ID": "38be4dc624d140cd9283b28dc9ecf6c6",
"Password": "<hashed>",
"FirstName": "Jane",
"LastName": "Doe",
"FullName": "Jane Doe",
"Email": [
{
"Type": "Primary",
"Value": "jane.doe@example.com"
}
],
"EmailVerified": true,
"IsActive": true,
"IsDeleted": false,
"NoOfLogins": 1,
"Provider": "Email",
"RegistrationProvider": "Email",
"CreatedDate": "2024-01-01T09:00:00.000Z",
"ModifiedDate": "2024-01-15T10:30:00.000Z",
"LastLoginDate": "2024-01-15T10:30:00.000Z"
},
"RemovedEmail": "old.address@example.com"
}
}

Custom Object Events

The CreateCustomObject, UpdateCustomObject, and DeleteCustomObject events include the custom object record in the Data field instead of a user profile. The structure of the CustomObject field varies depending on your custom object schema.

{
"HookName": "createcustomobject",
"Time": "2024-01-15T10:30:00Z",
"HookId": "59b681fb-46ed-40e9-b42a-fae45ad91b1d",
"Data": {
"Id": "5d01200c5a927e55c0f0ffd2",
"IsActive": true,
"IsDeleted": false,
"DateCreated": "2024-01-15T10:30:00.000Z",
"DateModified": "2024-01-15T10:30:00.000Z",
"Uid": "f4dc95133b7c4fed876c65d7776fbb3c",
"CustomObject": {
"field1": "value1",
"field2": "value2"
}
}
}

Partner IAM Events

Partner IAM webhook payloads carry entity data rather than a user profile. The payload structure depends on which entity type triggered the event.

Organization Events

Applies to: OrgCreated · OrgUpdated · OrgDeleted

{
"HookName": "orgcreated",
"Time": "2025-03-12T06:30:37Z",
"HookId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"Data": {
"Id": "org_Z9EqDYmFlLJpyJYV",
"IsActive": true,
"Name": "acme-corp",
"Display": {
"Name": "Acme Corp",
"LogoURL": "https://example.com/logo.jpg"
},
"Metadata": {
"industry": "technology"
},
"Domains": [
{
"Id": "org_domain_Z9EqDYmFlLJpyJYU",
"DomainName": "acme.com",
"IsVerified": true,
"VerificationStrategy": "manual"
}
],
"IsAuthRestrictedToDomain": false,
"Policies": {
"PasswordPolicy": {
"MinLength": 8,
"MaxLength": 64,
"RequireUppercase": true,
"RequireLowercase": true,
"RequireNumber": true,
"RequireSpecialChar": true,
"ExpiryDays": 90
},
"MFAPolicy": {
"EnforcementMode": "none"
},
"SessionPolicy": {
"AccessTokenTTL": 15,
"RefreshTokenTTL": 86400
},
"JITPolicy": {
"Enabled": false
}
},
"CreatedDate": "2025-03-12T06:30:37.909Z",
"ModifiedDate": "2025-03-12T06:30:37.909Z"
}
}

Organization Role Events

Applies to: OrgRoleCreated · OrgRoleUpdated · OrgRoleDeleted

{
"HookName": "orgrolecreated",
"Time": "2025-03-17T05:29:09Z",
"HookId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"Data": {
"Id": "role_Z9ezJV_mha6GtrGd",
"Name": "manager",
"Description": "Manager role",
"Level": "org",
"OrgId": "org_Z9evphKLiQWhlHH6",
"Permissions": [
{
"Id": "perm_Z9exnF_mha6GtrGX",
"Name": "read:users",
"Description": "Read users data"
}
],
"CreatedDate": "2025-03-17T05:29:09.987Z",
"ModifiedDate": "2025-03-17T05:29:09.987Z"
}
}

Organization Connection Events

Applies to: OrgConnectionCreated · OrgConnectionUpdated · OrgConnectionDeleted

The payload structure varies based on the ConnectionType. Below are examples for SAML and OpenID Connect connections.

SAML

{
"HookName": "orgconnectioncreated",
"Time": "2025-03-17T05:43:53Z",
"HookId": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"Data": {
"Id": "conn_Z9e2mV_mha6GtrGk",
"IsActive": true,
"Name": "AzureAD",
"ConnectionType": "saml_entraid",
"Domain": "acme.com",
"Attributes": {
"ID": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name",
"Email": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress",
"FirstName": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname",
"LastName": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname",
"Groups": "http://schemas.microsoft.com/ws/2008/06/identity/claims/groups",
"CustomMapping": null
},
"GroupRoles": null,
"CreatedDate": "2025-03-17T05:43:53.537Z",
"EntityId": "https://app.example.com/saml/sp/xxxx",
"ACSEndpoint": "https://app.example.com/saml/sp/acs/xxxx",
"IDPEntityId": "https://sts.windows.net/xxxx/",
"IDPLoginUrl": "https://login.microsoftonline.com/xxxx/saml2",
"IDPLogoutUrl": "https://login.microsoftonline.com/xxxx/saml2"
}
}

OpenID Connect

{
"HookName": "orgconnectioncreated",
"Time": "2025-03-17T05:43:53Z",
"HookId": "d4e5f6a7-b8c9-0123-defa-234567890123",
"Data": {
"Id": "conn_65d1234567890abcdef12345",
"IsActive": true,
"Name": "MyOIDCConnection",
"ConnectionType": "oidc",
"Domain": "acme.com",
"Issuer": "https://openid.example.com",
"AuthorizationUrl": "https://openid.example.com/auth",
"TokenUrl": "https://openid.example.com/token",
"UserInfoUrl": "https://openid.example.com/userinfo",
"ClientId": "client_123",
"RedirectURI": "https://app.example.com/callback",
"Scopes": ["openid", "profile", "email"],
"TokenAuthMethod": "client_secret_post",
"CreatedDate": "2025-03-17T05:43:53.000Z"
}
}

Organization Membership Events

Applies to: OrgMembershipCreated · OrgMembershipUpdated · OrgMembershipDeleted

{
"HookName": "orgmembershipcreated",
"Time": "2025-03-17T06:00:00Z",
"HookId": "e5f6a7b8-c9d0-1234-efab-345678901234",
"Data": {
"EmailId": "user@acme.com",
"Uid": "793fb102948e48c0bac4382200cc50a8",
"OrgId": "org_Z9evphKLiQWhlHH6",
"Roles": [
"role_Z9ezJV_mha6GtrGd"
]
}
}

Invitation Events

Applies to: OrgInvitationCreated

{
"HookName": "orginvitationcreated",
"Time": "2025-03-17T06:37:38Z",
"HookId": "f6a7b8c9-d0e1-2345-fabc-456789012345",
"Data": {
"Id": "inv_Z9fDNE5YXFHpTMQF",
"OrgId": "org_Z9evphKLiQWhlHH6",
"RoleIds": [
"role_Z9fBqk5YXFHpTMP9"
],
"Status": "Invited",
"EmailId": "newmember@acme.com",
"InviterUid": "c14e25c9de1e4a14bfb338e53fedcf2e",
"CreatedDate": "2025-03-17T06:37:38.027Z",
"ExpirationDate": "2025-03-24T06:37:38.027Z",
"ModifiedDate": "2025-03-17T06:37:38.027Z"
}
}