Skip to content

## CLOB V2 Python SDK unusable for deposit wallets - /auth/api-key doesnt support EIP-1271 #76

@jajjarimosesdas-ship-it

Description

Related issues: #57, #58, #65 - all same bug, all ignored.

Problem

Python SDK (py-clob-client-v2 v1.0.1) is broken for anyone needing signature_type=3 (POLY_1271 / deposit wallet flow).

Two mutually exclusive bugs block all trading:

Bug 1 - EOA blocked: signature_type=1 + funder=EOA gives: "maker address not allowed, please use the deposit wallet
flow"

Bug 2 - Deposit wallet auth blocked: signature_type=3 + funder=deposit_wallet gives: "the order signer address has to be
the address of the API KEY"

Root Cause

/auth/api-key only supports ECDSA recovery. API credentials are ALWAYS tied to the EOA. With sig_type=3, order signer is
the deposit wallet (contract). API key owner != order signer = never match.

Required Fix

Add EIP-1271 (isValidSignature) support to /auth/api-key for contract wallets.

Workarounds tried - all failed

  • EOA + sig_type=1: maker not allowed
  • Deposit wallet + sig_type=3: signer != API key owner
  • Raw HTTP auth with contract address: 401 Invalid L1 headers
  • TS SDK patched L1 headers: same CLOB rejection
  • Monkey-patched order signer: signer derived from signature, not body

Environment

py-clob-client-v2 v1.0.1, Polygon mainnet, EOA + deposit wallet, builder profile registered

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions