跳到正文

    按 / 搜索,按 [ 和 ] 前往上一页和下一页。

    开发者参考

    意图 API

    如何向中继提交已签名的消息并查询其结果。Schema 由中继运行的同一份代码生成。

    接口

    POST /intents

    提交已签名的意图(开仓、平仓、提现、注册或撤销会话密钥、质押、解除质押、领取)。

    请求: intentRequestSchema · JSON Schema
    {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "openPosition"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "instrumentId": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "isLong": {
                  "type": "boolean"
                },
                "size": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "leverage": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "useDebt": {
                  "type": "boolean"
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "instrumentId",
                "isLong",
                "size",
                "leverage",
                "useDebt",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "closePositions"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "positionIds": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  }
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "positionIds",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "withdrawToCore"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "amount": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "amount",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            },
            "withdrawal": {
              "type": "object",
              "properties": {
                "route": {
                  "type": "string",
                  "enum": [
                    "hypercore",
                    "hyperevm",
                    "ethereum",
                    "arbitrum",
                    "solana"
                  ]
                },
                "destination": {
                  "type": "string"
                },
                "onward": {
                  "type": "object",
                  "properties": {
                    "nonce": {
                      "type": "string",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "maximumFee": {
                      "type": "string",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "createRecipient": {
                      "type": "boolean"
                    },
                    "signature": {
                      "type": "object",
                      "properties": {
                        "v": {
                          "type": "string",
                          "enum": [
                            "27",
                            "28"
                          ]
                        },
                        "r": {
                          "type": "string",
                          "pattern": "^0x[0-9a-f]{64}$"
                        },
                        "s": {
                          "type": "string",
                          "pattern": "^0x[0-9a-f]{64}$"
                        }
                      },
                      "required": [
                        "v",
                        "r",
                        "s"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "nonce",
                    "maximumFee",
                    "createRecipient",
                    "signature"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "route"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed",
            "withdrawal"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "registerSessionKey"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "key": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "expiry": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "feeAddress": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "key",
                "expiry",
                "feeAddress",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "registerSessionKeyV2"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "key": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "expiry": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "feeAddress": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "maxBuilderFee": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "referrer": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "key",
                "expiry",
                "feeAddress",
                "maxBuilderFee",
                "referrer",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "revokeSessionKeys"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "keys": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "pattern": "^0x[0-9a-f]{40}$"
                  }
                },
                "all": {
                  "type": "boolean"
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "keys",
                "all",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "stake"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "amount": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "amount",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "unstake"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "amount": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "amount",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "const": "claim"
            },
            "signed": {
              "type": "object",
              "properties": {
                "user": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "nonce": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "deadline": {
                  "type": "string",
                  "pattern": "^(?:0|[1-9][0-9]*)$"
                },
                "v": {
                  "type": "string",
                  "enum": [
                    "27",
                    "28"
                  ]
                },
                "r": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "s": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                }
              },
              "required": [
                "user",
                "nonce",
                "deadline",
                "v",
                "r",
                "s"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "action",
            "signed"
          ],
          "additionalProperties": false
        }
      ]
    }
    响应: intentAckSchema · JSON Schema
    {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "type": "object",
      "properties": {
        "intentId": {
          "type": "string",
          "pattern": "^0x[0-9a-f]{64}$"
        },
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "openPosition",
                "closePositions",
                "withdrawToCore",
                "registerSessionKey",
                "registerSessionKeyV2",
                "revokeSessionKeys",
                "stake",
                "unstake",
                "claim",
                "distribute"
              ]
            },
            {
              "type": "string",
              "pattern": "^[a-z][A-Za-z0-9]{0,63}$"
            }
          ]
        },
        "state": {
          "type": "string",
          "enum": [
            "queued",
            "prepared",
            "confirmed",
            "failed",
            "expired",
            "cancelled"
          ]
        },
        "queueRevision": {
          "type": "string",
          "pattern": "^(?:0|[1-9][0-9]*)$"
        },
        "eligibleAtMs": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            {
              "type": "null"
            }
          ]
        },
        "reason": {
          "anyOf": [
            {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "tradingPaused",
                    "marketPaused",
                    "inactiveInstrument",
                    "belowMinimum",
                    "belowMinimumNotional",
                    "leverageTooHigh",
                    "positionTooLarge",
                    "openInterest",
                    "funding",
                    "noOpenPositions",
                    "tokenBalance",
                    "stakedBalance",
                    "sessionKeyLimit",
                    "noDeposit",
                    "noRewards",
                    "alreadyQueued",
                    "tooManyPositions",
                    "accountLimit",
                    "accountRestricted",
                    "notAllowlisted",
                    "termsRequired",
                    "marketHeld",
                    "circuitBreaker",
                    "exposureLimit",
                    "sessionExpired",
                    "unauthorized",
                    "expired",
                    "invalid",
                    "nonceUsed",
                    "belowMinimumWithdrawal",
                    "retryLater",
                    "closeHold",
                    "internalError"
                  ]
                },
                {
                  "type": "string",
                  "pattern": "^[a-z][A-Za-z0-9]{0,63}$"
                }
              ]
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "intentId",
        "action",
        "state",
        "queueRevision"
      ]
    }

    POST /intents/:id/cancel

    用 CancelIntent 签名取消排队中的意图。

    请求: cancelRequestSchema · JSON Schema
    {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "type": "object",
      "properties": {
        "user": {
          "type": "string",
          "pattern": "^0x[0-9a-f]{40}$"
        },
        "deadline": {
          "type": "string",
          "pattern": "^(?:0|[1-9][0-9]*)$"
        },
        "v": {
          "type": "string",
          "enum": [
            "27",
            "28"
          ]
        },
        "r": {
          "type": "string",
          "pattern": "^0x[0-9a-f]{64}$"
        },
        "s": {
          "type": "string",
          "pattern": "^0x[0-9a-f]{64}$"
        }
      },
      "required": [
        "user",
        "deadline",
        "v",
        "r",
        "s"
      ],
      "additionalProperties": false
    }
    响应: cancelResponseSchema · JSON Schema
    {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "type": "object",
      "properties": {
        "intentId": {
          "type": "string",
          "pattern": "^0x[0-9a-f]{64}$"
        },
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "openPosition",
                "closePositions",
                "withdrawToCore",
                "registerSessionKey",
                "registerSessionKeyV2",
                "revokeSessionKeys",
                "stake",
                "unstake",
                "claim",
                "distribute"
              ]
            },
            {
              "type": "string",
              "pattern": "^[a-z][A-Za-z0-9]{0,63}$"
            }
          ]
        },
        "state": {
          "type": "string",
          "const": "cancelled"
        }
      },
      "required": [
        "intentId",
        "action",
        "state"
      ]
    }

    POST /intents/:id/onward

    为卡住的提现重新签署 Hyperliquid 后续转账。

    请求: onwardRequestSchema · JSON Schema
    {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "type": "object",
      "properties": {
        "nonce": {
          "type": "string",
          "pattern": "^(?:0|[1-9][0-9]*)$"
        },
        "maximumFee": {
          "type": "string",
          "pattern": "^(?:0|[1-9][0-9]*)$"
        },
        "createRecipient": {
          "type": "boolean"
        },
        "signature": {
          "type": "object",
          "properties": {
            "v": {
              "type": "string",
              "enum": [
                "27",
                "28"
              ]
            },
            "r": {
              "type": "string",
              "pattern": "^0x[0-9a-f]{64}$"
            },
            "s": {
              "type": "string",
              "pattern": "^0x[0-9a-f]{64}$"
            }
          },
          "required": [
            "v",
            "r",
            "s"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "nonce",
        "maximumFee",
        "createRecipient",
        "signature"
      ],
      "additionalProperties": false
    }
    响应: onwardResponseSchema · JSON Schema
    {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "type": "object",
      "properties": {
        "intentId": {
          "type": "string",
          "pattern": "^0x[0-9a-f]{64}$"
        },
        "status": {
          "type": "string",
          "enum": [
            "signed",
            "submitted",
            "in_transit",
            "settled",
            "needs_signature",
            "failed"
          ]
        }
      },
      "required": [
        "intentId",
        "status"
      ]
    }

    GET /intents/:id

    单个意图的状态。

    响应: intentStatusSchema · JSON Schema
    {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "type": "object",
      "properties": {
        "intentId": {
          "type": "string",
          "pattern": "^0x[0-9a-f]{64}$"
        },
        "action": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "openPosition",
                "closePositions",
                "withdrawToCore",
                "registerSessionKey",
                "registerSessionKeyV2",
                "revokeSessionKeys",
                "stake",
                "unstake",
                "claim",
                "distribute"
              ]
            },
            {
              "type": "string",
              "pattern": "^[a-z][A-Za-z0-9]{0,63}$"
            }
          ]
        },
        "state": {
          "type": "string",
          "enum": [
            "queued",
            "prepared",
            "confirmed",
            "failed",
            "expired",
            "cancelled"
          ]
        },
        "outcome": {
          "type": "string",
          "enum": [
            "succeeded",
            "failed",
            "expired",
            "cancelled",
            "unknown"
          ]
        },
        "reason": {
          "anyOf": [
            {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "tradingPaused",
                    "marketPaused",
                    "inactiveInstrument",
                    "belowMinimum",
                    "belowMinimumNotional",
                    "leverageTooHigh",
                    "positionTooLarge",
                    "openInterest",
                    "funding",
                    "noOpenPositions",
                    "tokenBalance",
                    "stakedBalance",
                    "sessionKeyLimit",
                    "noDeposit",
                    "noRewards",
                    "alreadyQueued",
                    "tooManyPositions",
                    "accountLimit",
                    "accountRestricted",
                    "notAllowlisted",
                    "termsRequired",
                    "marketHeld",
                    "circuitBreaker",
                    "exposureLimit",
                    "sessionExpired",
                    "unauthorized",
                    "expired",
                    "invalid",
                    "nonceUsed",
                    "belowMinimumWithdrawal",
                    "retryLater",
                    "closeHold",
                    "internalError"
                  ]
                },
                {
                  "type": "string",
                  "pattern": "^[a-z][A-Za-z0-9]{0,63}$"
                }
              ]
            },
            {
              "type": "null"
            }
          ]
        },
        "txHash": {
          "anyOf": [
            {
              "type": "string",
              "pattern": "^0x[0-9a-f]{64}$"
            },
            {
              "type": "null"
            }
          ]
        },
        "positionId": {
          "anyOf": [
            {
              "type": "string",
              "pattern": "^(?:0|[1-9][0-9]*)$"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceptedAtMs": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "deadline": {
          "type": "string",
          "pattern": "^(?:0|[1-9][0-9]*)$"
        },
        "eligibleAtMs": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "intentId",
        "action",
        "state",
        "acceptedAtMs",
        "deadline"
      ]
    }

    GET /queue-rank/accounts/:addr

    账户在中继队列中的位置。

    响应: queueRankSchema · JSON Schema
    {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "type": "object",
      "properties": {
        "ok": {
          "type": "boolean",
          "const": true
        },
        "queueRevision": {
          "type": "string",
          "pattern": "^(?:0|[1-9][0-9]*)$"
        },
        "entries": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "intentId": {
                "type": "string",
                "pattern": "^0x[0-9a-f]{64}$"
              },
              "position": {
                "type": "string",
                "pattern": "^[1-9][0-9]*$"
              }
            },
            "required": [
              "intentId",
              "position"
            ]
          }
        }
      },
      "required": [
        "ok",
        "entries"
      ]
    }

    意图状态

    已接受的意图会经历以下公开状态;failed、expired 和 cancelled 为最终状态。幂等地重复提交会返回意图的真实状态,包括最终状态。

    queuedpreparedconfirmedfailedexpiredcancelled

    原因

    拒绝和失败会附带以下原因之一。客户端应把未知原因当作一般失败处理。

    tradingPausedmarketPausedinactiveInstrumentbelowMinimumbelowMinimumNotionalleverageTooHighpositionTooLargeopenInterestfundingnoOpenPositionstokenBalancestakedBalancesessionKeyLimitnoDepositnoRewardsalreadyQueuedtooManyPositionsaccountLimitaccountRestrictednotAllowlistedtermsRequiredmarketHeldcircuitBreakerexposureLimitsessionExpiredunauthorizedexpiredinvalidnonceUsedbelowMinimumWithdrawalretryLatercloseHoldinternalError

    接收端错误

    代码HTTP 状态
    invalid_intent400
    deadline_expired400
    unauthorized_intent403
    intent_not_found404
    intent_conflict409
    admission_rejected422
    below_minimum_stake422
    below_minimum_withdrawal422
    invalid_onward422
    intake_action_paused422
    rate_limited429
    region_restricted451
    request_failed500

    intent_conflict: nonceUsed, cancelRace, notCancellable, onwardState. invalid_onward: signature, nonceWindow, mismatch.

    合约错误

    链上调用回退时,中继把合约的自定义错误映射为原因,并决定是否重试。标注了休眠开关的错误,只有在该防护机制开启后才可能出现。

    合约错误原因中继处理方式休眠开关
    InsufficientGasinternalErrorbug
    AlreadySetinvalidterminal
    RenounceDisabledinternalErrorbug
    NotExecutorinternalErrorbug
    NotPauseAuthorityinternalErrorbug
    NotMarketKeeperinternalErrorbug
    NotReconcilerinternalErrorbug
    NotDevFeeRecipientinternalErrorbug
    NotStakinginternalErrorbug
    NotOffHoursKeeperinternalErrorbug
    TradingPausedtradingPausedterminal
    BreakerActivecircuitBreakerrequeueD6
    LpFrozencircuitBreakerrequeueD6
    MarketIsRetiredinactiveInstrumentterminal
    InvalidInstrumentinactiveInstrumentterminal
    LeverageTooLowleverageTooHighterminal
    LeverageTooHighleverageTooHighterminal
    MarginBelowMinimumbelowMinimumterminal
    NotionalBelowMinimumbelowMinimumNotionalterminal
    PositionTooLargepositionTooLargeterminal
    OiCapExceededopenInterestrequeueOnce
    BlockFlowExceededopenInterestrequeueNextBlockD4
    SideExposureExceededexposureLimitterminalD5
    AccountNotionalExceededaccountLimitterminalD7
    TooManyPositionstooManyPositionsterminal
    InsufficientBalancefundingterminal
    InsufficientDebtBalancefundingterminal
    DebtWalkLimitfundingterminal
    PositionNotOpennoOpenPositionsterminal
    NotPositionOwnerunauthorizedterminal
    EmptyIdsinvalidterminal
    TooManyIdsinvalidterminal
    ProfitHoldNotElapsedcloseHoldrequeueD3
    NotLiquidatableinvalidterminal
    DirectCloseDisabledinvalidterminal
    QueueEmptyinvalidterminal
    OracleUnavailablemarketHeldrequeue
    BadBookmarketHeldrequeue
    SpreadTooWidemarketHeldrequeueD2
    PriceDeviationmarketHeldrequeueD1
    RefPriceUnavailablemarketHeldrequeueD1
    NoProxyinternalErrorbug
    ProxyNotActivatedinternalErrorbug
    ExchangeNotActivatedinternalErrorbug
    PrecompileReadFailedretryLaterrequeue
    SweepAlreadyPendinginternalErrorbug
    SweepBelowMinimuminternalErrorbug
    SweepTooSoonretryLaterrequeueNextBlock
    NoPendingSweepinternalErrorbug
    FinalizeTooSoonretryLaterrequeueNextBlock
    SweepNotLandedretryLaterrequeueNextBlock
    ReconcileExceedsUnconfirmedinvalidterminal
    ReconcileExceedsSurplusinvalidterminal
    UnconfirmedExpiredinvalidterminal
    SweepsPendinginternalErrorbug
    WithdrawalBelowMinimumbelowMinimumWithdrawalterminal
    WithdrawalTooLargeinvalidterminal
    ActivationExceedsAmountinvalidterminal
    CoreBalanceInsufficientretryLaterrequeue
    WithdrawOncePerBlockretryLaterrequeueNextBlock
    FeeTooHighinvalidterminal
    ParamOutOfBoundsinvalidterminal
    ZeroAddressinvalidterminal
    AlreadyRetiredinvalidterminal
    CapAboveCeilinginternalErrorbugD8
    AssetAlreadyListedinvalidterminal
    AssetInfoMismatchinvalidterminal
    TooManyInstrumentsinvalidterminal
    PriceOutOfRangeinvalidterminal
    DeferredHooksPendinginvalidterminal
    BreakerDisabledinvalidterminal
    BreakerNotTrippedinvalidterminal
    GuardianTripLimitinvalidterminalD6
    ResetNotAllowedinvalidterminalD6
    DomainMismatchinternalErrorbug
    SzDecimalsTooLargeinternalErrorbug
    NotAuthorizedRelayerinternalErrorbug
    EmptyBatchinternalErrorbug
    BatchTooLargeinternalErrorbug
    SelectorNotAllowedinternalErrorbug
    BatchCallFailedinternalErrorbug
    NotGuardianOrOwnerinternalErrorbug
    UnauthorizedSubmitterinternalErrorbug
    UnauthorizedCallerinternalErrorbug
    InvalidSignatureunauthorizedterminal
    ExpiredDeadlineexpiredterminal
    DeadlineTooFarinvalidterminalD9
    InvalidNoncenonceUsedterminal
    SessionKeyExpiredsessionExpiredterminal
    ZeroAddressKeyinvalidterminal
    KeyIsUserinvalidterminal
    ExpiryInPastinvalidterminal
    ExpiryTooLonginvalidterminalD9
    TooManyKeysinvalidterminal
    BuilderNotApprovedinvalidterminal
    BuilderFeeWithoutBuilderinvalidterminal
    AlreadyRegisteredinvalidterminal
    InvalidReferrerinvalidterminal
    ReferrerAlreadySetinvalidterminal
    NotSessionKeyManagerinternalErrorbug
    NotReferralManagerinternalErrorbug
    ZeroAmountinvalidterminal
    InsufficientStakestakedBalanceterminal
    DirectCallsDisabledinvalidterminal
    NotDistributorinternalErrorbug
    NotExchangeinternalErrorbug
    InvalidMintParamsinvalidterminal
    MintParamsAreFrozeninvalidterminal
    RebateAlreadyActiveinvalidterminal
    RebateUnavailableinvalidterminal
    ExponentTooLargeinternalErrorbug
    FeeRateTooHighinvalidterminal
    NotBuilderGuardianinternalErrorbug
    NotBuilderinternalErrorbug
    TransferRestrictedinternalErrorbug
    NotMinterinternalErrorbug
    NotAuthorizedDeployerinternalErrorbug
    OnlyExchangeinternalErrorbug
    OnlyUserunauthorizedterminal
    ActionNotAllowedinternalErrorbug
    BadDestinationinternalErrorbug
    UsdcRescueForbiddeninvalidterminal
    NativeTransferFailedinvalidterminal
    ECDSAInvalidSignatureunauthorizedterminal
    ECDSAInvalidSignatureLengthunauthorizedterminal
    ECDSAInvalidSignatureSunauthorizedterminal
    ERC20InsufficientBalancetokenBalanceterminal
    ERC20InsufficientAllowanceinternalErrorbug
    ERC20InvalidSenderinternalErrorbug
    ERC20InvalidReceiverinternalErrorbug
    ERC20InvalidApproverinternalErrorbug
    ERC20InvalidSpenderinternalErrorbug
    ERC2612ExpiredSignatureexpiredterminal
    ERC2612InvalidSignerunauthorizedterminal
    InvalidAccountNoncenonceUsedterminal
    OwnableUnauthorizedAccountinternalErrorbug
    OwnableInvalidOwnerinternalErrorbug
    ReentrancyGuardReentrantCallinternalErrorbug
    InvalidInitializationinternalErrorbug
    NotInitializinginternalErrorbug
    UUPSUnauthorizedCallContextinternalErrorbug
    UUPSUnsupportedProxiableUUIDinternalErrorbug
    ERC1967InvalidImplementationinternalErrorbug
    ERC1967NonPayableinternalErrorbug
    AddressEmptyCodeinternalErrorbug
    FailedCallinternalErrorbug
    SafeCastOverflowedUintDowncastinternalErrorbug
    SafeCastOverflowedIntDowncastinternalErrorbug
    SafeCastOverflowedUintToIntinternalErrorbug
    SafeCastOverflowedIntToUintinternalErrorbug
    SafeERC20FailedOperationinternalErrorbug
    InvalidShortStringinternalErrorbug
    StringTooLonginternalErrorbug
    最后更新: