Skip to navigation

Change User Status

View as Markdown

Downgrade a user from professional to non-professional.

Available to: The organization’s master account owner

Environments: Live

Rate Limit: No endpoint-specific limit

Change a user’s classification from professional to non-professional. This is the downgrade step when a Live subaccount is offboarded back to Demo. Only the master account owner can change the professional classification, and only in this direction. Setting a user back to professional isn’t permitted through this endpoint; it happens when the user’s trading permission is approved.

To downgrade, send the user’s userId, their current status, and professional set to false. Send the status the user already has rather than a fixed value: the endpoint writes status on every call it accepts, and also when it rejects an attempt to set a user back to professional, so a hardcoded value silently changes it.

The endpoint changes the classification only; it doesn’t expire the user’s market-data subscriptions. A professional user holds professional market-data subscriptions that no longer apply once they’re non-professional, so expire those separately by calling expireMarketDataSubscription.

You can’t downgrade a user who has an active Live subaccount.

A rejected change returns HTTP 200 with errorText set, not an error status. Check errorText to confirm the classification change succeeded.

For the full offboarding workflow, including the market-data and entitlement handoff, see Changing Users Between Demo and Live.

Common Failure Scenarios

  • The caller isn’t the master account owner. Only the master account owner can change the professional classification.
  • The request tries to set the user back to professional. Upgrades aren’t permitted through this endpoint.
  • The user has an active Live subaccount. Downgrade the user once the Live subaccount is no longer active.

Error Messages

A failed request returns one of these messages:

MessageResponseTrigger
"Cannot change professional status: only the master account owner may change this flag"200 (in errorText)The caller is an organization administrator but not the master account owner.
"Cannot change professional status: setting a trader to professional is not permitted through this flow"200 (in errorText)The request tries to change the user from non-professional to professional.
"Cannot change professional status: trader has an active live subaccount"200 (in errorText)The user has an active Live subaccount.

Related Resources

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Request

This endpoint expects an object.
userIdlongRequired
statusenumRequired
Active, Closed, Initiated, TemporaryLocked, UnconfirmedEmail
Allowed values:
professionalbooleanRequired

Response

UserStatusMessage
errorTextstringOptional<=8192 characters

Non-empty if the request failed

statusenumOptional
Active, Closed, Initiated, TemporaryLocked, UnconfirmedEmail
Allowed values: