# Maintenance publication structure

Each maintenance publication represents a cluster that contains Margin Accounts and CEX Sub-Accounts, along with calculated risk factor from Arkis Risk Management system and margin balance.

## The Cluster object

```json
{"openapi":"3.0.0","info":{"title":"Arkis WebSocket API","version":"1.0.0"},"components":{"schemas":{"Cluster":{"type":"object","required":["margin_accounts","sub_accounts","margin_balance","health_factor","calculated_at"],"additionalProperties":false,"properties":{"margin_accounts":{"type":"array","description":"Array of Margin Accounts in the cluster","items":{"type":"object","additionalProperties":false,"required":["network","address","owner_address","loan_principal","accrued_interest","tokens","positions"],"properties":{"network":{"type":"string","description":"Blockchain network"},"address":{"type":"string","description":"Address of the Margin Account in the network"},"owner_address":{"type":"string","description":"Address of the wallet which was used to open the Margin Account"},"loan_principal":{"type":"object","description":"Total amount borrowed by Margin Account","additionalProperties":false,"required":["amount","symbol"],"properties":{"amount":{"type":"string"},"symbol":{"type":"string"}}},"accrued_interest":{"type":"object","description":"The final interest to repay by borrower (interest due to lender + Arkis protocol fee)","additionalProperties":false,"required":["amount","symbol"],"properties":{"amount":{"type":"string"},"symbol":{"type":"string"}}},"tokens":{"type":"array","description":"Token holdings in the Margin Account","items":{"$ref":"#/components/schemas/Token"}},"positions":{"type":"array","description":"List of open positions in DeFi Protocols and Pools in Margin Account","items":{"type":"object","additionalProperties":false,"required":["protocol_name","underlying_tokens","lp_token_address","pool_address","fixed_rewards"],"properties":{"protocol_name":{"type":"string"},"underlying_tokens":{"type":"array","items":{"$ref":"#/components/schemas/Token"}},"lp_token_address":{"type":"string"},"pool_address":{"type":"string"},"fixed_rewards":{"type":"array","items":{"$ref":"#/components/schemas/Token"}}}}}}}},"sub_accounts":{"type":"array","description":"Array of CEX Sub-Accounts in the cluster","items":{"type":"object","additionalProperties":false,"required":["network"],"properties":{"network":{"type":"string"}}}},"margin_balance":{"type":"object","description":"The total amount that can be used as margin","additionalProperties":false,"required":["amount","symbol"],"properties":{"amount":{"type":"string"},"symbol":{"type":"string"}}},"health_factor":{"type":"string","description":"Measures the collateralization ratio of a position, indicating the safety margin against liquidation"},"calculated_at":{"type":"string","format":"date-time"}}},"Token":{"type":"object","required":["amount","symbol","price"],"additionalProperties":false,"properties":{"amount":{"type":"string"},"symbol":{"type":"string"},"price":{"type":"string","description":"Market price relative to principal token"}}}}}}
```
