Protocol Concepts


In the design of the Azuro protocol, each market presented on a Pool is called a Condition.

Conditions are managed by data providers and contain information about the game it is associated with, reinforcement, margin and bets, funds, odds, and potential payouts for each outcome.

The following is an example of data used in a pre-match Condition:

    "gameId": 1579291089,
    "payouts": [ 3750983690100000000, 0 ], // Potential payouts for each outcome of the Condition
    "virtualFunds": [ 18817805231211999000000, 12434194768788001000000 ], // Used to calculate odds
    "totalNetBets": 2000000000000000000, // The total amount of net bets placed in the Condition
    "reinforcement": 31250000000000000000000,
    "fund": 31252000000000000000000, // totalNetBets + reinforcement
    "margin": 75000000000, // 7.5%
    "lastDepositId": 1099511628233, // The ID of the last deposit in the Liquidity Pool at the time of creating the Condition
    "winningOutcomesCount": 1,
    "state": 1, // Resolved
    "oracle": '0xF5B1216d1c1c1C075f7a11f44A975C291A291869', // Condition creator address
    "isExpressForbidden": false // The condition can be used in a combo bet