Documentation

Register & Login

User registration, login, logout, and token refresh endpoints

Last updated: Feb 09, 2026

Register & Login

Register User

Create a new customer account.

POST /api/v1/auth/register
Request Body:
{
  "name": "John Doe",
  "email": "john@example.com",
  "password": "password123",
  "password_confirmation": "password123",
  "phone": "+91 9876543210",
  "terms_accepted": true
}
Response: 201 Created
{
  "success": true,
  "message": "Registration successful. Welcome to Cartxis!",
  "data": {
    "user": {
      "id": 1,
      "name": "John Doe",
      "email": "john@example.com",
      "phone": "+91 9876543210",
      "avatar_url": null,
      "email_verified_at": null,
      "created_at": "2026-02-08T18:00:00+00:00"
    },
    "token": "1|abc123xyz...",
    "token_type": "Bearer",
    "expires_in": 86400
  }
}

Login

Authenticate and get access token.

POST /api/v1/auth/login
Request Body:
{
  "email": "john@example.com",
  "password": "password123",
  "device_name": "iPhone 15 Pro",
  "remember_me": true
}
Response: 200 OK
{
  "success": true,
  "message": "Login successful",
  "data": {
    "user": {
      "id": 1,
      "name": "John Doe",
      "email": "john@example.com",
      "phone": "+91 9876543210",
      "avatar_url": "https://domain.com/storage/avatars/user1.jpg"
    },
    "token": "1|abc123xyz...",
    "token_type": "Bearer",
    "expires_in": 86400
  }
}

Logout

Revoke current access token.

POST /api/v1/auth/logout
Headers: Authorization: Bearer {token} Response: 200 OK
{
  "success": true,
  "message": "Logged out successfully",
  "data": null
}

Refresh Token

Get a new access token.

POST /api/v1/auth/refresh
Headers: Authorization: Bearer {token} Response: 200 OK
{
  "success": true,
  "message": "Token refreshed successfully",
  "data": {
    "token": "2|newtoken...",
    "token_type": "Bearer",
    "expires_in": 86400
  }
}