{
  "schema_version": "1",
  "as_of": "2026-10-27",
  "name": "Gatewayz yield-as-inference",
  "tagline": "Your yield pays for your AI.",
  "summary": "Delegate ADA from your own wallet to the Gatewayz stake pool. You keep your ADA. 95% of the staking rewards your stake earns Gatewayz comes back to you as an inference discount balance, and every request through Gatewayz costs 1% of its list price until the balance is used.",
  "status": {
    "mainnet_live": false,
    "label": "Pre-launch",
    "detail": "The program is built and switched off on mainnet. A working demo runs on Cardano's preprod testnet with test ADA, by invitation."
  },
  "eligibility": {
    "excluded_regions": [
      "US",
      "CA"
    ],
    "text": "Not available to US or Canadian persons. Every participant must confirm they are not a US or Canadian person before linking a wallet."
  },
  "mechanism": {
    "type": "delegation",
    "custody": "none",
    "text": "Delegation is a certificate on your own stake key. Your ADA never leaves your wallet and Gatewayz cannot move it.",
    "reward_share": 0.95,
    "discount_percent": 0.99,
    "epoch_days": 5,
    "accounting": "Each day, after the pool's rewards for a finished epoch are recorded, Gatewayz splits what it actually received across linked wallets in proportion to their stake for that epoch and credits 95% of each wallet's share, in USD at the time of recording, to the linked account's discount balance.",
    "billing": "On each request you pay 1% of the list price from your normal credits; the other 99% is drawn from your discount balance until it runs out.",
    "first_discount": "Cardano pays rewards a few epochs after they are earned, so the first discount appears roughly two to three weeks after you first delegate.",
    "balance_rules": [
      "Non-transferable: held against your Gatewayz account, never traded.",
      "Usable only for inference on Gatewayz; cannot be withdrawn, exchanged or cashed out.",
      "Calculated only from rewards Gatewayz has actually received, never in advance and never from a promised rate.",
      "Discounts already credited stay on your account if you stop delegating."
    ],
    "expiry": "No expiry is set today. If one is introduced it will be announced before it applies."
  },
  "steps": [
    {
      "n": 1,
      "title": "Delegate",
      "text": "Point your ADA at the Gatewayz stake pool from any CIP-30 wallet (Lace, Eternl, Yoroi, Vespr). Your ADA stays in your wallet."
    },
    {
      "n": 2,
      "title": "Link",
      "text": "Sign a message with your stake key to link the wallet to your Gatewayz account. No transaction, no deposit."
    },
    {
      "n": 3,
      "title": "Convert",
      "text": "After each epoch, Gatewayz splits the pool rewards it received by stake and adds 95% of your share to your discount balance."
    },
    {
      "n": 4,
      "title": "Use",
      "text": "Every request on Gatewayz costs 1% of its list price while the balance lasts, through one API key, or by your agents."
    }
  ],
  "limits": {
    "per_account_daily_usd": 5,
    "program_daily_usd": 50,
    "text": "Launch limits: at most $5 of discount per account per day, and at most $50 per day across the whole program. Limits may change."
  },
  "disclaimer": "Discounts are a share of staking rewards Gatewayz actually received, can change at any time, and are not a guaranteed return.",
  "quote": {
    "formula": "usd_per_month = min(amount_ada * network_rewards_per_ada_per_epoch * reward_share * epochs_per_month * ada_usd, per_account_daily_usd * 30)",
    "epochs_per_month": 6,
    "network_rewards_per_ada_per_epoch": {
      "low": 0.00028398,
      "high": 0.00029726,
      "source": "Koios epoch_info, total_rewards / active_stake, mainnet epochs 645-662",
      "as_of": "2026-10-27"
    },
    "ada_usd": {
      "value": 0.2033,
      "source": "CoinGecko simple price",
      "as_of": "2026-10-27"
    },
    "caveats": [
      "The range uses network-wide rewards for an established pool. A new or small pool mints blocks less often, so its rewards vary more from epoch to epoch, and an epoch with no blocks has nothing to share.",
      "Rewards are converted to USD at the ADA price when they are recorded, so the dollar amount moves with ADA.",
      "The per-account and program-wide daily limits apply."
    ]
  },
  "assets": [
    {
      "id": "ada",
      "name": "Cardano",
      "symbol": "ADA",
      "group": "cardano",
      "status": "live",
      "yield_source": "Protocol staking: delegation to the Gatewayz stake pool",
      "page": "/yield/assets/ada"
    },
    {
      "id": "cardano-stables",
      "name": "Cardano stablecoins",
      "symbol": "USDM, DJED, iUSD",
      "group": "cardano",
      "status": "coming",
      "yield_source": "Lending on a Cardano protocol with a published audit (not yet selected)",
      "page": "/yield/assets/stablecoins",
      "why": "Stablecoins don't stake; their yield would come from lending, which adds protocol risk. We will only add them through a protocol with a published audit."
    },
    {
      "id": "eth",
      "name": "Ethereum",
      "symbol": "ETH",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking on Ethereum",
      "page": "/yield/assets/eth",
      "why": "Ethereum staking support (a StakeWise V3 vault) is built in the Gatewayz backend and switched off."
    },
    {
      "id": "sol",
      "name": "Solana",
      "symbol": "SOL",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking on Solana",
      "page": "/yield/assets/sol",
      "why": "Solana supports native delegation from your own wallet, the same non-custodial model as Cardano."
    },
    {
      "id": "avax",
      "name": "Avalanche",
      "symbol": "AVAX",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking on Avalanche",
      "page": "/yield/assets/avax",
      "why": "Avalanche supports native delegation to validators."
    },
    {
      "id": "dot",
      "name": "Polkadot",
      "symbol": "DOT",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking (nomination) on Polkadot",
      "page": "/yield/assets/dot",
      "why": "Polkadot holders nominate validators from their own account."
    },
    {
      "id": "atom",
      "name": "Cosmos Hub",
      "symbol": "ATOM",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking on the Cosmos Hub",
      "page": "/yield/assets/atom",
      "why": "Cosmos Hub delegation keeps tokens in the holder's account."
    },
    {
      "id": "near",
      "name": "NEAR",
      "symbol": "NEAR",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking on NEAR",
      "page": "/yield/assets/near",
      "why": "NEAR supports delegation to staking pools."
    },
    {
      "id": "trx",
      "name": "TRON",
      "symbol": "TRX",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking (voting) on TRON",
      "page": "/yield/assets/trx",
      "why": "TRON holders stake and vote for super representatives from their own account."
    },
    {
      "id": "sui",
      "name": "Sui",
      "symbol": "SUI",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking on Sui",
      "page": "/yield/assets/sui",
      "why": "Sui supports delegated staking to validators."
    },
    {
      "id": "ton",
      "name": "Toncoin",
      "symbol": "TON",
      "group": "pos",
      "status": "coming",
      "yield_source": "Native staking on TON",
      "page": "/yield/assets/ton",
      "why": "TON supports nominator pools."
    },
    {
      "id": "usdc",
      "name": "USD Coin",
      "symbol": "USDC",
      "group": "stable",
      "status": "coming",
      "yield_source": "Lending on its own chain",
      "page": "/yield/assets/usdc",
      "why": "Stablecoins don't stake; their yield would come from lending, which adds protocol risk."
    },
    {
      "id": "usdt",
      "name": "Tether",
      "symbol": "USDT",
      "group": "stable",
      "status": "coming",
      "yield_source": "Lending on its own chain",
      "page": "/yield/assets/usdt",
      "why": "Stablecoins don't stake; their yield would come from lending, which adds protocol risk."
    }
  ],
  "not_listed": {
    "text": "BTC and other assets without native staking are not listed: there is no protocol reward to turn into inference without lending them out or wrapping them, which changes the risk entirely."
  },
  "risks": [
    {
      "id": "principal",
      "name": "Your ADA",
      "text": "Delegation never moves your ADA. There is no Gatewayz contract holding it and no lock-up. Your ADA's market price still moves, as it would in your wallet anyway."
    },
    {
      "id": "forgone_rewards",
      "name": "Rewards you give up",
      "text": "The pool takes nearly all of its rewards as its fee (99% margin plus Cardano's minimum fixed cost), so you do not receive ADA staking rewards while delegated. You receive an inference discount instead."
    },
    {
      "id": "pool_performance",
      "name": "Pool performance",
      "text": "Rewards depend on the blocks the pool mints. A new or small pool mints blocks less often, so its rewards vary more from epoch to epoch, and an epoch with no blocks has nothing to share."
    },
    {
      "id": "price",
      "name": "ADA price",
      "text": "Rewards are converted to USD when they are recorded, so the size of your discount moves with ADA."
    },
    {
      "id": "program_change",
      "name": "Program changes",
      "text": "The reward share, the discount, the limits and the program itself can change or be paused. The program also pauses automatically if discounts granted ever exceed 95% of rewards received."
    },
    {
      "id": "contract",
      "name": "Smart contracts",
      "text": "None for ADA: delegation is a native Cardano certificate, not a smart contract. Future assets that use contracts or lending protocols will list their contract risk on their own page."
    },
    {
      "id": "account",
      "name": "Your Gatewayz account",
      "text": "The discount balance lives on your Gatewayz account. Anyone with your API key can spend it, so treat the key like a password."
    }
  ],
  "faq": [
    {
      "q": "Do I lose my ADA?",
      "a": "No. Delegating only tells the network which pool your stake supports. Your ADA stays in your wallet under your keys, and Gatewayz has no way to move it."
    },
    {
      "q": "What if ADA falls?",
      "a": "Your ADA is exposed to its price exactly as it is in your wallet today. Rewards are converted to USD when recorded, so a lower ADA price means a smaller discount."
    },
    {
      "q": "Why not just take the staking rewards?",
      "a": "If you'd rather have ADA, delegate to a pool that pays rewards out. This program suits people and teams who spend on AI anyway: the reward becomes a discount on inference instead of ADA."
    },
    {
      "q": "When does the first discount arrive?",
      "a": "Cardano pays rewards a few epochs after they are earned, and an epoch lasts five days, so expect roughly two to three weeks after you first delegate."
    },
    {
      "q": "Does the discount expire?",
      "a": "No expiry is set today. If one is introduced it will be announced before it applies."
    },
    {
      "q": "Can my agent use it?",
      "a": "Yes. The discount sits on your Gatewayz account, so any request made with your API key, including your agents' requests, draws from it. An agent with its own Cardano wallet can also link that wallet itself through the API."
    },
    {
      "q": "How much will I get?",
      "a": "It depends on how much you delegate, the blocks the pool produces and the ADA price. The calculator shows a range for your own amount; there is no promised rate."
    },
    {
      "q": "Can I cash out the balance?",
      "a": "No. The discount is non-transferable, works only for inference on Gatewayz, and cannot be withdrawn or exchanged."
    },
    {
      "q": "How do I stop?",
      "a": "Redelegate or stop delegating in your wallet at any time. Leaving is never blocked; discounts already credited stay on your account."
    },
    {
      "q": "Who can take part?",
      "a": "Anyone outside the United States and Canada. The program is not available to US or Canadian persons."
    },
    {
      "q": "Why isn't BTC listed?",
      "a": "Bitcoin has no native staking, so there is no protocol reward to turn into inference without lending it out or wrapping it, which changes the risk entirely."
    },
    {
      "q": "Is there an audit?",
      "a": "For ADA there is nothing to audit on-chain: delegation is a native Cardano certificate and no Gatewayz contract holds funds. Assets that need contracts will not go live without a published audit."
    }
  ],
  "api": {
    "base_url": "https://api.gatewayz.ai",
    "auth": "Authorization: Bearer <your Gatewayz API key>",
    "endpoints": [
      {
        "method": "GET",
        "path": "/delegation/status",
        "auth": false,
        "status": "live",
        "does": "Whether the program is on, the Cardano pool id and network, the reward share, the discount and the disclaimer."
      },
      {
        "method": "POST",
        "path": "/auth/wallet/cardano/nonce",
        "auth": true,
        "status": "live",
        "does": "Body {stake_address, not_us_ca_person}. Returns {nonce, message, expires_at}: the message your wallet signs (CIP-8)."
      },
      {
        "method": "POST",
        "path": "/auth/wallet/cardano/link",
        "auth": true,
        "status": "live",
        "does": "Body {stake_address, signature, key, not_us_ca_person}: the COSE_Sign1 and COSE_Key hex from your wallet. Links the stake address to the account that owns the API key."
      },
      {
        "method": "POST",
        "path": "/delegation/eligibility",
        "auth": true,
        "status": "live",
        "does": "Body {not_us_ca_person: true}. Records the not-US/CA attestation required before any discount is granted."
      },
      {
        "method": "GET",
        "path": "/delegation/rewards",
        "auth": true,
        "status": "live",
        "does": "Linked wallets, measured positions, the discount balance and history, eligibility and the disclaimer."
      },
      {
        "method": "POST",
        "path": "/v1/chat/completions",
        "auth": true,
        "status": "live",
        "does": "OpenAI-compatible inference. Billed at 1% of list price while the discount balance lasts."
      },
      {
        "method": "POST",
        "path": "/v1/messages",
        "auth": true,
        "status": "live",
        "does": "Anthropic Messages-compatible inference, billed the same way."
      },
      {
        "method": "GET",
        "path": "/v1/yield/offer",
        "auth": false,
        "status": "planned",
        "does": "This offer as JSON from the API. Today, read https://www.gatewayz.ai/yield/offer.json."
      },
      {
        "method": "POST",
        "path": "/v1/yield/quote",
        "auth": false,
        "status": "planned",
        "does": "A server-side quote. Today, apply the formula in offer.json quote."
      },
      {
        "method": "GET",
        "path": "/v1/yield/policy",
        "auth": true,
        "status": "planned",
        "does": "Owner limits for agents: allowed assets, maximum stake, approval threshold."
      }
    ],
    "mcp": {
      "status": "planned",
      "tools": [
        "yield_get_offer",
        "yield_quote",
        "yield_get_policy",
        "yield_get_position",
        "credits_balance"
      ]
    }
  },
  "errors": [
    {
      "status": 451,
      "code": "region_restricted",
      "when": "The request comes from the United States or Canada, or the account was marked as being there.",
      "remedy": "Not available. Leaving the program is never blocked."
    },
    {
      "status": 451,
      "code": "attestation_required",
      "when": "The account has not confirmed it is not a US or Canadian person.",
      "remedy": "Send not_us_ca_person: true with the nonce or link call, or POST /delegation/eligibility."
    },
    {
      "status": 400,
      "code": "nonce_missing_or_expired",
      "when": "The signed nonce is unknown or older than its expires_at.",
      "remedy": "Request a new nonce and sign it again."
    },
    {
      "status": 401,
      "code": "invalid_signature",
      "when": "The CIP-8 signature does not verify.",
      "remedy": "Sign the exact message returned by the nonce call with the stake key."
    },
    {
      "status": 401,
      "code": "address_mismatch",
      "when": "The signed address is not the stake address in the request.",
      "remedy": "Sign with the stake key of the stake_address you sent."
    },
    {
      "status": 401,
      "code": "key_address_mismatch",
      "when": "The COSE key does not belong to the stake address.",
      "remedy": "Send the COSE_Key your wallet returned with the signature."
    },
    {
      "status": 401,
      "code": "payload_mismatch",
      "when": "The signed payload is not the issued message.",
      "remedy": "Sign the message exactly as returned, without changes."
    },
    {
      "status": 401,
      "code": "network_mismatch",
      "when": "The stake address is for a different Cardano network than the API.",
      "remedy": "Use a mainnet stake1 address on mainnet."
    },
    {
      "status": 401,
      "code": "script_stake_address_unsupported",
      "when": "The address is a script stake address (stake17...).",
      "remedy": "Use a key-hash stake address (stake1u...)."
    },
    {
      "status": 409,
      "code": "wallet_linked_to_other_account",
      "when": "The stake address is already linked to another Gatewayz account.",
      "remedy": "Use that account, or unlink it there first."
    },
    {
      "status": 503,
      "code": "eligibility_unavailable",
      "when": "Eligibility could not be read or stored.",
      "remedy": "Retry later."
    },
    {
      "status": 503,
      "code": "wallet_auth_unavailable",
      "when": "Wallet linking is temporarily unavailable.",
      "remedy": "Retry later."
    },
    {
      "status": 402,
      "code": "insufficient_credits",
      "when": "The 1% you pay per request, or a request after the discount runs out, exceeds your credits.",
      "remedy": "Top up credits or wait for the next discount."
    }
  ],
  "proof": [
    {
      "text": "Gatewayz is listed in the FlashyOS public directory as org/gatewayz with three capabilities: inference routing, model catalog and usage metering.",
      "as_of": "2026-10-15"
    }
  ],
  "contact": "hello@gatewayz.ai",
  "canonical": "https://www.gatewayz.ai/yield",
  "markdown": "https://www.gatewayz.ai/yield.md"
}
