The problem
Property managers and leasing agents manually key lease terms, applicant income figures, and insurance details into their property management software for every unit turnover — repetitive work that doesn't get easier as a portfolio grows.
How Dokyumi solves it
Define a lease schema (tenant name, lease dates, monthly rent, deposit, unit/property address) and an insurance dec-page schema (named insured, policy number, coverage amount, effective/expiration dates, carrier), then select the right slug on the shared extraction endpoint.
Give applicants and tenants a white-label upload portal to submit leases, applications, and proof of insurance directly. Dokyumi returns structured JSON you can push into your property management system via webhook.
Example schema and result
A real schema shape for real estate & leasing documents, and the JSON you get back from one extraction.
Example schema definition
{
"slug": "lease-parser",
"name": "Lease Parser",
"description": "Extracts tenant, term, and rent data from residential lease agreements",
"ocr_mode": "standard",
"fields": [
{
"key": "tenant_name",
"type": "string",
"required": true
},
{
"key": "property_address",
"type": "string",
"required": true
},
{
"key": "unit_number",
"type": "string",
"required": false
},
{
"key": "lease_start_date",
"type": "date",
"required": true
},
{
"key": "lease_end_date",
"type": "date",
"required": true
},
{
"key": "monthly_rent",
"type": "currency",
"required": true
},
{
"key": "security_deposit",
"type": "currency",
"required": false
}
]
}Result — POST /api/v1/extract
{
"id": "b4d57dcf-8ed2-4714-a974-ae7c113e3cd6",
"status": "completed",
"request_id": "45fbef89-2033-4420-96ed-7c103c66bd93",
"schema": "lease-parser",
"data": {
"tenant_name": "Priya Nair",
"property_address": "482 Elmwood Ave",
"unit_number": "3B",
"lease_start_date": "2026-08-01",
"lease_end_date": "2027-07-31",
"monthly_rent": 2150,
"security_deposit": 2150
},
"confidence": {
"monthly_rent": 0.99,
"lease_start_date": 0.97,
"lease_end_date": 0.97
},
"validation": {
"valid": true,
"errors": [],
"low_confidence_fields": []
},
"meta": {
"processing_time_ms": 1420,
"page_count": 6,
"credits_used": 2,
"ocr_cached": false,
"model": "anthropic/claude-sonnet-4"
}
}How it works
Define schemas for each document
Leases, applications, and insurance dec pages each get their own schema.
Hand applicants/tenants a branded portal
Or accept uploads via your own intake flow calling the API.
Get structured lease/insurance data
Receive terms, dates, and amounts with confidence and validation details; inspect review results before downstream use.
Sync to your property management system
Push results via webhook into Yardi, AppFolio, Buildium, or your own tooling.
Real Estate & Leasing FAQ
Does Dokyumi integrate directly with Yardi, AppFolio, or Buildium?+
Can it handle leases with different formats across states or property types?+
Can applicants submit renters insurance proof annually through the portal?+
Does it verify applicant income or run a credit/background check?+
How many white-label portals do I get?+
Parser guides for these documents
Related use cases
Lending & Underwriting
Pull income and asset figures from pay stubs, bank statements, and tax returns without re-keying a single number.
Insurance
Pull named insured, policy numbers, coverage limits, and claim details from dec pages, ACORD forms, and claims paperwork.
Accounts Payable
Extract vendor, line-item, and total data from invoices and receipts — no template building, no AWS Textract setup.