# HIP-4 Outcome Metadata

Use `outcomeMeta` to read the latest active HIP-4 metadata snapshot, including outcome IDs, descriptions, `sideSpecs`, and prediction-market questions.

## Endpoints

REST-style Info API:

```text
POST https://api-hyperliquid-index.n.dwellir.com/YOUR_API_KEY/info
```

JSON-RPC:

```text
POST https://api-hyperliquid-index.n.dwellir.com/YOUR_API_KEY/jsonrpc
```

## Billing

`outcomeMeta` is a single metadata response. It does not use the bundled-response `X-Iris-Billing-Weight` header.

## Request Parameters

- `type` (`string, required`): Must be outcomeMeta for /info REST requests. Omit this field for JSON-RPC.

## Request Example

```bash
curl -X POST "https://api-hyperliquid-index.n.dwellir.com/YOUR_API_KEY/info" \
  -H "content-type: application/json" \
  -d '{"type":"outcomeMeta"}'
```

## Response Fields

- `outcomes` (`array, required`): Active HIP-4 outcome metadata entries.
- `outcome` (`number, required`): Outcome ID assigned by HyperCore.
- `name` (`string, required`): Outcome name, for example Recurring.
- `description` (`string, required`): Pipe-delimited outcome specification.
- `sideSpecs` (`array, required`): Side definitions for the outcome.
- `questions` (`array, required`): One-off prediction-market question metadata when available.

## Successful Response

```json
{
  "outcomes": [
    {
      "outcome": 3,
      "name": "Recurring",
      "description": "class:priceBinary|underlying:BTC|expiry:20260506-0600|targetPrice:80930|period:1d",
      "sideSpecs": [
        { "name": "Yes" },
        { "name": "No" }
      ]
    }
  ],
  "questions": []
}
```

## Error Responses

### Error

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "error": {
    "code": -32602,
    "message": "invalid request"
  }
}
```

## Response

`outcomeMeta` returns an object with `outcomes` and `questions`. Parse `description` defensively and drive labels from `sideSpecs` instead of hardcoding side names.
