Provider-specific requirements
Allegrow resolves B2B catch-all domains and identifies primary email addresses. Use it after another verifier returnscatch_all. You can also use it to distinguish a person’s primary address from secondary addresses. Compare the applicable action prices before selecting a route.
Status Interpretation
result.subStatus:
primary: Allegrow identified this as the contact’s main email. Especially useful for execs and senior decision-makers who have multiple valid addresses.null: No additional context.
Usage Patterns
- After ZeroBounce returns
catch_all: Run Allegrow on those rows to resolve dead vs safe. Allegrow’s B2B specialisation makes it materially better than generic verifiers on corporate domains. - Executive lists: Use
subStatus == primaryto prefer the primary address when multiple candidates exist. - Do not use
allegrow_validateas a bulk first-pass verifier. It costs per call and is slower than SMTP-based verifiers. Reserve it for catch-all resolution and high-value contacts. - Polling: The sync endpoint has a 30-second timeout. A 202 response includes
pollUrlandretryAfter. It is pending, not a final verdict. In a Play, preserve the existing validation identity and use the describedallegrow_validate_statuscontract for later status reads, respectingretryAfterwithctx.sleep. Do not assume launching a Play automatically completes pending validations, or submit another paid validation to inspect one. Keep any polling bounded and report unresolved work if the deadline expires. - Async validation: Use
allegrow_validate_asynconly when a configured webhook or later polling viaallegrow_validate_statusfits the workflow. - Bulk CSV: Use the CSV job endpoints when the user explicitly needs Allegrow’s bulk CSV workflow.
allegrow_create_csv_validation_jobonly creates the job and upload URL. The CSV upload itself is a direct PUT to the returned presigned URL.
deepline plays search "email validation" and inspect the selected
contract with deepline describe <play-ref>. Confirm operation
hints using deepline describe <tool-id>, then call them inside
the Play via ctx.tools.execute({ id, tool, input, description }).
For a custom CSV Play that reads ctx.csv(input.csv), check it with
deepline plays check validate-email.play.ts and run the authorized input
with deepline plays run --file validate-email.play.ts --csv contacts.csv --watch.
Pilot only for larger or uncertain authorized work. do not require an extra run
or repeated approval for a small supplied Play. Inspect retained results with
deepline runs get <run-id> and its result/export commands, without paid
fallback or repair unless that additional work was requested.
Known Limitations
- No balance/credit endpoint exposed in the API. quota resets are managed with your account manager.
- owner.com and similar corporate domains return
dead_emaileven for likely-valid addresses. Allegrow is conservative on fully catch-all domains with no MX activity evidence. Cross-reference against CRM data before removing these. - The exact purchased validation USD rate is not in the docs. Keep
ALLEGROW_PROVIDER_CURRENCY_TO_USD_RATEblocked at 0 until the contract rate is supplied.
Find an applicable action
Confirm your effective workspace, then search the live catalog:Inspect the selected contract
Replace<returned-tool-id> with the identifier returned by discovery:
Prepare one reviewed input
Use one authorized record that matches the inspected schema. Preserve its source identity and define the result you will accept. Open the action reference for its payload and response shape. Provider-backed execution can incur usage or external effects. For reusable logic, follow Write Plays. For direct-call recovery, use Tool execution recovery.Continue only when the workspace, provider, required fields, acceptance rule, and applicable price are understood. Keep unavailable access separate from no-result evidence.