# Prediction market detail

- Method: `GET`
- Path: `/predictions/market`
- Credits: 1
- x402 wallet payment: https://nebula-api.hiddensystems.ai/api/v1/x402/predictions/market (no Nebula account or API key; check the payment offer before signing)
- Payment guide: https://docs.hiddensystems.ai/nebula/api/#x402
- HTML docs: https://docs.hiddensystems.ai/nebula/reference/get-prediction-market/
- Interactive docs: https://docs.hiddensystems.ai/nebula/api/#endpoint=get-predictions-market

## Description

Contract rules, outcomes, venue observations and linked identities for existing asset and subject analytics. Quotes retain bid, ask, midpoint and last-trade evidence separately; no combined market sentiment is inferred.

## cURL Example

```bash
curl --get \
  --url 'https://nebula-api.hiddensystems.ai/api/v1/public/predictions/market' \
  --data-urlencode 'market_id=polymarket:123' \
  --header 'X-API-Key: YOUR_API_KEY'
```

## Path Parameters

No path parameters for this endpoint.

## Query Parameters

- `market_id` (string, required): Stable market or listing ID from /predictions

## Response

OK

- `entities` (array<object>, required): Linked identities for existing analytics endpoints. Assets carry asset_id and asset_class; non-assets carry subject_id. An identity without selectors is not yet available for analytics.
- `entities[].asset_class` (string): Asset class: equity, commodity, index or crypto.
- `entities[].asset_id` (string): Asset identifier accepted by asset analytics endpoints.
- `entities[].name` (string, required): Canonical subject display name.
- `entities[].subject_id` (string): Non-asset subject identifier accepted by subject analytics endpoints. Mutually exclusive with asset selectors.
- `id` (string, required): Stable identity within this object type.
- `listings` (array<object>, required): Venue listings with separately retained rules and quotes.
- `listings[].closes_at` (string (date-time), required): Venue trading close in UTC; not necessarily event occurrence or settlement.
- `listings[].event_id` (string, required): Venue event identifier, or empty if absent.
- `listings[].id` (string, required): Stable identity within this object type.
- `listings[].liquidity_usd` (number (double), required): Venue-reported liquidity in US dollars; null when unavailable.
- `listings[].market_id` (string, required): Canonical market identity; equivalent venue listings share it.
- `listings[].observed_at` (string (date-time), required): UTC time Nebula fetched this quote. Inspect freshness before comparing.
- `listings[].open_interest` (number (double), required): Venue open contracts; null when unavailable.
- `listings[].opens_at` (string (date-time), required): Venue opening time in UTC; null when unavailable.
- `listings[].outcomes` (array<object>, required): Ordered native outcomes with independent price evidence.
- `listings[].outcomes[].ask` (number (double), required): Venue ask as a fraction from 0 to 1; null when unavailable.
- `listings[].outcomes[].bid` (number (double), required): Venue bid as a fraction from 0 to 1; null when unavailable.
- `listings[].outcomes[].id` (string, required): Stable identity within this object type.
- `listings[].outcomes[].label` (string, required): Venue outcome label.
- `listings[].outcomes[].last_trade` (number (double), required): Last traded price from 0 to 1; null when unavailable. Kalshi No is the complement of its reported Yes last trade; Polymarket is token-specific. Observation time is not trade time.
- `listings[].outcomes[].midpoint` (number (double), required): Bid-ask midpoint from 0 to 1; null when unavailable.
- `listings[].outcomes[].position` (integer, required): Zero-based native outcome position.
- `listings[].outcomes[].price` (number (double), required): Bid-ask midpoint as a fraction from 0 to 1; null without a valid two-sided quote. No last-trade fallback. Not subject sentiment.
- `listings[].outcomes[].price_basis` (string, required): midpoint or unavailable for displayed quotes.
- `listings[].outcomes[].provider_price` (number (double), required): Provider-reported reference or settlement price from 0 to 1; null when unavailable. Retained independently of midpoint.
- `listings[].provider` (string, required): Venue: polymarket or kalshi.
- `listings[].provider_id` (string, required): Native venue market identifier.
- `listings[].provider_updated_at` (string (date-time), required): Venue metadata update time; null when unavailable.
- `listings[].question` (string, required): Original contract question.
- `listings[].resolution_source` (string, required): Venue resolution source, or empty if absent.
- `listings[].resolves_at` (string (date-time), required): Venue expected resolution time in UTC; null when unavailable.
- `listings[].result` (string, required): Venue settlement result; empty before a known result.
- `listings[].revision` (string, required): Legacy contract revision token; retained for compatibility.
- `listings[].rules` (string, required): Full venue resolution rules.
- `listings[].source_url` (string, required): Original venue listing URL.
- `listings[].status` (string, required): Listing lifecycle: open, closed, resolved or disputed. For subjects: resolved or pending.
- `listings[].volume` (number (double), required): Cumulative venue volume in volume_unit; null when unavailable.
- `listings[].volume_24h` (number (double), required): Last 24-hour venue volume in volume_unit; null when unavailable.
- `listings[].volume_unit` (string, required): usd for Polymarket, contracts for Kalshi. These quantities cannot be added.
- `question` (string, required): Original contract question.
- `subjects` (array<object>, required): Legacy attachment metadata retained for compatibility. Use entities for analytics selectors.
- `subjects[].fallback_image_urls` (array<string>, required): Ordered backend-resolved fallback icon candidates.
- `subjects[].image_url` (string, required): First backend-resolved subject icon candidate; empty uses fallbacks.
- `subjects[].name` (string, required): Canonical subject display name.
- `subjects[].role` (string, required): Question attachment role: entity, topic or place.
- `subjects[].status` (string, required): Listing lifecycle: open, closed, resolved or disputed. For subjects: resolved or pending.
- `subjects[].subject_id` (string, required): Canonical registry subject identifier; preserves existing asset or topic eligibility.
- `subjects[].types` (array<string>, required): Canonical subject types from the existing identity resolver.

Media type: `application/json`

## JSON Response

```json
{
  "entities": [
    {
      "asset_class": "equity",
      "asset_id": "NVDA",
      "name": "NVIDIA",
      "subject_id": "text:jensen huang"
    }
  ],
  "id": "polymarket:123",
  "listings": [
    {
      "closes_at": "2026-10-07T20:00:00Z",
      "event_id": "event-123",
      "id": "polymarket:123",
      "liquidity_usd": 5000,
      "market_id": "polymarket:123",
      "observed_at": "2026-10-06T12:00:00Z",
      "open_interest": 100,
      "opens_at": "2026-10-01T00:00:00Z",
      "outcomes": [
        {
          "ask": 0.66,
          "bid": 0.64,
          "id": "polymarket:123",
          "label": "Yes",
          "last_trade": 0.64,
          "midpoint": 0.65,
          "position": 0,
          "price": 0.65,
          "price_basis": "midpoint",
          "provider_price": 0.65
        }
      ],
      "provider": "polymarket",
      "provider_id": "123",
      "provider_updated_at": "2026-10-06T12:00:00Z",
      "question": "Will NVIDIA close above $200 on October 7?",
      "resolution_source": "Official exchange close",
      "resolves_at": "2026-10-08T00:00:00Z",
      "result": "yes",
      "revision": "revision-hash",
      "rules": "Resolves Yes if the official closing price exceeds $200.",
      "source_url": "https://polymarket.com/event/example",
      "status": "open",
      "volume": 10000,
      "volume_24h": 1000,
      "volume_unit": "usd"
    }
  ],
  "question": "Will NVIDIA close above $200 on October 7?",
  "subjects": [
    {
      "fallback_image_urls": [
        "string"
      ],
      "image_url": "https://example.com/nvda.png",
      "name": "NVIDIA",
      "role": "entity",
      "status": "open",
      "subject_id": "eq:NVDA",
      "types": [
        "string"
      ]
    }
  ]
}
```
