Curvestone
POST/check

Auto-Triage Inbound Cases

Automatically triage and score every case that lands on your desk.

Who is this for

Underwriter or Packager at a lender. You receive dozens of mortgage applications daily and need to prioritise which ones need attention. Instead of manually reviewing every case, you run an automated admin-level check that flags high-risk applications for manual review.

What you'll do

  • 1
    Set up an automated loop that runs an admin-level check on every inbound case
  • 2
    Attach internal metadata (source, queue ID) to each job for tracking
  • 3
    Route passing cases straight to the processing queue
  • 4
    Flag cases with issues for manual underwriter review

The API call

Loop through inbound cases and run an admin_check on each one. The metadata field lets you attach internal tracking IDs.

auto_triage.py
python
from curvestone import Agent
agent = Agent() # reads CURVESTONE_API_KEY from env
# inbound_cases: list of case objects from your internal system
for case in inbound_cases:
result = agent.check(
case_type=case.type,
depth="admin_check",
documents=case.documents,
reference=case.ref,
metadata={
"source": "lender_portal",
"queue": "auto_triage",
},
)
if result.triage == "pass":
queue.add(case.ref, priority="normal")
else:
queue.add(case.ref, priority="review", flags=result.flags)
notify_underwriter(case.ref, result.flags)
print(f"{case.ref}: {result.triage} ({result.processing_time})")

The response

A compact admin-level result with pass/fail checks and a flags array for issues.

response.json
json
1{
2 "id": "job_3mNx8kQpT1",
3 "type": "check",
4 "status": "completed",
5 "triage": "fail",
6 "reference": "APP-2026-08821",
7 "processing_time": "28s",
8 "scoring": "pass_fail",
9 "checks": [
10 { "name": "Document Presence", "triage": "pass" },
11 { "name": "Application Completeness", "triage": "pass" },
12 { "name": "Basic Eligibility", "triage": "fail" }
13 ],
14 "flags": [
15 "missing_proof_of_deposit"
16 ],
17 "metadata": {
18 "source": "lender_portal",
19 "queue": "auto_triage"
20 },
21 "cost": "£0.50"
22}

What happens

Fastest and cheapest depth tier

Admin checks are the lightest depth tier: £0.50 per case and approximately 30 seconds to complete. They are designed for high-volume triage where you need to process dozens or hundreds of cases per day without breaking the budget.

Three core checks for triage

Admin checks run three focused checks: document presence (are all required documents attached?), application completeness (are all required fields populated?), and basic eligibility (does the applicant meet minimum criteria?). These catch the most common blockers before a case reaches an underwriter.

Flags route cases to manual review

When a check fails, the response includes a flags array with machine-readable issue codes. Your internal system can use these flags to route the case to the right queue: cases that pass go straight through, while cases with flags are routed to manual review with the specific issues pre-identified.

Metadata for internal tracking

The metadata field is a free-form object that is stored with the job and returned in every response and webhook event. Use it to attach your internal case IDs, queue names, source systems, or any other tracking data you need to correlate Curvestone results with your internal workflows.

DepthUse caseTimeCost
admin_checkHigh-volume triage~30s£0.50
soft_checkPre-submission screening~30s£0.50
full_checkFull compliance review~2 min£3.00+