For the complete documentation index, see llms.txt. This page is also available as Markdown.

Market

Market listing and details

Get market list

get

Get a paginated list of all markets (categorical and binary)

Authorizations
apikeystringRequired

API key for authentication

Query parameters
pageinteger · min: 1Optional

Page number

Default: 1
limitinteger · max: 20Optional

Number of items per page (max 20)

Default: 10
statusstring · enumOptional

Market status filter

Possible values:
marketTypeinteger · enumOptional

Market type filter: 0=Binary, 1=Categorical, 2=All

Default: 0Possible values:
sortByinteger · enumOptional

Sort order: 1=new, 2=ending soon, 3=volume desc, 4=volume asc, 5=volume24h desc, 6=volume24h asc, 7=volume7d desc, 8=volume7d asc

Possible values:
chainIdstringOptional

Chain ID filter

labelIdinteger · int64Optional

Filter markets by label id. 0 or omitted returns all markets. Use GET /label to discover available label ids; prefer labelId over labelName because operators may rename labels.

Responses
200

Successful response

application/json
codeintegerOptional

Response code (0 for success)

Example: 0
msgstringOptional

Response message

Example: success
get/market
GET /openapi/market HTTP/1.1
apikey: YOUR_API_KEY
Accept: */*
{
  "code": 0,
  "msg": "success",
  "result": {
    "total": 1,
    "list": [
      {
        "marketId": 1,
        "marketTitle": "text",
        "status": 1,
        "statusEnum": "Created",
        "marketType": 0,
        "childMarkets": [
          {
            "marketId": 1,
            "marketTitle": "text",
            "status": 1,
            "statusEnum": "text",
            "yesLabel": "text",
            "noLabel": "text",
            "rules": "text",
            "yesTokenId": "text",
            "noTokenId": "text",
            "conditionId": "text",
            "resultTokenId": "text",
            "volume": "text",
            "quoteToken": "text",
            "chainId": "text",
            "questionId": "text",
            "createdAt": 1,
            "cutoffAt": 1,
            "resolvedAt": 1,
            "resolution": {
              "phase": "finalized",
              "proposedTokenId": "79795324022048541883642858965406343424009495771215468327056303482013275803188",
              "disputeDeadline": 1782899250
            }
          }
        ],
        "yesLabel": "text",
        "noLabel": "text",
        "rules": "text",
        "yesTokenId": "text",
        "noTokenId": "text",
        "conditionId": "text",
        "resultTokenId": "text",
        "volume": "text",
        "volume24h": "text",
        "volume7d": "text",
        "quoteToken": "text",
        "chainId": "text",
        "questionId": "text",
        "incentiveFactor": {},
        "collection": {
          "title": "text",
          "symbol": "text",
          "frequency": "text",
          "current": {
            "marketId": 1,
            "period": "text",
            "startTime": 1,
            "endTime": 1,
            "startPrice": "text",
            "endPrice": "text"
          },
          "next": [
            {
              "marketId": 1,
              "period": "text",
              "startTime": 1,
              "endTime": 1,
              "startPrice": "text",
              "endPrice": "text"
            }
          ]
        },
        "createdAt": 1,
        "cutoffAt": 1,
        "resolvedAt": 1,
        "labels": [
          "text"
        ],
        "labelIds": [
          1
        ],
        "resolution": {
          "phase": "finalized",
          "proposedTokenId": "79795324022048541883642858965406343424009495771215468327056303482013275803188",
          "disputeDeadline": 1782899250
        }
      }
    ]
  }
}

Get binary market detail

get

Get detailed information about a specific binary market

Authorizations
apikeystringRequired

API key for authentication

Path parameters
marketIdinteger · int64Required

Market ID

Responses
200

Successful response

application/json
codeintegerOptional

Response code (0 for success)

Example: 0
msgstringOptional

Response message

Example: success
get/market/{marketId}
GET /openapi/market/{marketId} HTTP/1.1
apikey: YOUR_API_KEY
Accept: */*
{
  "code": 0,
  "msg": "success",
  "result": {
    "data": {
      "marketId": 1,
      "marketTitle": "text",
      "status": 1,
      "statusEnum": "Created",
      "marketType": 0,
      "childMarkets": [
        {
          "marketId": 1,
          "marketTitle": "text",
          "status": 1,
          "statusEnum": "text",
          "yesLabel": "text",
          "noLabel": "text",
          "rules": "text",
          "yesTokenId": "text",
          "noTokenId": "text",
          "conditionId": "text",
          "resultTokenId": "text",
          "volume": "text",
          "quoteToken": "text",
          "chainId": "text",
          "questionId": "text",
          "createdAt": 1,
          "cutoffAt": 1,
          "resolvedAt": 1,
          "resolution": {
            "phase": "finalized",
            "proposedTokenId": "79795324022048541883642858965406343424009495771215468327056303482013275803188",
            "disputeDeadline": 1782899250
          }
        }
      ],
      "yesLabel": "text",
      "noLabel": "text",
      "rules": "text",
      "yesTokenId": "text",
      "noTokenId": "text",
      "conditionId": "text",
      "resultTokenId": "text",
      "volume": "text",
      "volume24h": "text",
      "volume7d": "text",
      "quoteToken": "text",
      "chainId": "text",
      "questionId": "text",
      "incentiveFactor": {},
      "collection": {
        "title": "text",
        "symbol": "text",
        "frequency": "text",
        "current": {
          "marketId": 1,
          "period": "text",
          "startTime": 1,
          "endTime": 1,
          "startPrice": "text",
          "endPrice": "text"
        },
        "next": [
          {
            "marketId": 1,
            "period": "text",
            "startTime": 1,
            "endTime": 1,
            "startPrice": "text",
            "endPrice": "text"
          }
        ]
      },
      "createdAt": 1,
      "cutoffAt": 1,
      "resolvedAt": 1,
      "labels": [
        "text"
      ],
      "labelIds": [
        1
      ],
      "resolution": {
        "phase": "finalized",
        "proposedTokenId": "79795324022048541883642858965406343424009495771215468327056303482013275803188",
        "disputeDeadline": 1782899250
      }
    }
  }
}

Get categorical market detail

get

Get detailed information about a specific categorical market including child markets

Authorizations
apikeystringRequired

API key for authentication

Path parameters
marketIdinteger · int64Required

Market ID

Responses
200

Successful response

application/json
codeintegerOptional

Response code (0 for success)

Example: 0
msgstringOptional

Response message

Example: success
get/market/categorical/{marketId}
GET /openapi/market/categorical/{marketId} HTTP/1.1
apikey: YOUR_API_KEY
Accept: */*
{
  "code": 0,
  "msg": "success",
  "result": {
    "data": {
      "marketId": 1,
      "marketTitle": "text",
      "status": 1,
      "statusEnum": "Created",
      "marketType": 0,
      "childMarkets": [
        {
          "marketId": 1,
          "marketTitle": "text",
          "status": 1,
          "statusEnum": "text",
          "yesLabel": "text",
          "noLabel": "text",
          "rules": "text",
          "yesTokenId": "text",
          "noTokenId": "text",
          "conditionId": "text",
          "resultTokenId": "text",
          "volume": "text",
          "quoteToken": "text",
          "chainId": "text",
          "questionId": "text",
          "createdAt": 1,
          "cutoffAt": 1,
          "resolvedAt": 1,
          "resolution": {
            "phase": "finalized",
            "proposedTokenId": "79795324022048541883642858965406343424009495771215468327056303482013275803188",
            "disputeDeadline": 1782899250
          }
        }
      ],
      "yesLabel": "text",
      "noLabel": "text",
      "rules": "text",
      "yesTokenId": "text",
      "noTokenId": "text",
      "conditionId": "text",
      "resultTokenId": "text",
      "volume": "text",
      "volume24h": "text",
      "volume7d": "text",
      "quoteToken": "text",
      "chainId": "text",
      "questionId": "text",
      "incentiveFactor": {},
      "collection": {
        "title": "text",
        "symbol": "text",
        "frequency": "text",
        "current": {
          "marketId": 1,
          "period": "text",
          "startTime": 1,
          "endTime": 1,
          "startPrice": "text",
          "endPrice": "text"
        },
        "next": [
          {
            "marketId": 1,
            "period": "text",
            "startTime": 1,
            "endTime": 1,
            "startPrice": "text",
            "endPrice": "text"
          }
        ]
      },
      "createdAt": 1,
      "cutoffAt": 1,
      "resolvedAt": 1,
      "labels": [
        "text"
      ],
      "labelIds": [
        1
      ],
      "resolution": {
        "phase": "finalized",
        "proposedTokenId": "79795324022048541883642858965406343424009495771215468327056303482013275803188",
        "disputeDeadline": 1782899250
      }
    }
  }
}

Get market detail by slug

get

Get detailed information about a specific market by slug (supports binary and categorical market routing)

Authorizations
apikeystringRequired

API key for authentication

Path parameters
slugstringRequired

Market slug

Responses
200

Successful response

application/json
codeintegerOptional

Response code (0 for success)

Example: 0
msgstringOptional

Response message

Example: success
get/market/slug/{slug}
GET /openapi/market/slug/{slug} HTTP/1.1
apikey: YOUR_API_KEY
Accept: */*
{
  "code": 0,
  "msg": "success",
  "result": {
    "data": {
      "marketId": 1,
      "marketTitle": "text",
      "status": 1,
      "statusEnum": "Created",
      "marketType": 0,
      "childMarkets": [
        {
          "marketId": 1,
          "marketTitle": "text",
          "status": 1,
          "statusEnum": "text",
          "yesLabel": "text",
          "noLabel": "text",
          "rules": "text",
          "yesTokenId": "text",
          "noTokenId": "text",
          "conditionId": "text",
          "resultTokenId": "text",
          "volume": "text",
          "quoteToken": "text",
          "chainId": "text",
          "questionId": "text",
          "createdAt": 1,
          "cutoffAt": 1,
          "resolvedAt": 1,
          "resolution": {
            "phase": "finalized",
            "proposedTokenId": "79795324022048541883642858965406343424009495771215468327056303482013275803188",
            "disputeDeadline": 1782899250
          }
        }
      ],
      "yesLabel": "text",
      "noLabel": "text",
      "rules": "text",
      "yesTokenId": "text",
      "noTokenId": "text",
      "conditionId": "text",
      "resultTokenId": "text",
      "volume": "text",
      "volume24h": "text",
      "volume7d": "text",
      "quoteToken": "text",
      "chainId": "text",
      "questionId": "text",
      "incentiveFactor": {},
      "collection": {
        "title": "text",
        "symbol": "text",
        "frequency": "text",
        "current": {
          "marketId": 1,
          "period": "text",
          "startTime": 1,
          "endTime": 1,
          "startPrice": "text",
          "endPrice": "text"
        },
        "next": [
          {
            "marketId": 1,
            "period": "text",
            "startTime": 1,
            "endTime": 1,
            "startPrice": "text",
            "endPrice": "text"
          }
        ]
      },
      "createdAt": 1,
      "cutoffAt": 1,
      "resolvedAt": 1,
      "labels": [
        "text"
      ],
      "labelIds": [
        1
      ],
      "resolution": {
        "phase": "finalized",
        "proposedTokenId": "79795324022048541883642858965406343424009495771215468327056303482013275803188",
        "disputeDeadline": 1782899250
      }
    }
  }
}

Get Label List

get

Get list of labels (categories). Use the returned labelId values with /market?labelId= to filter markets. labelName is human-readable and may be renamed by operators — integrators should treat labelId as the stable key.

Authorizations
apikeystringRequired

API key for authentication

Responses
200

OK

application/json
codeintegerOptional

Response code (0 for success)

Example: 0
msgstringOptional

Response message

Example: success
get/label
GET /openapi/label HTTP/1.1
apikey: YOUR_API_KEY
Accept: */*
{
  "code": 0,
  "msg": "success",
  "result": {
    "list": [
      {
        "labelId": 1,
        "labelName": "text",
        "imageUrl": "text",
        "imageMobileUrl": "text"
      }
    ]
  }
}

Last updated