Terms of Service
Version 2026-08-26 · Effective 2026-08-27
This agreement
This agreement is between you, the customer, and Investorlift Data Services. It governs your use of the Investorlift Data Services API and of the Portal.
The defined terms used below — Account, API Key, Balance, Credit, Ledger, Metered Call, Refund, Spend, Tier, Trace ID — mean here exactly what they mean in the Docs.
Each of those terms is defined in the Docs: the glossary
What you are buying
Access is strictly pay-as-you-go. You buy prepaid Credits, and you spend them on Metered Calls.
There is no subscription, no renewal, and nothing to cancel. Nothing on this Account recurs on a schedule.
Credits are prepaid consumption, not money
A Credit is prepaid consumption against the Investorlift Data Services API and nothing else.
Credits are never redeemed for cash, never returned to a payment method as money, and never transferred between Accounts.
A Credit is not stored value and not a transferable instrument. It buys Metered Calls on the Account that holds it, and nothing more.
Credit expiry
Credits do not expire.
A Credit stays on the Account that holds it until a Metered Call consumes it, or until the Account is suspended as described below.
What a Metered Call consumes
One Credit is consumed per property submitted, and one Credit is returned for each submitted property that fails for a reason the refund clause below covers.
One Credit is one Metered Call at every Tier.
Batch scoring. A batch request is charged when it is accepted: one Credit per property submitted, deducted from your Account’s Balance as a single transaction. A batch that cannot be charged in full — including where your Balance cannot cover every property in it — is rejected in full, and no Credits are consumed. A batch exceeding the documented batch size limit is rejected before any charge, and no Credits are consumed.
After a batch is accepted, each property in it that cannot be scored for a reason covered by our refund policy is automatically refunded — one Credit per such property, returned to your Account’s Balance. The covered reasons are the same as for single scored calls: the address cannot be resolved to a single property; the address is outside our covered area; the property cannot be scored; or the scoring service fails or does not answer in time. Properties that are scored are charged exactly one Credit each. Batches are never partially accepted: your Balance reflects either the full charge for an accepted batch (less any automatic refunds), or no charge at all.
Recorded history calls. A call for a property’s recorded history is a Metered Call and consumes one Credit from your Account’s Balance. One Credit is one Metered Call at every Tier.
A property with no recorded history is a completed call and is charged. Where the records are retrieved and hold no transactions for the property, the call succeeds, reports that the records were checked and held nothing, and consumes one Credit. That is an answer, not a failure.
The Credit is returned to your Balance when the call cannot be answered. In addition to the reasons that apply to every Metered Call — the address matched more than one property; the address is outside the covered area; an upstream service failed or did not answer in time — the Credit is returned when no property record can be found for the identifier on the request. Calls rejected before any charge, including a request that does not carry exactly one of an address or a property identifier, consume no Credit at all.
When a Credit comes back
Every way a call can end without producing a score is published, and each one falls into one of the three groups below. Together they are the whole of the refund policy.
Refunded — The Credit is returned to your Balance when an upstream service did not answer in time; an upstream service failed; the address matched more than one property; the address is outside the covered area; the address could not be scored; no property record could be found for the identifier on the request.
Nothing consumed — No Credit was taken at all when the request was malformed; the call exceeded the documented size limit; the API Key was missing, invalid, or revoked; the Balance was too low to cover the call; a rate limit was reached; an Idempotency-Key was reused with a different body; an identical call was already in flight; the Ledger could not be reached; no endpoint exists at the path that was called; the call was never started; the Metered Call was made before the current Terms of Service were accepted; the Account had reached its Spend Cap.
Outcome not known — The call did not complete and the result of its Spend is not known. In that case any Credit recorded for the call is returned to the Account as a Refund.
Every change to your Balance is a Ledger line item you can see, never a silent Balance edit, and a Refund never exceeds the original Spend.
Each case above is published in full, one page for each: the error reference
Suspending an Account
We can suspend an Account. A suspension sets the Balance to zero by writing a Balance adjustment to the Ledger, and it takes no Credit for any call.
A suspension can be reversed. Reinstating an Account writes a second Balance adjustment, returning the Credits the suspension removed.
Both entries appear in the Account’s Ledger history, labelled Balance adjustment, so a suspension is never a silent Balance edit.
Retrying safely
The Idempotency-Key header is optional, and sending no key is never an error.
Keys are scoped to the Account, so one Account can never replay another Account’s result.
The replay window is 24 hours: the same request sent again with the same key inside that window returns the stored response, with no further Spend. If these Terms of Service have changed materially since this Account last accepted them, that request is refused for consent instead, and nothing is charged for it.
Only successful responses are stored, so a retry after a refunded failure is a genuine new, charged attempt.
A key is replayed only when the earlier call succeeded and its response was stored. If the earlier call was refunded, ended without a stored response, or is older than the replay window, the key is taken over: the new request runs and is charged, whatever body it carries. Otherwise the same key sent with a different body is refused, and nothing is charged for it.
Addresses you submit
An address you submit is sent to the services that resolve and score it. That is what the API is for.
We may store and log submitted addresses and query data internally, to operate and support the service.
Submitted addresses are treated as your confidential business data. On what is done with that data, this is the whole of what we promise: it is never sold, never shared between customers, and never used to build or market a competing acquisition list.
A submitted address appears in no error body, no Ledger line item and no support view.
What this service depends on
Valuations depend on an upstream service we do not operate. Whether that service answers, and how quickly it answers, is outside our control.
No service level is promised in v1. This document commits to no availability figure of any kind.
How these Terms change
The version is recorded on every change, and the version in force is shown at the top of this page.
A change to the substance of any of the seven obligations above requires re-acceptance before the next Metered Call. The seven obligations are what makes a change material.
Anything else — a typo, formatting, or a clarification that changes no obligation — is not material, and requires no re-acceptance.