Skip to main content
The Iris API provides a powerful, GraphQL-based interface for accessing a comprehensive range of onchain and offchain data from the Iris ecosystem. It is designed for developers building applications, dashboards, bots, or any service that requires reliable data on Iris.
The Iris API is provided as-is, without a Service Level Agreement (SLA). While we strive to maintain reliable service, availability and uptime are not guaranteed. We recommend implementing appropriate fallback mechanisms in production applications and avoiding hard dependencies on API availability for critical operations.The Iris API can evolve. Stay in touch with updates via the API Changelog.

Endpoints

GraphQL API: For all data related to Iris loans, positions, and bonds. You can explore the schema and run live queries in the GraphQL Playground.

Key Data & Features

  • Real-time Data: Access current state data for loans, positions, and solver bonds.
  • Loan & Position Analytics: Retrieve metrics like fixed rates, maturities, accrued interest, and bond health.
  • User Positions: Fetch detailed information on collateral, debt, and bond positions for any borrower or solver.
  • Historical Data: Historical timeseries data (planned).

Supported Networks

The Iris API supports the following networks:
  • Ethereum (Chain ID: 1), coming soon
  • VNet (Chain ID: 9991), a staging fork of Ethereum mainnet
VNet shares portion of mainnet contract addresses but is not production data: resetting the fork wipes everything indexed against it. Treat the pods, balances, and prices returned today as disposable.

Iris API main rules

Best Practices & Rate Limiting

To ensure reliable service for all users and protect against malicious usage, spam, and attacks, the API enforces the following rate limits: Limits are bucketed by route and method over a 1-second window. Every response carries the current budget:
We recommend reading these headers and backing off, rather than retrying immediately after a 429. To stay within the limits and ensure optimal performance for your application:
  • Cache Responses: Cache API query results on your backend to reduce redundant requests and improve your application’s performance.
  • Request Only What You Need: Structure your GraphQL queries to fetch only the data fields required for your use case.
  • Avoid Excessive Polling: Design your application to fetch data efficiently, respecting API limits to prevent interruptions.

Schema Changes

The Iris API is pre-stable: while mainnet indexing is pending, the schema may change (including breaking changes to query names, field names, types, and response shapes) without advance notice. Once the API is stable, every change to the served schema will be recorded in the API Changelog, and breaking changes will be announced before they land.

Where to Find Query Examples

This page serves as a high-level overview. For detailed documentation and hands-on query examples, please refer to the dedicated sections below.

Comprehensive API Documentation

For a full list of available queries, schemas, and example use cases for each part of the protocol, explore this section: