Skip to main content
POST
Submit one or more people and the signals you want run. You get a 202 with a request_id immediately; results arrive by polling or on an optional signed webhook. See Signals for the catalogue and required inputs.

Authorizations

Authorization
string
header
required

An account-scoped API key, tf_live_….

Headers

Idempotency-Key
string

Optional. A repeated Idempotency-Key (or an identical batch within a window) returns the same request_id without re-charging.

Body

application/json

The POST /v1/signals body.

inputs
object[]
required
Minimum array length: 1
signals
enum<string>[]

Which signals to run for every input. Omitted → all signals whose required inputs are present, subject to phase and per-account governance.

Minimum array length: 1

The name of a signal.

Available options:
phone_name_match,
phone_connectivity,
phone_profile_match,
email_name_match,
email_profile_match,
phone_type,
phone_ported,
phone_activity,
profile_account_age_risk,
premium_phone_name_match,
premium_phone_connectivity,
premium_phone_profile_match
webhook_url
string<uri>

Where the completed payload is POSTed, signed. Optional.

skip_cache
boolean

Bypass the result cache and resolve every signal fresh — a live probe/dial is placed rather than a cached verdict returned — and never idempotency-replay this submission (a new request_id is always minted). Default false. Optional.

Response

Accepted — background scoring enqueued.

The 202 acknowledgement of POST /v1/signals.

request_id
string
required
Minimum string length: 1
requested_datetime
string<date-time>
required
status
string
required
Allowed value: "pending"
accepted
integer
required
Required range: x >= 0