Signal Number Validation & Identity Lookup APIs
Check in real time whether a phone number is registered on Signal and enrich registered numbers with public identity metadata.
- Registration: clear registered=true/false/null for form validation and list screening
- Identifiers: stable ACI and PNI UUIDs for deduplication and identity resolution
- Public metadata: identityKey, capabilities, badges, unrestrictedUnidentifiedAccess when available
- Privacy-aware: display name / about / avatar are end-to-end profile-key encrypted on Signal and are never returned for strangers
RESTful JSON API for lead validation, identity resolution, CRM enrichment, and anti-fraud signals.
Overview
Base URL https://api.opendata-api.com
Every call needs an API key. Paste it once below β it's attached to each request automatically.
/api/project/signal/check Check Signal Registration
Full docs βDetails
The lightest, fastest call: returns only whether a phone number is a registered Signal account, without fetching identity metadata. Ideal for real-time form validation, sign-up gating, and high-volume list screening. Pass the full international number (digits, optional leading +); the API normalizes to digits only. registered is three-state: true = registered, false = not registered, null = undetermined (transient β see message, e.g. timeout).
| Parameter | In | Value |
|---|---|---|
| query |
/api/project/signal/user-info Get Signal Identity by Number
Full docs βDetails
Full lookup for a single number: registration status plus the public identity of the account when registered β ACI (Account Identifier UUID), PNI (Phone Number Identifier, usually PNI:<uuid>), optional plaintext profile metadata (identityKey, unrestrictedUnidentifiedAccess, capabilities, badges), a machine status (found / not_found / timeout / ...), a human-readable message, and durationMs. fieldsEncrypted=true for strangers indicates that display name / about / avatar are withheld by Signal's end-to-end profile encryption (not a tool limitation). Use this when you need identity enrichment, not just a yes/no.
| Parameter | In | Value |
|---|---|---|
| query |
/api/project/signal/profile Get Signal Profile Metadata by ACI
Full docs βDetails
Fetch unversioned public profile metadata for a known ACI (UUID). Returns plaintext fields only: identityKey, unidentifiedAccess, unrestrictedUnidentifiedAccess, capabilities, badges, and uuid (same as ACI). Name / about / avatar are never present on this path for non-contacts. Obtain the ACI first via the user-info endpoint.
| Parameter | In | Value |
|---|---|---|
| query |