Responses

Understand smtpRS results.

Responses include a decision, a normalized risk score, plan context, model context, and usage accounting. Full layer details are available only to entitled tiers.

Core fields.

FieldDescription
emailThe email represented by the response, when returned.
overall_riskNormalized overall risk score.
decisionCustomer-facing recommendation such as allow, manual_review, or reject.
tierThe workspace or API-key tier reflected by the request.
analysis_profileThe profile used: quick, standard, adaptive, deep, or catch_all.
response_profileThe response shape, such as summary or full.
credit_costPlanned credit cost for the selected profile.
credits_chargedCredits recorded for this request, when returned.
reasonsHuman-readable reasons supporting the decision.
usageUsage and quota snapshot for the active period.
company_validity_betaTyped beta availability and opt-in metadata when returned.
domain_signalNormalized domain, mail, and optional company-context facts when returned.

Decision values.

Decision Typical meaning Suggested action
allow The signal set does not indicate high risk. Continue your normal workflow.
manual_review The address or domain has ambiguous or elevated signals. Queue for review, request more context, or add friction.
reject The signal set indicates strong risk or invalid structure. Block, deny, or require a safer alternate email depending on your policy.

Summary response.

Summary responses provide stable decision and accounting fields without internal layer payloads.

{
  "email": "alice@example.com",
  "overall_risk": 2,
  "decision": "allow",
  "tier": "BASIC",
  "analysis_profile": "quick",
  "credit_cost": 1,
  "credits_charged": 1,
  "response_profile": "summary",
  "reasons": []
}

Full response.

Entitled tiers may receive additional domain signals or layer details. Treat internal layer payloads as diagnostic data rather than stable fields for hardcoded business rules.

{
  "email": "alice@example.com",
  "overall_risk": 2,
  "decision": "allow",
  "tier": "PRO",
  "analysis_profile": "deep",
  "response_profile": "full",
  "credit_cost": 5,
  "credits_charged": 5,
  "domain_signal": {
    "domain": "example.com",
    "domain_exists": true,
    "mail_capable": true,
    "spf_present": true,
    "dmarc_present": true,
    "reason_codes": []
  },
  "layers": {}
}
Python SDK response handling.The SDK returns SmtpRsAnalysis and preserves the complete payload. Use typed attributes for stable fields and result.to_dict() for newly added or diagnostic fields.