Signing Operations API

Overview

Endpoints for creating secure signing sessions and signing blockchain messages or transactions. These operations ensure secure transaction authorization and message authentication.

Create Signing Session

Initialize a secure session for transaction or message signing.

POST api.bloclabs.com/v1/wallets/{wallet_id}/sign

Request

{
    "type": "TRANSACTION",      // TRANSACTION, MESSAGE
    "expiry_minutes": 15,       // Optional: Session expiry (default: 15)
    "biometric_required": true, // Optional: Require biometric auth
    "metadata": {              // Optional: Additional session data
        "app_name": "Trading App",
        "source": "mobile"
    }
}

Response

{
    "status": "success",
    "data": {
        "session_id": "sign_session_xyz789",
        "expires_at": "2024-03-15T10:15:00Z",
        "status": "PENDING",
        "verification_code": "123456",  // For 2FA verification
        "qr_code": "data:image/png;base64,...",  // For QR scanning
        "security_level": "HIGH"
    }
}

Sign Message

Sign a message using wallet's private key.

Request

Response

Sign Transaction

Sign a transaction without broadcasting it.

Request

Response

Verify Signature

Verify a signed message or transaction.

Request

Response

Error Responses

Session Expired

Invalid Verification Code

Unauthorized Signing

Notes

  • Signing sessions expire after 15 minutes by default

  • Always verify the message/transaction before signing

  • Use appropriate security levels based on transaction value

  • Keep verification codes confidential

  • Consider implementing transaction value limits

Last updated

Was this helpful?