QUICKSTART
Get a vision call working in 60 seconds. Grab a key from the dashboard.
curl https://api.eyeofiris.tech/v1/chat \
-H "Authorization: Bearer YOUR_IRIS_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "iris-vision-70b",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "what is in this image?"},
{"type": "image_url", "image_url": {"url": "https://example.com/cat.jpg"}}
]
}]
}'
OpenAI-compatible shape — drop-in for any app using gpt-4o vision messages.
Authentication
Bearer token in the Authorization header. Keys are prefixed iris_, scoped to one billing wallet, revocable any time.
iris_dev_— sandbox, 10 concurrent, $5/day cap, no billing.iris_pro_— production, 200 concurrent, pay-per-token in $IRIS.iris_ent_— enterprise, custom concurrency + SLA.
Migrate from OpenAI vision
Python (openai 1.x):
from openai import OpenAI
client = OpenAI(
base_url="https://api.eyeofiris.tech/v1",
api_key="YOUR_IRIS_KEY",
)
r = client.chat.completions.create(
model="iris-vision-70b",
messages=[{
"role":"user",
"content":[
{"type":"text","text":"what's in this screenshot?"},
{"type":"image_url","image_url":{"url":"data:image/png;base64,..."}}
]
}],
)
print(r.choices[0].message.content)
That's it. Streaming, tool calls, JSON mode all work identically.
Chat with vision
Endpoint: POST https://api.eyeofiris.tech/v1/chat
model— one of the published iris model slugs.messages— OpenAI-style. Each content array can mixtextandimage_urlitems.image_url— accepts public URLs or inline base64 data URIs.stream— set true for SSE.temperature,top_p,max_tokens— standard.tools,tool_choice— function calling.
Response shape matches OpenAI plus extra headers: x-iris-node (which node served), x-iris-cost ($IRIS deducted).
Streaming responses (SSE)
Set stream: true for token-by-token output as text/event-stream:
data: {"choices":[{"delta":{"content":"a "}}]}
data: {"choices":[{"delta":{"content":"cat"}}]}
data: {"choices":[{"finish_reason":"stop"}]}
data: [DONE]
Function calling
Pass the same tools spec as OpenAI. Model returns tool_calls in the assistant message; you execute and feed result back as a tool-role turn. Works on all vision models.
Image + text embeddings
Endpoint: POST https://api.eyeofiris.tech/v1/embeddings
Multi-modal embedding model iris-embed-clip-v1 — single vector space for text and images. 1024 dims. Use for visual search, dedup, and retrieval over your image library.
Available models
iris-vision-70b— flagship, 128k context, vision-capable.iris-vision-24b— fast workhorse, 32k context, vision-capable.iris-mobile-9b— edge model, 8k context, vision-capable.iris-embed-clip-v1— multimodal embeddings.
Sampling parameters
Defaults: temperature=0.7, top_p=1.0, max_tokens=4096. Vision tokens cost 2× text tokens.
Run a node
One-liner install (Linux/macOS):
curl -fsSL https://eyeofiris.tech/install | sh
The installer detects your GPU(s), proposes a safe thermal cap, asks for the Base address that should receive payouts, and registers your endpoint with the routing layer. Stop any time with iris stop.
Billing & $IRIS
Per-million-tokens pricing, denominated in $IRIS, roughly 30% cheaper than centralized vision APIs at comparable model size. The protocol burns 1% of inference revenue, deflationary tied to network usage.
Limits
- No per-minute rate limits on production keys — only concurrent-request cap.
- No content guardrails — outputs are unaligned. You are responsible for usage.
- TTFT typically under 700ms when routed to a nearby node.
- Max request size 4 MB (covers most vision payloads inline).
Error codes
400— malformed request.401— invalid / revoked key.402— insufficient $IRIS balance.409— concurrency cap exceeded.429— gateway anti-abuse, rare for normal use.503— no node available for the requested model. Retry or switch model.
SDKs
- Python —
pip install iris(drop-in superset ofopenai). - TypeScript / Node —
npm i @iris/sdk. - Go —
go get eyeofiris.tech/sdk-go. - Swift — Swift Package Manager from
github.com/iris-network/iris-swift.
Community
- X — @IRISonbase
- Telegram — t.me/irisnetwork
- Discord — discord.gg/irisnetwork
- GitHub — github.com/iris-network
- Status — status.eyeofiris.tech