LEASVIO DEVELOPER PLATFORM · V1
Property operations,
ready to compose.
Build on a versioned, tenant-scoped REST API with cursor pagination, sparse fields, idempotent writes, signed webhooks and a safe test-payment sandbox.01 · QUICKSTART
One request, one accountable identity.
Create a service account in the signed-in console. The secret appears once; Leasvio retains only a SHA-256 hash. Choose explicit scopes and optionally constrain the key to properties.curl https://api.leasv.io/v1/properties?limit=25 \
-H "Authorization: Bearer lv_live_…"
# Filter, sort and request only fields you need
curl 'https://api.leasv.io/v1/leases?filter[status]=active&sort=-created_at&fields[leases]=id,status,end_date' \
-H "Authorization: Bearer lv_live_…"Leasvio-Event-Id: 8c…
Leasvio-Timestamp: 1788048000
Leasvio-Signature: v1=9f…
HMAC_SHA256(secret, timestamp + "." + rawBody)
Return any 2xx within 10 seconds. Failed events retry with exponential backoff and remain replayable from the delivery register.02 · WEBHOOKS
Signed, retried, observable.
Subscribe to individual lifecycle events or *. Secrets are encrypted at rest. Every attempt records its response, latency path and retry state. DNS is resolved before delivery and private networks are blocked.03 · INTEGRATION KITS
Start in the language you ship.
Small dependency-light clients make the contract obvious. Generate production clients from the OpenAPI document when you need deeper model coverage.const api = new LeasvioClient(process.env.LEASVIO_KEY!);
const page = await api.list("workorders", {
filter: { status: "open" },
fields: ["id", "priority", "sla_due_at"],
});
while (page.meta.has_more) {
// Continue with page.meta.next_cursor
}