For Agents
Send and verify passwordless authentication challenges via email OTP, SMS OTP, WhatsApp OTP, magic links, and passkeys, with session token refresh and verification.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the MojoAuth API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with MojoAuth API.
Send email OTP codes and verify user-submitted codes against MojoAuth
Trigger SMS or WhatsApp OTP delivery for phone-based passwordless login
Issue magic link emails and verify the link token on callback
GET STARTED
Use for: Send an email OTP to a user for passwordless login, Verify the SMS OTP code a user just submitted, Set up passkey registration for a new user, Refresh an expired MojoAuth session token
Not supported: Does not handle role-based authorization, enterprise SSO, or user profile storage — use for passwordless OTP and passkey authentication only.
Jentic publishes the only available OpenAPI specification for MojoAuth API, keeping it validated and agent-ready. MojoAuth is a passwordless authentication platform that issues and verifies one-time passwords across email, phone, and WhatsApp, alongside magic links and passkey-based WebAuthn flows. The API consolidates these methods behind a single set of send and verify endpoints, plus token refresh and verify operations for managing authenticated sessions. It targets product teams replacing password-based logins with OTP or biometric alternatives in days rather than weeks.
Register and authenticate users with WebAuthn passkeys
Verify and refresh MojoAuth-issued JWT session tokens
Patterns agents use MojoAuth API for, with concrete tasks.
★ Passwordless Login for Web and Mobile Apps
Replace password-based authentication with email or SMS OTP using MojoAuth's send-and-verify endpoint pairs. The API handles code generation, delivery, expiration, and verification, so product teams ship a working passwordless flow in a single sprint instead of building OTP infrastructure from scratch. Suitable for B2C apps where reducing password reset friction directly improves activation.
Call POST /users/emailotp with the user's email, then call POST /users/emailotp/verify with the code they entered to issue a session JWT.
WhatsApp OTP for High-Deliverability Verification
Send one-time passcodes over WhatsApp instead of SMS for markets where WhatsApp is the dominant messaging channel and SMS deliverability is poor. MojoAuth's WhatsApp OTP endpoints let teams add the channel without negotiating directly with WhatsApp Business API providers. Useful for apps targeting LATAM, India, and parts of EMEA where WhatsApp adoption exceeds SMS reliability.
Call POST /users/whatsapp with a phone number, then POST /users/whatsapp/verify with the user-submitted code.
Passkey and WebAuthn Onboarding
Add passkey registration and login to an existing app using MojoAuth's WebAuthn endpoints, which abstract the FIDO2 server-side ceremony. Once a user has a passkey, subsequent logins are phishing-resistant and faster than OTP. Recommended for apps with returning users where reducing login friction has measurable retention impact.
Call POST /users/passkey/register to create a passkey for a user, then POST /users/passkey/login on subsequent visits to authenticate them.
Agent-Driven User Verification Flows
AI agents managing customer support or onboarding workflows trigger MojoAuth OTP challenges to verify a user's identity before performing sensitive actions. Through Jentic, the agent calls the appropriate send endpoint, waits for the user's code, and calls the verify endpoint — all without holding the MojoAuth API key in its context. Jentic's spec is the only structured definition for this API.
Search Jentic for 'send otp to verify a user', load POST /users/emailotp, execute it with the user's email, then verify the returned code.
12 endpoints — jentic publishes the only available openapi specification for mojoauth api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/users/emailotp
Send an email OTP to a user
/users/emailotp/verify
Verify an email OTP code
/users/phone
Send an SMS OTP to a phone number
/users/phone/verify
Verify an SMS OTP code
/users/whatsapp
Send a WhatsApp OTP
/users/passkey/register
Register a WebAuthn passkey
/users/passkey/login
Authenticate with an existing passkey
/token/refresh
Refresh a MojoAuth session token
/users/emailotp
Send an email OTP to a user
/users/emailotp/verify
Verify an email OTP code
/users/phone
Send an SMS OTP to a phone number
/users/phone/verify
Verify an SMS OTP code
/users/whatsapp
Send a WhatsApp OTP
Three things that make agents converge on Jentic-routed access.
Credential isolation
MojoAuth API keys are stored encrypted in the Jentic vault. Agents receive scoped execution access — the X-API-Key header value is injected at request time and never exposed in agent context.
Intent-based discovery
Agents search by intent (e.g., 'send a passwordless login code') and Jentic returns the matching MojoAuth send/verify endpoint pair with its parameter schema.
Time to first call
Direct integration: 1-3 days to wire up OTP send/verify, magic link callbacks, and token refresh. Through Jentic: under 1 hour — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Specific to using MojoAuth API through Jentic.
Why is there no official OpenAPI spec for MojoAuth API?
MojoAuth does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call MojoAuth API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the MojoAuth API use?
MojoAuth uses an API key passed in the X-API-Key request header. Through Jentic, the API key is held encrypted in the credential vault and injected at execution time, so the secret never enters the agent's prompt or response context.
Can I add WhatsApp OTP login with the MojoAuth API?
Yes. Call POST /users/whatsapp with the user's phone number to trigger the WhatsApp OTP, then POST /users/whatsapp/verify with the code the user submitted to complete the login. The same send-and-verify pattern is mirrored across email and SMS endpoints.
What are the rate limits for the MojoAuth API?
MojoAuth does not document rate limits in this OpenAPI spec. Production usage should reference https://mojoauth.com for current limits — typically OTP send endpoints are rate-limited per phone number or email to prevent abuse, while verify endpoints are limited per challenge.
How do I issue a passwordless email login through Jentic?
Run pip install jentic, search for 'send a passwordless email login code', load POST /users/emailotp, and execute with the user's email. When the user submits the code, call POST /users/emailotp/verify through Jentic to receive the session JWT.
Does MojoAuth handle passkeys?
Yes. POST /users/passkey/register starts the WebAuthn registration ceremony for a new passkey, and POST /users/passkey/login authenticates a returning user with their existing passkey. MojoAuth handles the FIDO2 server logic so the client only needs the browser WebAuthn API.
/users/passkey/register
Register a WebAuthn passkey
/users/passkey/login
Authenticate with an existing passkey
/token/refresh
Refresh a MojoAuth session token