Investorlift DS
  • Getting started
  • The contract
  • Errors
  • API reference
Information
MCP
    MCP Endpointpost
Scoring
    Score a property addresspostScore a batch of property addressespostCheck a request without spendingpost
History
    Read a property’s recorded transaction historypost
Schemas
Investorlift Data Services API

Investorlift Data Services API

Rehab-aware valuation, maximum allowable offer and recorded transaction history — for a single property address or a batch of them.

The Investorlift Data Services API scores a property address and returns a rehab-aware valuation and the maximum allowable offer — the most a flip buyer on standard financing can pay and still clear the target margin.

Authentication. Every request carries an API Key as Authorization: Bearer <API Key>. Issue and revoke API Keys from the Portal.

Metering. POST /v1/predict is a Metered Call: it consumes Credits from the Account's Balance. The Credit cost of a call is resolved by the Ledger at the moment of the Spend and is published in the Portal — it is never sent by the client and never appears in this document. POST /v1/validate is free: it consumes no Credits and keeps working at a zero Balance. With an API Key it makes no Ledger call at all, so it answers even while the Ledger is down. A connected app — one that signed you in instead of holding an API Key — makes one Ledger read there to confirm the connection is still approved, so while that read is failing it answers 503 call-not-started. Nothing is charged either way.

Idempotency. Send an Idempotency-Key header on POST /v1/predict to make a retry safe. The header is optional; a request without one is never an error and is charged per call. Keys are scoped to the Account that sent them — one Account can never replay another Account's result.

No automatic retry. This API never retries a request on your behalf. A Metered Call can consume a Credit before it fails, so retry is yours to control and your Idempotency-Key is what makes it safe.

Errors. Every error response is an RFC 9457 Problem Detail sent as application/problem+json. The type member is a stable URI you can branch on; it never changes without a documented deprecation. Every response, success or failure, carries a trace-id header, and every Problem Detail repeats it as trace_id. That Trace ID is the only handle support needs to find your call.

Reading a 503. The three 503 types mean different things and must not be treated alike. ledger-unreachable states that the call was never started and no Credits were consumed. spend-indeterminate makes no claim about what was consumed, because the outcome is not known; any Credit recorded for that call is returned to the Account as a Refund. call-not-started makes the same no-charge claim ledger-unreachable makes, and is sent when the failure happened before the Ledger was called at all, so no Spend was ever recorded.

Support. Questions about a call, an Account or a Refund go to [email protected]. Quote the Trace ID from the response.

Tags
MCP
Model Context Protocol (MCP) server endpoints for AI tool integration
Scoring
History
ContactInvestorlift Data Services support
Servers
https://api.investorliftdata.com