You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MEXC API提现接口签名异常求助:返回700004错误码

解决MEXC提现接口签名校验失败(700004错误)的问题

核心问题排查

你遇到的700004错误是签名参数不合法导致的,代码里存在三个关键问题:

  • 误用GET请求,而MEXC提现接口要求使用POST请求,参数传递方式完全不符合规范。
  • 签名生成逻辑错误:既没有将提现业务参数纳入签名范围,还使用了格式化时间字符串(MEXC要求的是毫秒级时间戳)。
  • 错误地将业务参数放在HTTP Headers中,不符合接口的参数传递规则。

修正后的代码

import requests
import hmac
from urllib.parse import urlencode
import hashlib
import time

access_key = "(MY_ACCESS_KEY)"
secret_key = "(MY_SECRET_KEY)"

def generate_signature(api_secret, timestamp, sign_params):
    # MEXC要求参数按key升序排序后编码,否则签名不合法
    sorted_params = sorted(sign_params.items())
    encoded_params = urlencode(sorted_params)
    # 待签名字符串格式:毫秒时间戳 + 编码后的业务参数
    to_sign = f"{timestamp}{encoded_params}"
    # HMAC SHA256加密生成签名
    sign = hmac.new(api_secret.encode('utf-8'), to_sign.encode('utf-8'), hashlib.sha256).hexdigest()
    return sign

# 提现接口地址
url = "https://api.mexc.com/api/v3/capital/withdraw/apply"
# 获取13位毫秒级时间戳,匹配MEXC签名规则
timestamp = str(int(time.time() * 1000))
# 提现业务参数,按实际情况填充
withdraw_params = {
    "symbol": "(MY_SYMBOL)",
    "network": "(MY_NETWORK)",
    "address": "(MY_ADDRESS)",
    "memo": "(MY_MEMO)",
    "amount": str(MY_AMOUNT)  # 金额必须转为字符串类型
}

# 生成合法签名
signature = generate_signature(secret_key, timestamp, withdraw_params)

# 请求头仅携带认证必要字段
headers = {
    "apiKey": access_key,
    "timestamp": timestamp
}

# 请求体包含所有业务参数和签名
request_body = {
    **withdraw_params,
    "signature": signature
}

# 发送POST请求
response = requests.post(url, headers=headers, json=request_body).json()
print(response)

关键修改说明

  • 切换为POST请求:严格匹配MEXC提现接口的要求,确保参数能被接口正确解析。
  • 修正时间戳格式:使用time.time()*1000生成13位毫秒时间戳,这是MEXC签名校验的必要条件。
  • 签名包含所有业务参数:将所有提现参数排序编码后与时间戳拼接,保证签名的完整性,符合MEXC的签名规则。
  • 调整参数位置:业务参数和签名放在JSON请求体中,Headers仅保留apiKey和timestamp两个认证字段,对齐接口规范。

内容的提问来源于stack exchange,提问作者Rustam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 18:05:26