- Docs
- Api%2Freference%2Fwallets%2FGetAuthChallenge
Get a sign-in challenge
Ask for a one-off random string to sign, which proves that whoever answers holds the key right now rather than replaying an old signature. Fetch it immediately before you need it: it can be used once and expires after 60 seconds. Sign it with the crypto wallet's `personal_sign` method, then send the challenge and signature to `POST /wallets/connect/eoa`. Passkey registration and sign-in use the challenges returned by their own `/wallets/connect/passkey/*/options` endpoints instead. No sign-in needed.
Response Body
application/json
application/json
application/json
curl -X GET "https://api.dual.network/auth/challenge"{
"challenge": "s5f2X8kQvLbA1mZ0pYtR7cJdEwNhGuIoP3qS6rT9vXk",
"expires_at": "2026-03-06T11:43:00Z"
}{
"code": 8,
"message": "too many requests"
}{
"code": 13,
"message": "internal error"
}