API
Read and create contracts, and list reminders, with an API key. Keys are created in Settings and work on Professional and Enterprise plans.
Authentication
Send the key on every request. The full key is shown once when you create or rotate it.
Authorization: Bearer ct_your_key
Content-Type: application/jsonBase URL: https://docrenewal.com
List contracts
GET /api/v1/contracts
curl https://docrenewal.com/api/v1/contracts \
-H "Authorization: Bearer ct_your_key"Returns { contracts: [...] }.
Get one contract
GET /api/v1/contracts/:id
Returns the contract, or 404 when it is not on your account.
Create a contract
POST /api/v1/contracts
Required fields are title, vendor, cost, category, startDate, and endDate. Dates use YYYY-MM-DD. billingFrequency can be monthly, quarterly, yearly, or one-time. cancellationDeadline is optional and stores the last date to cancel before renewal. autoRenew, notes, and documentUrl are optional. Status is set from the end date: active, expiring within 30 days, or expired.
curl https://docrenewal.com/api/v1/contracts \
-H "Authorization: Bearer ct_your_key" \
-H "Content-Type: application/json" \
-d '{
"title": "Office lease",
"vendor": "Acme Realty",
"cost": "1200.00",
"category": "Facilities",
"startDate": "2026-01-01",
"endDate": "2026-12-31",
"cancellationDeadline": "2026-12-01",
"billingFrequency": "monthly",
"autoRenew": false
}'A successful create returns 201 and the contract. Reminders are created from your default template.
List reminders
GET /api/v1/reminders
curl https://docrenewal.com/api/v1/reminders \
-H "Authorization: Bearer ct_your_key"Returns { reminders: [...] }.
Errors
- 401 means the key is missing, revoked, or wrong.
- 403 means the plan does not include API access, or the contract limit is reached.
- 400 means a required field is missing or invalid.
- 404 means that contract was not found.