Weekly sweep: send win-back emails to inactive Basic/Pro orgs (30-90d stale)
Weekly cron targeting paid orgs whose most-recent api_keys.last_used_at is between 30 and 90 days ago.
Audience (audit R15):
- status='active' (skip canceled / past_due / payment_at_risk)
- tier IN ('basic', 'pro') — free-tier excluded: free cooling-off is evaluation behavior, not churn, and over-emailing degrades sender reputation.
- max(api_keys.last_used_at) between 30 and 90 days ago.
Upper bound (90d) prevents cold-contacting fully abandoned trials indefinitely. Frequency cap (30d) in send.py means a user stuck in the 30-90 band gets at most one win-back every 30 days, not once per weekly cron fire.
Headers
Response
Successful Response
Changes
Changed in 1 of the 7 revisions of this API.13
- ●
removed the optional property
detailfrom the response with the422statusresponse-optional-property-removed
- ○
added the required property
detailsto the response with the422statusresponse-required-property-added
- ○
added the required property
errorto the response with the422statusresponse-required-property-added
- ○
added the required property
messageto the response with the422statusresponse-required-property-added
This revision also has 4 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ●