What is PRESS?
The Proactive Record Status Service - PRESS sends you notifications when something changes in a person’s record at ICP — such as entering or leaving the country, a visa extension, or a status change. Instead of polling an API on a schedule, PRESS pushes events directly to your webhook endpoint periodically. You only receive alerts for people already onboarded in your KYC portfolio — not the general population.PRESS replaces the legacy pull-based model where clients ran cron jobs against the Stale Residents API. With PRESS, you receive events periodically without polling.
Legacy (Pull) vs PRESS (Push)
| Legacy (Stale Residents API) | PRESS (Webhook) | |
|---|---|---|
| How it works | You poll ICP on a schedule | ICP pushes events to you |
| Setup | Build a cron job + API consumer | Register a webhook endpoint |
| Latency | Hours or once a day (depends on cron) | Event-based |
| Traffic | Constant polling, mostly empty responses | Only when events occur |
| Action | You check for changes | You react to changes |

Lifecycle Events
PRESS publishes the following events. Each one corresponds to a change in a person’s record at ICP. During webhook setup, you choose which events you want to receive.| Event | What Happened | Example Scenario |
|---|---|---|
IMMIGRATION_ENTRY | Person entered the UAE through immigration | Tourist arrives at Dubai airport |
VISA_EXTENSION | Visa validity was extended | Tourist extends their 30-day visa by another 30 days |
STATUS_CHANGE | Visa type or person class changed | Tourist gets a job and becomes a resident |
VISA_CANCELLATION | Visa was cancelled | Visa cancelled by authorities or voluntarily |
NEW_ID | New Emirates ID was issued | First-time issuance, renewal, or re-issuance of an Emirates ID |
FILE_CANCEL | Immigration file was cancelled | An individual’s immigration file has been cancelled |
When the Person is Still Legally Allowed to Stay
Some lifecycle events indicate a change in status, but the person is legally allowed to stay in the country. Common scenarios include:| Event | Scenario | Residency Status |
|---|---|---|
STATUS_CHANGE | Tourist converts to Resident | Valid — new residency issued |
STATUS_CHANGE | Resident upgrades to Golden Visa | Valid — long-term residency issued |
STATUS_CHANGE | Resident transitions to another Resident visa (e.g., employer change) | Valid — new residency issued |
NEW_ID | New Emirates ID issued (renewal or re-issuance) | Valid — updated identity document |
EID Validation
Verify the current status of an Emirates ID against ICP records.
Passport Validation
Verify a passport with nationality and type against ICP records.
How It Works
Register your webhook
Provide your HTTPS endpoint URL and static IP to ICP during onboarding. ICP whitelists the connection and issues you an HMAC signing secret.
ICP publishes lifecycle events
Whenever a status change occurs — entry, visa modification, cancellation, or ID update — ICP publishes the event.
PRESS matches events to your portfolio
PRESS only monitors your active client population. Events are published only for individuals already onboarded in your KYC portfolio.
A signed alert is delivered to your endpoint
When a match is found and the event type is in your subscription, a signed HTTPS POST is delivered to your webhook endpoint.
Testing Your Integration
Before going live, validate your webhook endpoint end-to-end using the sandbox environment. You can generate test events directly from the UAE KYC dashboard — no code or API calls needed.Webhook Setup
Review the full sandbox checklist before requesting production activation.
Sandbox Event Testing
Generate test events from the dashboard and validate your endpoint against real payloads.
