Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.15.0"
".": "0.16.0"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 27
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/prelude/prelude-33b70f86404b99046db5c61d3142b149dd7dec7eefe5e62ff3b397c7274aa5dc.yml
openapi_spec_hash: fb72aba38ec55a3b6b5162c9f5b4228d
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/prelude/prelude-ade7f266262d3ff58ae467a494828c23caef59d426a845b9ebc6aea684cc0e34.yml
openapi_spec_hash: 17bb1009809baf40dab138f326515e7c
config_hash: 707d65d2f456a2b5ba5b2c565b60128a
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.16.0 (2026-09-22)

Full Changelog: [v0.15.0...v0.16.0](https://github.com/prelude-so/node-sdk/compare/v0.15.0...v0.16.0)

### Features

* **api:** api update ([b508d2c](https://github.com/prelude-so/node-sdk/commit/b508d2c2f52dcdec78e902462ec4119e31212b06))

## 0.15.0 (2026-09-18)

Full Changelog: [v0.14.0...v0.15.0](https://github.com/prelude-so/node-sdk/compare/v0.14.0...v0.15.0)
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@prelude.so/sdk",
"version": "0.15.0",
"version": "0.16.0",
"description": "The official TypeScript library for the Prelude API",
"author": "Prelude <hello@prelude.so>",
"types": "dist/index.d.ts",
Expand Down
88 changes: 54 additions & 34 deletions src/resources/verification/phone/history.ts
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,8 @@ export interface HistoryRetrieveResponse {
* - `invalid_line` - The phone number is not a valid line type.
* - `invalid_number` - The phone number is not a valid number.
* - `rate_limited` - The verification was refused by a rate limit.
* - `expired_signals` - The SDK signals were collected too long before the
* request.
* - `expired_signals` - The SDK signals were collected too long before the request
* to still attest to it.
* - `shadowed` - The anti-fraud system flagged the verification without blocking
* it.
*/
Expand All @@ -152,44 +152,64 @@ export interface HistoryRetrieveResponse {
app_version?: string;

/**
* Why the anti-fraud system blocked the verification. Empty unless it did.
* Why the anti-fraud system blocked the verification. Empty unless it did. These
* are the same labels the Verify and Watch APIs serve as `risk_factors`.
*
* - `behavioral_pattern` - The phone number past behavior during verification
* flows exhibits suspicious patterns.
* - `device_attribute` - The end-user device reported attributes associated with
* fraud or emulation.
* - `fraud_database` - The phone number appears in a fraud database.
* - `location_discrepancy` - The phone number region and the observed location
* disagree.
* - `automation_signature` - The request appears to come from an automated client
* rather than a person.
* - `carrier_not_permitted` - The destination carrier is one this account does not
* accept traffic for.
* - `client_fingerprint_mismatch` - The client does not appear to be the platform
* it identifies itself as.
* - `custom_policy` - A rule configured for your account matched this request.
* - `device_emulator` - The request appears to come from an emulator rather than a
* physical device.
* - `device_not_permitted` - The device platform is one your account blocks.
* - `device_reuse` - One device is driving verifications for an unusual number of
* phone numbers.
* - `expired_signals` - The SDK signals were collected too long before the request
* to still attest to it.
* - `fraud_database` - The phone number is flagged in one or more of the fraud
* databases Prelude consults.
* - `invalid_signature` - The SDK signature did not verify, so the request cannot
* be attributed to the device it claims to come from.
* - `ip_concentration` - The request shares its origin with an unusual volume of
* other verifications.
* - `ip_reputation` - The originating IP address is not trusted.
* - `location_mismatch` - The network location and the phone number's country are
* inconsistent.
* - `missing_signals` - The verification expected Prelude SDK signals and none
* arrived.
* - `network_fingerprint` - The network fingerprint matches known fraudulent
* traffic.
* - `poor_conversion_history` - The phone number rarely completes the
* verifications it starts.
* - `prefix_concentration` - The phone number is part of a range known to be
* associated with suspicious activity patterns.
* - `repeated_number` - The phone number was used far more often than normal
* traffic would explain.
* - `suspected_request_tampering` - The SDK signals were altered or expired
* between collection and use.
* - `suspicious_ip_address` - The originating IP address is associated with
* suspicious activity.
* - `temporary_phone_number` - The phone number is known to be a temporary or
* disposable number.
* - `number_range_abuse` - The phone number belongs to a range currently
* associated with abuse.
* - `poor_conversion_history` - Traffic resembling this request rarely completes a
* verification.
* - `proxy_network` - The request did not arrive over the subscriber's own access
* network.
* - `repeated_attempts` - The phone number exceeded the allowed number of
* verification attempts in a short period.
* - `temporary_phone_number` - The phone number belongs to a disposable or
* short-lived numbering service.
*/
block_reasons?: Array<
| 'behavioral_pattern'
| 'device_attribute'
| 'automation_signature'
| 'carrier_not_permitted'
| 'client_fingerprint_mismatch'
| 'custom_policy'
| 'device_emulator'
| 'device_not_permitted'
| 'device_reuse'
| 'expired_signals'
| 'fraud_database'
| 'location_discrepancy'
| 'invalid_signature'
| 'ip_concentration'
| 'ip_reputation'
| 'location_mismatch'
| 'missing_signals'
| 'network_fingerprint'
| 'number_range_abuse'
| 'poor_conversion_history'
| 'prefix_concentration'
| 'repeated_number'
| 'suspected_request_tampering'
| 'suspicious_ip_address'
| 'proxy_network'
| 'repeated_attempts'
| 'temporary_phone_number'
>;

Expand Down Expand Up @@ -522,8 +542,8 @@ export namespace HistoryListResponse {
* - `invalid_line` - The phone number is not a valid line type.
* - `invalid_number` - The phone number is not a valid number.
* - `rate_limited` - The verification was refused by a rate limit.
* - `expired_signals` - The SDK signals were collected too long before the
* request.
* - `expired_signals` - The SDK signals were collected too long before the request
* to still attest to it.
* - `shadowed` - The anti-fraud system flagged the verification without blocking
* it.
*/
Expand Down
85 changes: 55 additions & 30 deletions src/resources/verification/verification.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,10 @@ export interface VerificationCreateResponse {
* landline).
* - `invalid_phone_number` - The phone number is not a valid phone number (e.g.
* unallocated range).
* - `invalid_signature` - The signature of the SDK signals is invalid.
* - `repeated_attempts` - The phone number has made too many verification
* attempts.
* - `invalid_signature` - The SDK signature did not verify, so the request cannot
* be attributed to the device it claims to come from.
* - `repeated_attempts` - The phone number exceeded the allowed number of
* verification attempts in a short period.
* - `suspicious` - The verification attempt was deemed suspicious by the
* anti-fraud system.
*/
Expand All @@ -119,37 +120,61 @@ export interface VerificationCreateResponse {
* present when status is "blocked" or "shadow_blocked" and the anti-fraud system
* detected specific risk signals.
*
* - `behavioral_pattern` - The phone number past behavior during verification
* flows exhibits suspicious patterns.
* - `device_attribute` - The device exhibits characteristics associated with
* suspicious activity patterns.
* - `fraud_database` - The phone number has been flagged as suspicious in one or
* more of our fraud databases.
* - `location_discrepancy` - The phone number prefix and IP address discrepancy
* indicates potential fraud.
* - `network_fingerprint` - The network connection exhibits characteristics
* associated with suspicious activity patterns.
* - `poor_conversion_history` - The phone number has a history of poorly
* converting to a verified phone number.
* - `prefix_concentration` - The phone number is part of a range known to be
* associated with suspicious activity patterns.
* - `suspected_request_tampering` - The SDK signature is invalid and the request
* is considered to be tampered with.
* - `suspicious_ip_address` - The IP address is deemed to be associated with
* suspicious activity patterns.
* - `temporary_phone_number` - The phone number is known to be a temporary or
* disposable number.
* - `automation_signature` - The request appears to come from an automated client
* rather than a person.
* - `carrier_not_permitted` - The destination carrier is one this account does not
* accept traffic for.
* - `client_fingerprint_mismatch` - The client does not appear to be the platform
* it identifies itself as.
* - `custom_policy` - A rule configured for your account matched this request.
* - `device_emulator` - The request appears to come from an emulator rather than a
* physical device.
* - `device_not_permitted` - The device platform is one your account blocks.
* - `device_reuse` - One device is driving verifications for an unusual number of
* phone numbers.
* - `expired_signals` - The SDK signals were collected too long before the request
* to still attest to it.
* - `fraud_database` - The phone number is flagged in one or more of the fraud
* databases Prelude consults.
* - `invalid_signature` - The SDK signature did not verify, so the request cannot
* be attributed to the device it claims to come from.
* - `ip_concentration` - The request shares its origin with an unusual volume of
* other verifications.
* - `ip_reputation` - The originating IP address is not trusted.
* - `location_mismatch` - The network location and the phone number's country are
* inconsistent.
* - `missing_signals` - The verification expected Prelude SDK signals and none
* arrived.
* - `number_range_abuse` - The phone number belongs to a range currently
* associated with abuse.
* - `poor_conversion_history` - Traffic resembling this request rarely completes a
* verification.
* - `proxy_network` - The request did not arrive over the subscriber's own access
* network.
* - `repeated_attempts` - The phone number exceeded the allowed number of
* verification attempts in a short period.
* - `temporary_phone_number` - The phone number belongs to a disposable or
* short-lived numbering service.
*/
risk_factors?: Array<
| 'behavioral_pattern'
| 'device_attribute'
| 'automation_signature'
| 'carrier_not_permitted'
| 'client_fingerprint_mismatch'
| 'custom_policy'
| 'device_emulator'
| 'device_not_permitted'
| 'device_reuse'
| 'expired_signals'
| 'fraud_database'
| 'location_discrepancy'
| 'network_fingerprint'
| 'invalid_signature'
| 'ip_concentration'
| 'ip_reputation'
| 'location_mismatch'
| 'missing_signals'
| 'number_range_abuse'
| 'poor_conversion_history'
| 'prefix_concentration'
| 'suspected_request_tampering'
| 'suspicious_ip_address'
| 'proxy_network'
| 'repeated_attempts'
| 'temporary_phone_number'
>;

Expand Down
Loading
Loading