NoResponse Python SDK
Install it with pip install noresponse (Python 3.11 or later) and import noresponse_sdk. To work on the SDK, install it from source with pip install -e apps/identity-intelligence/sdks/python and run python -m unittest discover -s apps/identity-intelligence/sdks/python/tests -v.
import os
from noresponse_sdk import Client
client = Client(
api_key=os.environ["NORESPONSE_API_KEY"],
base_url=os.environ["NORESPONSE_API_URL"], # https://api.noresponse.org in production
)
assessment = client.assess_signup(
account_id="usr_123",
email="person@example.com", # email, username or phone: at least one
name="Jane A. Doe", # optional, used only for matching
ip="73.162.18.45", # optional, the signup's public IP
idempotency_key="signup-usr_123-0000001",
)
# Pending means no recommendation: never allow. Enforce your own fallback policy.
client.assess(account_id=..., identifiers={...}, idempotency_key=...) takes the identifiers mapping directly (email, username, phone, name, ip). Also supports client.get_assessment(assessment_id), client.query_assessments(account_id=..., limit=..., cursor=...) and client.record_outcome(assessment_id, outcome=..., idempotency_key=...) to report what was later learned about the account (confirmed_abuse, account_takeover, chargeback, false_positive, legitimate or unknown). The two read methods each take response_mode="detailed" (with the detailed key scope) to add risk.details and signals, and refuses raw. assess() also accepts typed flow and region policy context; bounded retries of network failures, 429 and 503 are enabled with max_retries.
For signed webhooks call verify_webhook(raw_body, list_of_raw_header_pairs, secrets_by_key_id). It checks the v1= HMAC-SHA256 signature over the raw bytes, the 300-second window and the event id, refuses repeated or case-variant headers, and returns the typed WebhookEvent. An assessment.updated event's data is the full assessment as get_assessment returns it; webhook_assessment(event) returns it as a typed Assessment. webhook_verification_response(event) echoes a verified registration challenge.
Only call the API from a trusted backend. All recommendations are advisory and not calibrated probabilities. The SDK does not turn a timeout, pending assessment, blocked source or absence of evidence into an allow decision. See example rules for turning an assessment into an action.
Every request, response, summary, detail, signal and webhook type is a TypedDict in noresponse_sdk.generated_models, generated from the provider OpenAPI contract. See provider onboarding for key rotation, webhook verification, retries and staging setup.
Metadata
Release files for noresponse 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| noresponse-1.0.1.tar.gz | 23.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| noresponse-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 41.6 kB
Release files / noresponse-1.0.1.tar.gz
| Download URL | noresponse-1.0.1.tar.gz |
|---|---|
| Size | 23.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e4643bf90c0f93ca59403784e3e1270cd6d9817f61d49bb9e238f92b3b38c926
|
|
BLAKE2b-256 checksum How to use checksums |
40b5a9c881797dc624a4a1bd7499c67691c25c9ef27de1e7256a896ce6855f58
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / noresponse-1.0.1-py3-none-any.whl
| Download URL | noresponse-1.0.1-py3-none-any.whl |
|---|---|
| Size | 17.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
595ed7c878401b2beec5861fbf070ee3a91972b0b973f1fbaa0c4435d09f2a40
|
|
BLAKE2b-256 checksum How to use checksums |
54882e899f84898c80d42e7881e203210f3402ac548b36d4476046704ffddeb5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for noresponse 1.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.