status: "pending" and is_active: false. A temporary PIN is set at creation time; the member then completes onboarding via POST /api/auth/onboarding/set-password to choose their own credentials and activate their account. No OTP verification is required from the admin side.
Request body
string
required
Full name of the new member. Must be between 2 and 100 characters.
string
required
Uganda phone number in the format
+256XXXXXXXXX. Must be unique — the request will fail if a user with this number already exists.string
default:"member"
Role to assign at creation. Accepted values are
"member", "admin", and "Administrator". Defaults to "member" if omitted.string
default:"1234"
Initial PIN for the member. Must be at least 4 digits if provided. This value is returned in the response
otp field so you can communicate it to the member out-of-band. If omitted, the account is created without a usable PIN (PENDING) until the member sets one during onboarding.string
Optional. Not used by the server during admin-initiated registration, but accepted for client compatibility.
Response
boolean
true when the member was created successfully.string
Human-readable confirmation, e.g.
"Member created successfully".string
The initial PIN that was set for the member (mirrors the
password field you sent). Share this with the member so they can complete onboarding. Returns an empty string if no password was provided.The new member’s account has
status: "pending" and is_active: false until they complete the onboarding flow. Direct the member to the Save App onboarding screen where they call POST /api/auth/onboarding/set-password with their phone number and a new password of their choice. Only after that step is their account fully activated.Example
Response

