Documentation
Quickstart
From contract text to alert queue in four calls.
1. Intake a contract
Paste the contract text. Extraction runs immediately; the contract sits in pending_confirmation.
curl -s -H "Authorization: Bearer <key>" -X POST https://api.renewalradar.example/v1/contracts \
-H "Content-Type: application/json" \
-d '{"title":"VendorCo MSA","counterparty":"VendorCo","text":"MASTER SERVICES AGREEMENT. ..."}'
# {"id":"ctr_0001","status":"pending_confirmation",
# "terms":{"renewal_date":"2026-01-15","notice_days":90,"auto_renewal":true,...}}2. Confirm (or correct)
A human confirms — correcting dates if needed. Corrections are type-validated and recompute the notice deadline.
curl -s -H "Authorization: Bearer <key>" -X POST https://api.renewalradar.example/v1/contracts/ctr_0001/confirm \
-H "Content-Type: application/json" \
-d '{"by":"don+renewalradar@lifeofmorr.com","corrections":{"notice_days":60}}'3. Read the alert queue
Confirmed contracts renewing within the horizon, bucketed 30/60/90.
curl -s -H "Authorization: Bearer <key>" "https://api.renewalradar.example/v1/alerts?horizon_days=90"
# {"alerts":[{"title":"VendorCo MSA","days_until_renewal":45,"bucket":60,
# "notice_deadline":"2025-10-17","days_until_notice":-45,...}]}4. Check obligations
Plain-English obligation list: what to do, by when, and the source.
curl -s -H "Authorization: Bearer <key>" https://api.renewalradar.example/v1/obligations
Honest limits
- Extraction states what contracts say with source citations; it never interprets. Not legal advice — every alert says 'talk to your lawyer.'
- Ambiguous dates are flagged derived, never assumed. Missing clauses are flagged, never invented.
- Nothing alerts before a human confirms. Alerts are computed into the alerts feed; email delivery is on the roadmap (computed alerts queue in the delivery outbox).