{
  "_endpoint": "/api/dr/user/all",
  "_auth_required": false,
  "_total_records": 5461,
  "_collection": "RgntUser — IDRBT Domain Registry Users",
  "fields": {
    "id": {
      "type": "int64",
      "nullable": false,
      "description": "Primary key — auto-incremented user ID"
    },
    "userId": {
      "type": "string",
      "nullable": false,
      "description": "Login ID — typically the user's email address",
      "example": "jccbkcyadav@gmail.com"
    },
    "mobileNumber": {
      "type": "string",
      "nullable": false,
      "description": "Mobile phone number (India, +91)",
      "example": "8003699077"
    },
    "encryptedPassword": {
      "type": "string",
      "nullable": false,
      "description": "Bcrypt password hash ($2a$10$ rounds)",
      "sensitivity": "CRITICAL — password hash, offline cracking risk"
    },
    "previousPassword1": {
      "type": "string (bcrypt hash)",
      "nullable": true,
      "description": "First previous password hash (password history)",
      "sensitivity": "CRITICAL"
    },
    "previousPassword2": {
      "type": "string (bcrypt hash)",
      "nullable": true,
      "description": "Second previous password hash (password history)",
      "sensitivity": "CRITICAL"
    },
    "previousPassword": {
      "type": "string (bcrypt hash)",
      "nullable": true,
      "fill_rate_pct": 13,
      "description": "Legacy previous-password field",
      "sensitivity": "CRITICAL"
    },
    "userRoles": {
      "type": "array of objects",
      "nullable": false,
      "description": "Role assignments for this user",
      "roles_discovered": ["Super Admin", "Administrative Officer", "Billing Officer", "Technical Officer"]
    },
    "userName": {
      "type": "string",
      "nullable": false,
      "description": "Full name of the user / organisation contact person"
    },
    "otp": {
      "type": "string (bcrypt hash)",
      "nullable": true,
      "fill_rate_pct": 49,
      "description": "One-time password, stored as bcrypt hash",
      "sensitivity": "HIGH — OTP in hash form, still concerning"
    },
    "initialLoginStatus": {
      "type": "boolean",
      "nullable": false,
      "description": "Whether user has completed initial login"
    },
    "isOnboardingCompleted": {
      "type": "boolean",
      "nullable": false,
      "description": "Whether user completed onboarding flow"
    },
    "organisationId": {
      "type": "int64",
      "nullable": false,
      "description": "Foreign key to organisation details"
    },
    "twoFactorAuthentication": {
      "type": "boolean",
      "nullable": false,
      "description": "Whether 2FA is enabled for this user"
    },
    "profilePicture": {
      "type": "binary (stored as BLOB string?)",
      "nullable": true,
      "description": "User profile picture (binary)"
    },
    "loginAttemptCount": {
      "type": "int32",
      "nullable": false,
      "description": "Number of failed login attempts"
    },
    "loginAttemptedClientIP": {
      "type": "string",
      "nullable": true,
      "fill_rate_pct": 50,
      "description": "Client IP(s) from last login attempt (comma-separated)",
      "sensitivity": "MEDIUM — internal network topology may leak"
    },
    "loginAttemptedClientDeviceType": {
      "type": "string",
      "nullable": true,
      "fill_rate_pct": 50,
      "description": "User-Agent / device type string"
    },
    "loginAttemptedDateTime": {
      "type": "ISO8601 datetime",
      "nullable": true,
      "description": "Timestamp of last login attempt"
    },
    "lastSuccessfulLoginDatetime": {
      "type": "ISO8601 datetime",
      "nullable": true,
      "description": "Timestamp of last successful login"
    },
    "otpExpiryTime": {
      "type": "ISO8601 datetime",
      "nullable": true,
      "description": "Time when current OTP expires"
    },
    "onboardingStepIndex": {
      "type": "int32",
      "nullable": true,
      "fill_rate_pct": 26,
      "description": "Current step in onboarding wizard"
    },
    "designation": {
      "type": "string",
      "nullable": true,
      "fill_rate_pct": 53,
      "description": "User's job title / designation"
    },
    "isLoggedIn": {
      "type": "boolean",
      "nullable": true,
      "fill_rate_pct": 49,
      "description": "Current login session status"
    },
    "isDeleted": {
      "type": "boolean",
      "nullable": true,
      "fill_rate_pct": 6,
      "description": "Soft-delete flag"
    },
    "isUatCompleted": {
      "type": "boolean",
      "nullable": false,
      "description": "Whether UAT onboarding is complete"
    },
    "countryCode": {
      "type": "string",
      "nullable": true,
      "fill_rate_pct": 65,
      "description": "Country dial code",
      "example": "+91"
    },
    "active": {
      "type": "boolean",
      "nullable": false,
      "description": "Whether the user account is active"
    },
    "createdDateTime": {
      "type": "ISO8601 datetime",
      "nullable": true,
      "description": "Account creation timestamp"
    },
    "modifiedDateTime": {
      "type": "ISO8601 datetime",
      "nullable": true,
      "description": "Last modification timestamp"
    },
    "organisationDetailsDto": {
      "type": "nested object",
      "nullable": true,
      "description": "Embedded organisation details",
      "nested_fields": {
        "organisationDetailsId": "int64 (nullable)",
        "applicationId": "string (nullable)",
        "userMailId": "string (nullable)",
        "institutionName": "string (nullable)",
        "pincode": "int32",
        "city": "string (nullable)",
        "state": "string (nullable)",
        "address": "string (nullable)",
        "stdTelephone": "string (nullable)",
        "mobileNumber": "string (nullable)",
        "organisationEmail": "string (nullable)"
      }
    }
  }
}
