Skip to main content
Decision reference

Soryxa Reason Codes

Reason codes turn email validation into explicit workflow states. Use them to decide which addresses can continue, which should be blocked, and which need review.

Routing vocabulary

allow

Continue the signup, intake, or workflow step.

block

Stop invalid or policy-disallowed addresses.

review

Send mixed, risky, or temporary states to a deliberate fallback path.

Reason code Decision Meaning
CLASSIFICATION_VALID allow Email classified as valid by the validation provider.
DEFAULT_ALLOW allow No blocking rule matched, so the team default allows the address.
ALLOW_LIST_MATCH allow Address or domain matched a team allow list.
CLASSIFICATION_INVALID block Email classified as invalid by the validation provider.
BLOCK_BOGUS_DOMAIN block Domain failed quality checks and matched a blocking rule.
BLOCK_DISPOSABLE block Disposable email pattern matched a team blocking rule.
BLOCK_FREE_PROVIDER block Free email provider matched a team blocking rule.
BLOCK_ROLE_ACCOUNT block Role account pattern matched a team blocking rule.
BLOCK_LIST_MATCH block Address or domain matched a team block list.
CLASSIFICATION_RISKY review Validation provider returned a risky classification.
SCORE_BELOW_THRESHOLD review Validation score is below the team threshold.
DISPOSABLE_REVIEW review Disposable signal is present but configured for review instead of block.
SERVICE_UNAVAILABLE review Validation service was unavailable, so the address needs fallback handling.
HASHED_REVIEW_AUTO_APPROVED allow A hashed review outcome was automatically approved according to team privacy settings.
HASHED_REVIEW_AUTO_REJECTED block A hashed review outcome was automatically blocked according to team privacy settings.

Allow

Continue the signup, CRM intake, or workflow when the address passes configured validation rules.

Block

Stop known-invalid, disposable, blocked, or policy-disallowed addresses before they enter downstream systems.

Review

Queue mixed, risky, or temporarily unavailable results for fallback handling instead of treating them as valid or invalid.

How teams use reason codes

The reason code should be stable enough for automation and readable enough for product, support, and operations teams to understand the result without re-running validation.

Avoid building rules from message text alone. Messages can help people understand an outcome, while reason codes give software a durable value for routing, dashboards, support lookup, and later policy changes.

Keep the original decision with the reason code. A code such as SERVICE_UNAVAILABLE means something different when it is attached to review than a policy block or a provider-invalid classification.

Product signup gates

Use allow for normal onboarding, block for policy-disallowed addresses, and review for cases that need a fallback screen or manual check.

CRM intake workflows

Store the reason code next to the record so later automation can explain why an address was allowed, blocked, or held for review.

Operations reporting

Group reason codes by decision to understand whether blocked volume is driven by invalid addresses, disposable patterns, team policy, or temporary service states.