VISION-AS-A-SERVICE · V1 · BASE SEPOLIA

Programmable
vision. Anywhere.

A global marketplace for live video feeds — from phones, drones, and fixed cameras. One API. Any agent. Settled per-second in USDC on-chain, no fiat in the loop.

// observable.world

POST /v1/sessions
# open a live feed at lat,lng — pay per minute
$ curl -X POST https://api.luxxon.dev/v1/sessions \
-H "Authorization: Bearer $LUXXON_KEY" \
-d '{"lat":4.71,"lng":-74.07,"minutes":5}'
 
200 OK · 1.2s
{
"id": "ses_3a91kF",
"stream": "https://edge.luxxon.dev/whep/ses_3a91kF",
"operator": "ptz_4d8c",
"settled": "0.45 USDC"
}
Marketplace pulse

A real marketplace in motion.

Streams open, operators match, USDC settles — every second, somewhere. This is a sample of recent platform activity.

Live feed
lxk.v1
    Bogotá/ liveMedellín/ liveCali/ liveCDMX/ liveMonterrey/ liveBuenos Aires/ liveSão Paulo/ liveLima/ liveEstambul/ liveDubai/ liveLagos/ liveNairobi/ liveBerlín/ liveLisboa/ liveBogotá/ liveMedellín/ liveCali/ liveCDMX/ liveMonterrey/ liveBuenos Aires/ liveSão Paulo/ liveLima/ liveEstambul/ liveDubai/ liveLagos/ liveNairobi/ liveBerlín/ liveLisboa/ live
    Live coverage

    Where Luxxon is open for business.

    Operators online, plotted live. Yellow rings are active coverage. Dashed pins are unmet demand from the last 30 days — every request that didn't find supply.

    Built for whoever needs eyes on the world.

    Use cases
    AI agents

    Vision for autonomous agents

    LangChain, CrewAI, AutoGPT — your agent perceives the real world at a coordinate on demand. GET /sessions/:id/frame returns a JPEG ready for any vision model — no WebRTC stack to integrate.

    agent.invoke("verify parking lot at 4.71,-74.07")
    Insurance

    Pre-claim verification in minutes

    Pre-screen damage claims with a 5-minute live feed instead of dispatching a human adjuster. Every settled session lands on-chain — auditable forever.

    claim.preview(coords, duration=5)
    Real estate

    AVM signal from the curb

    Verify a property's condition, neighborhood traffic, or development progress without leaving the office. Schedule recurring feeds.

    property.observe(every="1h", for="72h")
    Journalism / OSINT

    Eyes on the ground, anywhere

    Crowd density at a protest, weather at a closed pass, conditions at a port. Pay for the minute, get the receipt on-chain.

    feed.open("corridor:istanbul-taksim")

    Request → Match → Stream.

    The whole loop
    01

    Request

    POST a lat/lng + duration. SDK or curl. Rate locked at request time; cancelable in the first 5 seconds at no cost.

    02

    Match

    Dispatcher coverage-filters by PostGIS, picks the longest-idle SUPPLIER inside the geofence, and the session goes live. No per-session signature — the consumer's pre-funded pool on LuxxonSettlement covers the meter, so subsequent sessions run with zero wallet popups.

    03

    Stream

    Sub-second WebRTC via WHIP/WHEP on Cloudflare Stream — open protocols both sides. Agents skip WebRTC entirely and poll GET /sessions/:id/frame for a JPEG snapshot.

    Drop-in for AI agents

    Install where your agent lives.

    @luxxon/mcp is a Model Context Protocol server — your agent gets get_frame, get_stream_url, get_session, cancel_session as callable tools. Pre-listed in the major catalogs: