> For the complete documentation index, see [llms.txt](https://docs.hydromancer.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hydromancer.xyz/readme/rest-api/outcomes/outcometemplatesoverview.md).

# outcomeTemplatesOverview

Returns every registered outcome template — the blueprints that permissionless venue deployers mint markets from via `registerStandaloneOutcomeFromTemplate`. One entry per template id, always the latest registration (templates can be re-registered with updated keyword types).

## POST Request

<table><thead><tr><th width="161">Field</th><th width="119">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>type</code></td><td>string</td><td>Must be <code>"outcomeTemplatesOverview"</code></td></tr></tbody></table>

{% tabs %}
{% tab title="cURL" %}

```bash
curl -X POST https://api.hydromancer.xyz/info \
  -H "Authorization: Bearer $HYDROMANCER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"type": "outcomeTemplatesOverview"}'
```

{% endtab %}

{% tab title="Python" %}

```python
import requests
import os

response = requests.post(
    'https://api.hydromancer.xyz/info',
    json={'type': 'outcomeTemplatesOverview'},
    headers={'Authorization': f"Bearer {os.environ['HYDROMANCER_API_KEY']}"},
)
print(response.json())
```

{% endtab %}
{% endtabs %}

## Response

<table><thead><tr><th width="211">Field</th><th width="160">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>templates</code></td><td>array</td><td>All templates, ordered by <code>id</code></td></tr><tr><td><code>templates[].id</code></td><td>string</td><td>Template id referenced by <code>registerStandaloneOutcomeFromTemplate</code>, e.g. <code>"binaryPrice"</code></td></tr><tr><td><code>templates[].keywordToHint</code></td><td>array of [string, string]</td><td>Placeholder slots and their type hints, e.g. <code>["perp", "hlPerp"]</code>, <code>["threshold", "uDecimal"]</code>, <code>["time", "dateTime"]</code></td></tr><tr><td><code>templates[].nameAndDescription</code></td><td>[string, string]</td><td>Market name and description text with <code>{keyword}</code> placeholders</td></tr><tr><td><code>templates[].role</code></td><td>object or string</td><td>Chain role, passed through verbatim: <code>{"standaloneOutcome": {"sideNames": [...]}}</code>, <code>"question"</code>, or <code>{"questionOutcome": {"parent": "..."}}</code></td></tr><tr><td><code>templates[].registeredAt</code></td><td>integer</td><td>Registration time of the latest version, ms since epoch</td></tr></tbody></table>

```json
{
  "templates": [
    {
      "id": "binaryPrice",
      "keywordToHint": [["perp", "hlPerp"], ["threshold", "uDecimal"], ["time", "dateTime"]],
      "nameAndDescription": [
        "{perp} above {threshold} at {time}?",
        "If the {perp} mark price at time of settlement is above {threshold} at {time}, Yes tokens pay out $1 each. Otherwise, No tokens pay out $1 each."
      ],
      "role": {"standaloneOutcome": {"sideNames": ["Yes", "No"]}},
      "registeredAt": 1785912700675
    },
    {
      "id": "sportsContestParticipant",
      "keywordToHint": [["participant", "string"]],
      "nameAndDescription": [
        "{participant}",
        "This outcome resolves to Yes if {participant} is the winner under the Contest Result or administrative-decision provisions of the parent question."
      ],
      "role": {"questionOutcome": {"parent": "sportsContestResult"}},
      "registeredAt": 1785919796967
    }
  ]
}
```
