EU house price index
by Orvyn · 1 source · a report every 1 d
Signed by Orvyn from the provider’s API
Per call
$0.05
sold in packs
Smallest payment
$0.20
what Orvyn settles on chain
A report every
1 d
from 1 source
Uptime, 30 days
Measuring · 1 of 7 days
measured by Orvyn
Calls, last 30 days
0
Endpoint
GET /v1/feeds/orvyn/eu-house-price-index/latest
Bought a pack on this feed? Your code spends it with one header. Make an API key, then use the first example below.
- One call
- $0.05, sold in packs only
- Pack of 4
- $0.20, valid 30 days
- Pack of 40
- $2.00, valid 30 days
- History page
- 5 calls
- Pays
- 0xe240cF24…EfDe4C92
API key
# For a pack you already bought. Make a key in the dashboard, under API keys. curl https://orvyn.me/gw/v1/feeds/orvyn/eu-house-price-index/latest \ -H "Authorization: Bearer <your API key>" # The calls left in your packs. curl https://orvyn.me/gw/v1/packs \ -H "Authorization: Bearer <your API key>"
HTTP
# 1. Ask. The answer is 402 with the price, in the PAYMENT-REQUIRED header. curl -i https://orvyn.me/gw/v1/feeds/orvyn/eu-house-price-index/latest # 2. Sign the USDG authorization it describes, then ask again. curl https://orvyn.me/gw/v1/feeds/orvyn/eu-house-price-index/latest \ -H "PAYMENT-SIGNATURE: <base64 payment payload>"
TypeScript
import {Orvyn} from '@orvyn/sdk'
const orvyn = new Orvyn({gatewayUrl: 'https://orvyn.me/gw', account, maxSpendUsdg: 5_000_000n})
const report = await orvyn.read('orvyn/eu-house-price-index') // pays, or spends a pack, by itself
report.value // 2 decimals, a bigint
report.checks // already verified: signer, kind, decimals, payload, ageTypeScript, with an API key
import {Orvyn} from '@orvyn/sdk'
// No wallet on the server: the key spends calls you bought ahead and cannot buy more.
const orvyn = new Orvyn({gatewayUrl: 'https://orvyn.me/gw', apiKey: process.env.ORVYN_API_KEY})
const report = await orvyn.read('orvyn/eu-house-price-index') // one call from your pack, nothing signed
report.value // 2 decimals, a bigint
report.callsLeft // what the pack still holdsSolidity
import {OrvynConsumer} from "@orvyn/contracts/src/OrvynConsumer.sol";
contract Example is OrvynConsumer {
bytes32 constant EU_HOUSE_PRICE_INDEX = 0xc5ccc09cbb8179ce14b10a92c5bd9afef80c198bd6da70684a150e1065304b6b;
function settle(bytes calldata report, bytes calldata sig) external {
int256 value = _readOnce(EU_HOUSE_PRICE_INDEX, report, sig, Policy({
maxAgeSec: 172800,
allowedKinds: KIND_MANAGED,
minValue: 0,
maxValue: type(int256).max
}));
// use value, scaled by 2 decimals
}
}Agents (MCP)
{
"mcpServers": {
"orvyn": {
"command": "npx",
"args": ["-y", "@orvyn/mcp"],
"env": {"ORVYN_GATEWAY_URL": "https://orvyn.me/gw", "ORVYN_PRIVATE_KEY": "<a wallet made for this agent>", "ORVYN_MAX_SPEND_USDG": "1000000"}
}
}
}Agents (MCP), with an API key
{
"mcpServers": {
"orvyn": {
"command": "npx",
"args": ["-y", "@orvyn/mcp"],
"env": {"ORVYN_GATEWAY_URL": "https://orvyn.me/gw", "ORVYN_API_KEY": "<your API key>"}
}
}
}Response schema
{
"type": "object",
"title": "EU house price index",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"value",
"observedAtMs"
],
"properties": {
"value": {
"type": "string"
},
"observedAtMs": {
"type": "string"
}
}
}