Logo

Dyzo API

v2.0.0

Login Methods

Complete Dyzo API Documentation - Project Management, Team Collaboration & Time Tracking Platform

API Overview

Capabilities and features

Multiple authentication methods for secure employee access - email/password, OAuth, and OTP-based login.

Key Features

Email & password authentication with JWT tokens
Google OAuth 2.0 integration
Apple Sign-In support
OTP-based passwordless login
Token-based authentication
Automatic token refresh mechanism
Secure session management
Logout and token expiry
POST
/login/
200 OK

Employee Login (Email & Password)

Standard authentication with email and password. Returns JWT access and refresh tokens that must be included in subsequent API requests.

JSONRequest Body
1{
2 "email": "[email protected]",
3 "password": "SecurePass123!"
4}
POST
/api/google-login/
200 OK

Google OAuth 2.0 Login

Authenticate using Google OAuth token. Auto-creates employee account if user doesn't exist in the system.

JSONRequest Body
1{
2 "token": "google_oauth_id_token_here",
3 "email": "[email protected]",
4 "name": "John Doe",
5 "picture": "https://lh3.googleusercontent.com/..."
6}
POST
/api/apple-login/
200 OK

Apple Sign-In

Authenticate using Apple ID token. Supports Sign in with Apple for iOS and web applications.

JSONRequest Body
1{
2 "token": "apple_identity_token_here",
3 "email": "[email protected]",
4 "name": "John Doe"
5}
POST
/verify-email/
200 OK

Send Email Verification OTP

Sends a 6-digit OTP to the user's email for login or verification. Used for Apple login and passwordless authentication. OTP is valid for 10 minutes.

JSONRequest Body
1{
2 "email": "[email protected]"
3}
POST
/otp-login/
200 OK

OTP Email Login

Login using OTP sent to email. Supports multiple accounts with same email across different companies. If multiple accounts found, API returns a list of companies for selection.

JSONRequest Body
1{
2 "email": "[email protected]",
3 "otp": "123456",
4}
POST
/token-login/
200 OK

Token-Based Login (Email + Company)

Passwordless login based on email and company_id. Used for deep links, SSO, or login redirections. Validates company and optional admin role.

JSONRequest Body
1{
2 "email": "[email protected]",
3 "company_id": 1001,
4 "company_name": "Acme Technologies",
5 "isAdmin": true
6}