{"x402Version":2,"name":"One-Time Passwords","description":"HOTP (RFC 4226) and TOTP (RFC 6238) one-time passwords — generate counter- and time-based codes, verify a code within a drift window, and build otpauth:// provisioning URIs.","version":"0.1.0","openapi":"https://otp.openverbs.com/openapi.json","resources":[{"url":"https://otp.openverbs.com/v1/totp","method":"POST","description":"Generate an RFC 6238 time-based one-time password from a base32 secret. Uses the current time by default, or an explicit unix timestamp (seconds); configurable period (default 30s), digits (default 6) and algorithm (default SHA1). Also returns the counter and seconds remaining in the window.","tags":["totp api","generate totp","time based otp","authenticator code","rfc 6238 code","one time password"],"accepts":[{"scheme":"exact","network":"eip155:8453","price":"$0.004","payTo":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A","asset":"USDC"}]},{"url":"https://otp.openverbs.com/v1/hotp","method":"POST","description":"Generate an RFC 4226 counter-based HMAC one-time password from a base32 secret and counter. Configurable digits (6–10, default 6) and algorithm (SHA1/SHA256/SHA512, default SHA1). An invalid base32 secret is a clean 400.","tags":["hotp api","generate hotp","counter based otp","hmac one time password","rfc 4226 code","otp counter code"],"accepts":[{"scheme":"exact","network":"eip155:8453","price":"$0.004","payTo":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A","asset":"USDC"}]},{"url":"https://otp.openverbs.com/v1/verify","method":"POST","description":"Verify a submitted TOTP code against a base32 secret, scanning ±window time steps (default ±1) to tolerate clock drift. Returns valid plus the matching step offset (delta). A code that does not match is a successful result with valid=false — not an error.","tags":["verify totp","validate otp code","check authenticator code","totp verification api","mfa code validation","otp drift window"],"accepts":[{"scheme":"exact","network":"eip155:8453","price":"$0.004","payTo":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A","asset":"USDC"}]},{"url":"https://otp.openverbs.com/v1/uri","method":"POST","description":"Build an otpauth:// provisioning URI (the string encoded in authenticator QR codes) for a totp or hotp secret. Includes label, issuer, algorithm, digits and period (totp) or counter (hotp). The secret must be valid base32.","tags":["otpauth uri","generate qr provisioning uri","authenticator setup uri","build otpauth link","totp provisioning","hotp provisioning"],"accepts":[{"scheme":"exact","network":"eip155:8453","price":"$0.004","payTo":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A","asset":"USDC"}]}]}