Developer Documentation

Appraisal Data Extraction API

Programmatic access to BRAVE-format data extraction from commercial real estate appraisal PDFs. Upload an appraisal, receive structured JSON with all 99 fields — ready for your underwriting models, Argus, or internal databases.

REST API

Simple multipart/form-data upload. JSON responses.

Authenticated

Bearer token auth. Rate-limited per key.

99 BRAVE Fields

Full extraction in under 60 seconds per PDF.

Base URL

https://appraisalapi.com/api/v1

All endpoints require an Authorization: Bearer YOUR_API_KEY header. API keys are issued on request — contact us for access.

Authentication

API access is not self-serve

To protect the integrity of our extraction pipeline and manage costs, API keys are issued on a case-by-case basis. Contact help@appraisalapi.com with your use case, expected volume, and company details. We typically respond within one business day.

Looking to extract a few appraisals? Use the free web tool — no API key needed, up to 5 extractions per day.

Endpoints

POST/api/v1/extract Requires API Key

Upload a commercial real estate appraisal PDF and extract all 99 BRAVE-format fields. The API validates the document is a CRE appraisal before running the full extraction pipeline.

Request

Content-Type: multipart/form-data

file — PDF file (max 50 MB, must be application/pdf)

curl -X POST https://appraisalapi.com/api/v1/extract \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "file=@appraisal.pdf"

Response

{
  "ok": true,
  "cached": false,
  "data": {
    "Job.ClientRef": "LOAN-2026-0442",
    "Job.ReportDate": "2026-03-15",
    "Property.Name": "Oakwood Business Park",
    "Property.AddressStreet": "1200 Commerce Dr",
    "Property.AddressCity": "Dallas",
    "Property.AddressState": "TX",
    "Property.Type": "Industrial",
    "Property.GBA": 142000,
    "Income.PGI": 1850000,
    "Income.EGI": 1665000,
    "Income.NOI": 1248000,
    "Value.CapRate": 6.75,
    "Value.ReconciledFinal": 18500000
  },
  "pages": { "Job.ClientRef": 3, "Property.Name": 1 },
  "hash": "5ef557a6b945..."
}

Error Codes

400Missing or invalid file
401Invalid or missing API key
422Document is not a CRE appraisal
429Rate limit exceeded
503Extraction service unavailable
POST/api/v1/download Requires API Key

Generate and deliver BRAVE-format XLSX and CSV files from a completed extraction. Files are emailed to the specified address with both formats attached.

Request

Content-Type: application/json

email — Delivery email address

termsAccepted — Must be true

hash — PDF hash from the extract response

data — The extracted BRAVE fields object

curl -X POST https://appraisalapi.com/api/v1/download \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "analyst@yourfirm.com",
    "termsAccepted": true,
    "hash": "5ef557a6b945...",
    "data": { ... }
  }'

Response

{
  "ok": true,
  "message": "BRAVE XLSX + CSV sent to analyst@yourfirm.com",
  "formats": ["xlsx", "csv"]
}
GET/api/health

Check API availability and current version. This endpoint does not require authentication and is not versioned.

Response

{
  "status": "ok",
  "version": "1.0.0",
  "timestamp": "2026-03-26T14:30:00.000Z"
}

BRAVE Field Schema

Every extraction returns all 99 fields from the BRAVE (Banking Real Estate Appraisal Valuation Exchange) standard, organized into 5 categories. Fields use dot-notation keys matching the official specification.

Job

3 fields
Job.ClientRefJob.ReportDateJob.CurrencyType

Property

52 fields
Property.NameProperty.TypeProperty.GBAProperty.AddressCityProperty.Tax.YearProperty.Latitude+46 more

Income

16 fields
Income.PGIIncome.EGIIncome.NOIIncome.VacancyRateIncome.OpEx+11 more

Value

24 fields
Value.CapRateValue.ReconciledFinalValue.IncomeApproachValue.SalesCompApproachValue.DiscountRate+19 more

Appraiser

4 fields
Appraiser.NameAppraiser.LicenseNumberAppraiser.CompanyAppraiser.State

See the complete BRAVE 99-field reference for full field descriptions, types, and validation rules.

Rate Limits

TierExtractions / DayMax File SizeConcurrent
Free (Web)550 MB1
Starter API5050 MB3
EnterpriseCustom100 MB10+

Ready to integrate?

Tell us about your use case and we'll get you set up with API access.