{
  "path": "/earn/dual/investment_plan",
  "operation_id": "listDualInvestmentPlans",
  "auth_required": false,
  "parameters": [
    {
      "name": "plan_id",
      "in": "query",
      "required": false,
      "description": "Financial project ID",
      "schema": {
        "type": "integer",
        "format": "int64"
      },
      "example": 1
    },
    {
      "name": "coin",
      "in": "query",
      "required": false,
      "description": "Investment Token",
      "schema": {
        "type": "string"
      },
      "example": "BTC"
    },
    {
      "name": "type",
      "in": "query",
      "required": false,
      "description": "Type enum: `put` — buy low; `call` — sell high",
      "schema": {
        "type": "string"
      },
      "example": "call"
    },
    {
      "name": "quote_currency",
      "in": "query",
      "required": false,
      "description": "Settlement currency enum: defaults to USDT; GUSD optional",
      "schema": {
        "type": "string"
      }
    },
    {
      "name": "sort",
      "in": "query",
      "required": false,
      "description": "Sort field enum:\n`apy` — highest APY first\n`short-period` — shortest tenor first\n`multiple` — highest premium first",
      "schema": {
        "type": "string"
      }
    },
    {
      "name": "page",
      "in": "query",
      "required": false,
      "description": "page number",
      "schema": {
        "type": "integer"
      },
      "example": 1
    },
    {
      "name": "page_size",
      "in": "query",
      "required": false,
      "description": "Items per page",
      "schema": {
        "type": "integer"
      },
      "example": 3
    }
  ],
  "response_fields": {
    "200": {
      "description": "Successfully retrieved",
      "fields": [
        {
          "path": "$",
          "type": "array<object>",
          "description": "",
          "constraints": ""
        },
        {
          "path": "$[]",
          "type": "object",
          "description": "",
          "constraints": ""
        },
        {
          "path": "$[].id",
          "type": "integer",
          "description": "Product ID",
          "constraints": "格式：\"int32\""
        },
        {
          "path": "$[].instrument_name",
          "type": "string",
          "description": "Product Name",
          "constraints": ""
        },
        {
          "path": "$[].invest_currency",
          "type": "string",
          "description": "Investment Token",
          "constraints": ""
        },
        {
          "path": "$[].exercise_currency",
          "type": "string",
          "description": "Strike Token",
          "constraints": ""
        },
        {
          "path": "$[].exercise_price",
          "type": "number",
          "description": "Strike price",
          "constraints": "格式：\"double\""
        },
        {
          "path": "$[].delivery_time",
          "type": "integer",
          "description": "Settlement time",
          "constraints": "格式：\"int32\""
        },
        {
          "path": "$[].apy_display",
          "type": "string",
          "description": "Annual Yield",
          "constraints": ""
        },
        {
          "path": "$[].min_amount",
          "type": "string",
          "description": "Minimum investment amount",
          "constraints": ""
        },
        {
          "path": "$[].start_time",
          "type": "integer",
          "description": "Start Time",
          "constraints": "格式：\"int32\""
        },
        {
          "path": "$[].end_time",
          "type": "integer",
          "description": "End time",
          "constraints": "格式：\"int32\""
        },
        {
          "path": "$[].status",
          "type": "string",
          "description": "Status:\n\n`NOTSTARTED` - Not started\n`ONGOING` - In progress\n`ENDED` - Ended",
          "constraints": ""
        }
      ]
    }
  },
  "source_version": "v4.106.132",
  "source_url": "https://github.com/gate/gateapi-python/blob/cd2cac4d339ec0734480787d23c020f467fd7b80/openapi.yaml",
  "local_tool_limits": [
    "仅检查必填、枚举和简单数值范围",
    "复杂类型序列化、条件必填、时间窗口等以官方规则为准",
    "不会发起 API 请求"
  ]
}
