Okta
Use an Okta Event Hook to receive verified, batched user lifecycle creation events.
Webhook events
| Event | What it signals | Growth Rail action |
|---|---|---|
user.lifecycle.create | User signup confirmed by provider. | Record signup proof; join to pending SDK attribution claim. |
How attribution works
A verified provider event proves the signup happened — but not that the user was referred. Growth Rail completes a referral only when that event joins to the opaque attribution claim previously captured by the SDK on the referring user's device.
Create the Growth Rail connection
Open Dashboard → Integrations → Auth, choose Okta, and create a Sandbox or Production connection. Copy the generated webhook endpoint URL — you will paste it into Okta in the next step.
Register the webhook in Okta
In Okta Admin Console → Workflow → Event Hooks, add the copied endpoint and subscribe to user.lifecycle.create.
Return to Growth Rail and save the exact Authorization header value configured in Okta. Growth Rail encrypts and stores it — the raw value is never returned by the API after saving.
Pass attribution data from your app
Pass the stable Okta User target ID from the lifecycle event. Growth Rail processes every event in data.events independently.
// Use the Okta user ID, such as the signed-in user sub.
await GrowthRail.initAppUser(oktaUser.id);Verify end-to-end in test mode
Save the Authorization value, click Verify in Okta, then create a test user and confirm user.lifecycle.create in Growth Rail.
| Outcome | Meaning |
|---|---|
| Completed | Signup proof and SDK attribution token matched. The referral reward has been triggered. |
| Awaiting attribution | The webhook signature was valid, but the SDK claim has not arrived yet — or the stable user ID did not match a pending claim. The event is held; Growth Rail completes the referral when the claim arrives. |
| Ignored | The event was verified but no matching attribution claim exists and the hold window has expired, or the event type is out of scope. |
- Okta user creation can come from admin, import, or JIT flows. A reward still requires the matching SDK attribution claim.
- Okta delivers at least once, can batch events, and may deliver out of order; Growth Rail deduplicates each event ID.