# Create a system user (deprecated)

Deprecated. Accepts and returns credential-bearing SystemUser fields. Use Create a user (POST /api/v1/users), which takes no password and returns a one-time temporary password instead.

Endpoint: POST /payless4messaging-service/WhatsApp/SystemUsers
Version: 3.0.0
Security: apikeyAuth

## Request fields (application/json):

  - `email` (string)
    Example: "agent@example.com"

  - `password` (string)
    Example: "********"

  - `liveChatRole` (string)
    Enum: "SUPERVISOR", "AGENT"

  - `client` (object)

  - `client.id` (string)
    Example: "dbdb8809-6fd0-4cd2-8574-502f0f61a69d"

  - `client.clientRef` (string)
    Example: "Growthpoint"

  - `client.accountType` (string)
    Example: "Postpaid"

  - `client.countryCode` (string)
    Example: "ZA"

  - `client.countryTimezone` (string)
    Example: "Africa/Johannesburg"

  - `client.pricingModel` (string)
    Example: "PMP"

  - `client.clientPlatformCharge` (number,null)
    Example: 0.1

  - `client.clientNotificationCharge` (number)
    Example: 0.35

  - `client.clientSession24HourCharge` (number)
    Example: 0.35

  - `client.clientConversationCharge` (number)
    Example: 0.35

  - `client.userInitiatedConversationCharge` (number,null)
    Example: 0.2

  - `client.businessInitiatedConversationCharge` (number)
    Example: 1.25

  - `client.clientWhatsAppBalance` (number)
    Example: 1000

  - `client.clientSMSBalance` (number)
    Example: 10

  - `client.primaryEmailAddress` (string,null)
    Example: "admin@example.com"

  - `client.secondaryEmailAddress` (string,null)
    Example: "backup@example.com"

  - `client.clientEmailAddress` (string,null)
    Example: "client@example.com"

  - `client.upperNotificationLimit` (number,null)
    Example: 100

  - `client.lowerNotificationLimit` (number,null)
    Example: 10

  - `client.upperNotificationLimitMailSent` (boolean)

  - `client.lowerNotificationLimitMailSent` (boolean)

  - `client.zeroBalanceNotificationMailSent` (boolean)

  - `client.lastUpperNotificationMailSentTime` (string,null)
    Example: "2026-01-15T10:30:00+02:00"

  - `client.lastLowerNotificationMailSentTime` (string,null)
    Example: "2026-01-20T14:00:00+02:00"

  - `client.lastZeroBalanceNotificationMailSentTime` (string,null)

  - `client.smsMode` (string)
    Example: "fallback"

  - `client.smsFallback` (boolean)
    Example: true

  - `client.smsUserId` (string)
    Example: "support@ecommunicate.co.za"

  - `client.smsPassword` (string)
    Example: "********"

  - `client.smsClientRef` (string)
    Example: "ecomtest1"

  - `client.reseller` (boolean)

  - `client.parentClient` (object,null)

  - `client.license` (object,null)

  - `client.useParentNumber` (boolean)

  - `client.useParentCredit` (boolean)

  - `client.userInitiatedConversationBalance` (number)
    Example: 100

  - `client.businessInitiatedConversationBalance` (number)
    Example: 973

  - `client.popiaComplianceEnabled` (boolean)
    Example: true

  - `client.eligible1000Free` (boolean)
    Example: true

  - `client.splitConversation` (boolean)
    Example: true

  - `client.monthlyFundAllocation` (boolean)
    Example: true

  - `client.monthlyBusinessInitiatedBalanceAllocation` (number)
    Example: 1000

  - `client.monthlyUserInitiatedBalanceAllocation` (number)
    Example: 100

  - `client.useApi` (boolean)
    Example: true

  - `client.headerKeyPairsJson` (string)
    JSON array of key-value header pairs.
    Example: "[{\"key\": \"Authorization\", \"value\": \"your-api-key\"}]"

  - `firstName` (string)
    Example: "Jane"

  - `lastName` (string)
    Example: "Doe"

  - `avatar` (string,null)
    Example: "https://example.com/avatars/jane.jpg"

  - `assignmentMessage` (string,null)
    Custom message sent to the customer when a chat is assigned to this agent. If null, defaults to 'Assigned to ``'.
    Example: "Hi, I'm Jane and I'll be assisting you today."

## Response 200 fields (application/json):

  - `id` (string)
    Example: "e1f2a3b4-c5d6-7890-e1f2-a3b4c5d67890"

  - `email` (string)
    Example: "agent@example.com"

  - `password` (string)
    Example: "********"

  - `tempPassword` (string,null)
    Example: "********"

  - `role` (string)
    Enum: "CLIENT"

  - `liveChatRole` (string)
    Enum: same as `liveChatRole` (2 values)

  - `primaryEmailAddress` (string,null)
    Example: "agent@example.com"

  - `mobileNumber` (string,null)
    Example: "+27821234567"

  - `sentLowerCreditLimitMail` (boolean)

  - `sentZeroCreditMail` (boolean)

  - `apiKey` (string)
    Example: "64a1b2c3d4e5f67890abcdef"

  - `disabled` (boolean)

  - `deleted` (boolean)

  - `emailVerificationKey` (string,null)

  - `passwordResetKey` (string,null)

  - `inactivityNodeId` (string,null)
    Example: "node-inactivity-001"

  - `publicHolidayInactivityNodeId` (string,null)
    Example: "node-holiday-001"

  - `officeClosedInactivityNodeId` (string,null)
    Example: "node-closed-001"

  - `autoResponseNodeId` (string,null)
    Example: "node-auto-001"

  - `client` (object)

  - `clientRef` (string,null)

  - `ticketCount` (integer,null)
    Example: 5

  - `lastSeen` (string,null)

  - `resetPasswordEmailSent` (boolean)

  - `emailVerified` (boolean)

  - `firstName` (string)
    Example: "Jane"

  - `lastName` (string)
    Example: "Doe"

  - `agentChatLimit` (integer)
    Max concurrent chats.
    Example: 5

  - `availabilityStatus` (boolean)
    Example: true

  - `initialPassword` (boolean)

  - `tempAccount` (boolean)

  - `loginToken` (string)
    Example: "1d368c30-c9f8-4523-b8c2-3824ba72ff5c"

  - `validToken` (boolean)

  - `avatar` (string)
    Example: "https://example.com/avatars/jane.jpg"

  - `shouldGetNotifications` (boolean)
    Example: true

  - `applicationKey` (string)
    Example: "a3b4c5d6-e7f8-9012-a3b4-c5d6e7f89012"

  - `userId` (string)
    Example: "21c28d3e-bc5c-4bc9-99be-fe283df71653"

  - `applicationClientId` (string)
    Example: "1d368c30-c9f8-4523-b8c2-3824ba72ff5c"

  - `allowedSharedInbox` (boolean)
    Example: true

  - `allowedUnassignedInbox` (boolean)
    Example: true

  - `assignmentMessage` (string)
    Custom message sent to the customer when a chat is assigned to this agent. If null, defaults to 'Assigned to ``'.
    Example: "Hi, I'm Jane and I'll be assisting you today."

## Response 400 fields (application/json):

  - `status` (string)
    Example: "ERROR"

  - `message` (string)
    Example: "Invalid Parameters"

  - `requestId` (string)
    Example: "c3a1f8e2-4b6d-11ee-be56-0242ac120002"

  - `timestamp` (string)
    Example: "2026-01-15T10:30:00Z"

## Response 401 fields (application/json):

  - `status` (string)
    Example: "ERROR"

  - `message` (string)
    Example: "Unauthorized user"

  - `requestId` (string)
    Example: "c3a1f8e2-4b6d-11ee-be56-0242ac120002"

  - `timestamp` (string)
    Example: "2026-01-15T10:30:00Z"


