Step-Up Re-Authentication
Challenge high-risk actions like payouts or password resets with fresh Helios verification.
- Reuse
external_idto link step-up checks to the original user - Trigger a fresh liveness verification for risky actions
- Compare new scores to the baseline before approving
Time to complete: ~10 minutes
Prerequisites
SAGEA_API_KEYset in your environment asBearerauth.- Read Send your first API request to create a key.
- Read How Helios works to understand decisions and score thresholds.
- An existing user with a prior
verification_idstored under a stableexternal_id.
Step 1: Trigger re-verification for a risky action
When a high-risk event fires, collect fresh media and POST to https://api.sagea.space/helios/kyc/v2 with the same external_id.
Reusing external_id keeps audit history joined: baseline signup check and every step-up share one customer key.
Step 2: Fetch baseline and compare scores
Pull the original and step-up verifications and compare face_match, liveness, and overall before allowing the action.
A small delta with approved means the same legitimate user. A large face match drop or declined suggests account takeover.
Step 3: Enforce the decision in your app
Expire the step-up after 10 minutes so approvals cannot be replayed.
Verify
A successful step-up returns HTTP 200 with the same external_id and a new verification_id. If it fails, check below.
| Error | Cause | Fix |
|---|---|---|
401 Unauthorized | API key missing or invalid | Confirm echo $SAGEA_API_KEY is set and retry |
400 missing_artifact | Front image or video missing in v2 JSON | Include front_image_b64 and liveness_video_b64 |
413 Payload Too Large | Video exceeds about 50MB | Compress to 720p and trim to range 3 to 10s |
422 spoof_detected | Fresh video failed anti-spoofing | Block action and request live recapture |
