Account & Authentication
by @d9m1n1c
Account signup, login via email/OTP/wallet/biometric, token refresh, password reset, and session management.
clawhub install aiotnetwork-account-authπ About This Skill
name: Account & Authentication description: Account signup, login via email/OTP/wallet/biometric, token refresh, password reset, and session management. version: 1.0.0 metadata: openclaw: requires: env: - AIOT_API_BASE_URL primaryEnv: AIOT_API_BASE_URL
Account & Authentication
Use this skill when the user needs to sign up, log in, manage sessions, reset their password, or link a Web3 wallet.
Configuration
The default API base URL is https://payment-api-dev.aiotnetwork.io. All endpoints are relative to this URL.
To override (e.g. for local development):
export AIOT_API_BASE_URL="http://localhost:8080"
If AIOT_API_BASE_URL is not set, use https://payment-api-dev.aiotnetwork.io as the base for all requests.
Available Tools
send_otp β Send a one-time password to an email address | POST /api/v1/auth/otp/sendverify_otp β Verify an OTP code and receive a verification token | POST /api/v1/auth/otp/verifyotp_rate_limit_status β Check OTP rate limit status for the current session | GET /api/v1/auth/otp/statussignup β Create a new account with email, password, and OTP verification token | POST /api/v1/auth/signuplogin β Login with email and password | POST /api/v1/auth/loginlogin_with_wallet β Login by signing a nonce with a Web3 wallet | POST /api/v1/auth/walletget_wallet_nonce β Get a nonce for wallet-based login | GET /api/v1/auth/wallet/noncebiometric_login β Login using biometric credentials | POST /api/v1/auth/biometricrefresh_token β Refresh an expired access token using a refresh token | POST /api/v1/auth/refreshreset_password β Reset account password using OTP verification | POST /api/v1/auth/reset-passwordunlock_account β Unlock a locked account | POST /api/v1/auth/unlockget_account β Get current account information | GET /api/v1/account | Requires authupdate_password β Change account password | PUT /api/v1/account/password | Requires authlink_wallet β Link a Web3 wallet to the account | PUT /api/v1/account/wallet | Requires authunlink_wallet β Remove a linked Web3 wallet | DELETE /api/v1/account/wallet | Requires authlogout β Logout current session | POST /api/v1/account/logout | Requires authlogout_all β Logout from all sessions | POST /api/v1/account/logout-all | Requires authRecommended Flows
Sign Up
Create a new account via email and OTP
1. Send OTP: POST /api/v1/auth/otp/send with {email, type: "registration"} 2. Verify OTP: POST /api/v1/auth/otp/verify with {email, code, type: "registration"} β returns verification_token 3. Sign up: POST /api/v1/auth/signup with {email, password, verification_token}
Login
Authenticate and receive access/refresh tokens
1. Login: POST /api/v1/auth/login with {email, password} β returns access_token, refresh_token 2. Use access_token as Bearer token in Authorization header for all authenticated requests 3. When access_token expires, refresh: POST /api/v1/auth/refresh with {refresh_token}
Rules
Agent Guidance
Follow these instructions when executing this skill:
send_otp with type "registration", then verify_otp with type "registration", then signup. Never skip OTP verification.send_otp with type "forget_password", then verify_otp, then reset_password with the verification token.login or login_with_wallet.refresh_token with the refresh token. Do not ask the user to log in again.send_otp with type "account_unlock", then verify_otp, then unlock_account with the verification token.βοΈ Configuration
The default API base URL is https://payment-api-dev.aiotnetwork.io. All endpoints are relative to this URL.
To override (e.g. for local development):
export AIOT_API_BASE_URL="http://localhost:8080"
If AIOT_API_BASE_URL is not set, use https://payment-api-dev.aiotnetwork.io as the base for all requests.