Appearance
Coverage & fees
Scopes: fees:read (and products:read to populate dropdowns).
Fee schedules and coverage in Appraiser Flow are per appraiser. The Public API resolves a firm-facing preview as follows (see spec §6.1):
- If the tenant set a Default fee appraiser in Integrations → Public API, that appraiser’s coverage and schedule are used (
fee_basis: "default_appraiser"). - Otherwise, among active appraisers who cover the county, the API returns the lowest fee (
fee_basis: "lowest_covering"). - If nobody covers the area →
422/coverage_unavailable. - If covered but no fee row exists →
covered: truewithfee/turnaround_daysnull (office completes in-app). Do not invent a number on your site.
List products
http
GET /public/v1/productsReturns active products the tenant offers (code, name, category flags as applicable).
Coverage check
http
POST /public/v1/coverage/check
Content-Type: application/json
{
"state": "TN",
"county": "Davidson",
"product_code": "1004"
}Response (illustrative):
json
{
"covered": true,
"state": "TN",
"county": "Davidson",
"product_code": "1004"
}Use this to disable submit on your form when covered is false.
Fee preview
http
POST /public/v1/fees/preview
Content-Type: application/json
{
"product_code": "1004",
"subject": {
"line1": "123 Main St",
"city": "Nashville",
"state": "TN",
"postal_code": "37203",
"county": "Davidson"
}
}Response (illustrative):
json
{
"product_code": "1004",
"fee": "450.00",
"currency": "USD",
"turnaround_days": 7,
"covered": true,
"fee_basis": "lowest_covering",
"notes": null
}When no schedule row:
json
{
"product_code": "1004",
"fee": null,
"currency": "USD",
"turnaround_days": null,
"covered": true,
"fee_basis": "lowest_covering",
"notes": "Fee to be confirmed by office"
}Compliance
This preview is a commercial offer shape: fee and turnaround only.
It is not an appraisal, opinion of value, or AVM. Do not label it as a value estimate on your site.