Repository navigation
Account Management Protocol
NEX Protocols > Account Management (25)
Most methods cannot be used by normal users.
| Method ID | Method Name |
|---|---|
| 1 | CreateAccount |
| 2 | DeleteAccount |
| 3 | DisableAccount |
| 4 | ChangePassword |
| 5 | TestCapability |
| 6 | GetName |
| 7 | GetAccountData |
| 8 | GetPrivateData |
| 9 | GetPublicData |
| 10 | GetMultiplePublicData |
| 11 | UpdateAccountName |
| 12 | UpdateAccountEmail |
| 13 | UpdateCustomData |
| 14 | FindByNameRegex |
| 15 | UpdateAccountExpiryDate |
| 16 | UpdateAccountEffectiveDate |
| 17 | UpdateStatus |
| 18 | GetStatus |
| 19 | GetLastConnectionStats |
| 20 | ResetPassword |
| 21 | CreateAccountWithCustomData |
| 22 | RetrieveAccount |
| 23 | UpdateAccount |
| 24 | ChangePasswordByGuest |
| 25 | FindByNameLike |
| 26 | CustomCreateAccount |
| 27 | NintendoCreateAccount |
| 28 | LookupOrCreateAccount |
| 29 | DisconnectPrincipal |
| 30 | DisconnectAllPrincipals |
| Type | Name |
|---|---|
| String | strPrincipalName |
| String | strKey |
| Uint32 | uiGroups |
| String | strEmail |
| Type | Name |
|---|---|
| Result | %retval% |
| Type | Name |
|---|---|
| PID | idPrincipal |
This method does not return anything.
| Type | Name |
|---|---|
| PID | idPrincipal |
| DateTime | dtUntil |
| String | strMessage |
| Type | Name |
|---|---|
| Result | %retval% |
| Type | Name |
|---|---|
| String | strNewKey |
| Type | Name |
|---|---|
| Bool | %retval% |
| Type | Name |
|---|---|
| Uint32 | uiCapability |
| Type | Name |
|---|---|
| Bool | %retval% |
| Type | Name |
|---|---|
| PID | idPrincipal |
| Type | Name |
|---|---|
| String | strName |
This method does not take any parameters
| Type | Name |
|---|---|
| Uint32 | %retval% |
| AccountData | oAccountData |
This method does not take any parameters.
| Type | Name |
|---|---|
| Bool | %retval% |
| Data | oData |
| Type | Name |
|---|---|
| PID | idPrincipal |
| Type | Name |
|---|---|
| Bool | %retval% |
| Data | oData |
| Type | Name |
|---|---|
| List<PID> | lstPrincipals |
| Type | Name |
|---|---|
| Bool | %retval% |
| List<Data> | oData |
| Type | Name |
|---|---|
| String | strName |
| Type | Name |
|---|---|
| Result | %retval% |
| Type | Name |
|---|---|
| String | strName |
| Type | Name |
|---|---|
| Result | %retval% |
| Type | Name |
|---|---|
| Data | oPublicData |
| Data | oPrivateData |
| Type | Name |
|---|---|
| Result | %retval% |
| Type | Name |
|---|---|
| Uint32 | uiGroups |
| String | strRegex |
| ResultRange | resultRange |
| Type | Name |
|---|---|
| List<BasicAccountInfo> | plstAccounts |
| Type | Name |
|---|---|
| PID | idPrincipal |
| DateTime | dtExpiry |
| String | strExpiredMessage |
This method does not return anything.
| Type | Name |
|---|---|
| PID | idPrincipal |
| DateTime | dtEffectiveFrom |
| String | strNotEffectiveMessage |
This method does not return anything.
| Type | Name |
|---|---|
| String | strStatus |
This method does not return anything.
| Type | Name |
|---|---|
| PID | idPrincipal |
| Type | Name |
|---|---|
| String | strStatus |
| Type | Name |
|---|---|
| PID | idPrincipal |
| Type | Name |
|---|---|
| DateTime | dtLastSessionLogin |
| DateTime | dtLastSessionLogout |
| DateTime | dtCurrentSessionLogin |
This method does not take any parameters.
| Type | Name |
|---|---|
| Bool | %retval% |
| Type | Name |
|---|---|
| String | strPrincipalName |
| String | strKey |
| Uint32 | uiGroups |
| String | strEmail |
| Data | oPublicData |
| Data | oPrivateData |
This method does not return anything.
This method does not take any parameters.
| Type | Name |
|---|---|
| AccountData | oAccountData |
| Data | oPublicData |
| Data | oPrivateData |
| Type | Name |
|---|---|
| String | strKey |
| String | strEmail |
| Data | oPublicData |
| Data | oPrivateData |
This method does not return anything.
| Type | Name |
|---|---|
| String | strPrincipalName |
| String | strEmail |
| String | strKey |
This method does not return anything.
| Type | Name |
|---|---|
| Uint32 | uiGroups |
| String | strLike |
| ResultRange | resultRange |
| Type | Name |
|---|---|
| List<BasicAccountInfo> | plstAccounts |
| Type | Name |
|---|---|
| String | strPrincipalName |
| String | strKey |
| Uint32 | uiGroups |
| String | strEmail |
| Data | oAuthData |
| Type | Name |
|---|---|
| PID | pid |
This method is used by the 3DS and Wii U to create a user on a NEX server. It is only used by firmware, never by games. The method is invoked on the friends server only, which is shared between the 3DS and Wii U.
Nintendo customized the account procedure a bit compared to the original Quazal Rendez-Vous library. When the system calls NintendoCreateAccount, the strKey field is generated from the password dummy. The real password is provided elsewhere (the exact procedure still needs to be reverse engineered).
| Type | Name |
|---|---|
| String | strPrincipalName |
| String | strKey |
| Uint32 | uiGroups |
| String | strEmail |
| Data | oAuthData |
oAuthData is either NintendoCreateAccountData (Wii U) or AccountExtraInfo (3DS).
| Type | Name |
|---|---|
| PID | pid |
| String | pidHMAC |
| Type | Name |
|---|---|
| String | strPrincipalName |
| String | strKey |
| Uint32 | uiGroups |
| String | strEmail |
| Data | oAuthData |
| Type | Name |
|---|---|
| PID | pid |
| Type | Name |
|---|---|
| PID | idPrincipal |
| Type | Name |
|---|---|
| Bool | %retval% |
This method does not take any parameters.
| Type | Name |
|---|---|
| Bool | %retval% |
Some functions take a key string. This is a hex string derived from the password using the following method:
| Platform | Method |
|---|---|
| 3DS / Wii U | MD5-hash the password 65000 times |
| Switch | MD5-hash the password once |
BasicAccountInfo (Structure)
| Type | Name |
|---|---|
| PID | m_pidOwner |
| String | m_strName |
AccountData (Structure)
| Type | Name |
|---|---|
| PID | m_pid |
| String | m_strName |
| Uint32 | m_uiGroups |
| String | m_strEmail |
| DateTime | m_dtCreationDate |
| DateTime | m_dtEffectiveDate |
| String | m_strNotEffectiveMsg |
| DateTime | m_dtExpiryDate |
| String | m_strExpiredMsg |
AccountExtraInfo (Structure)
| Type | Description |
|---|---|
| Uint64 | Unknown |
| Uint32 | Unknown |
| String | NEX token |
NintendoCreateAccountData (Structure)
| Type | Description |
|---|---|
| NNAInfo | NNA info |
| String | NEX token |
| DateTime | Birthday |
| Uint64 | Unknown |
- Home
-
NEX
- PRUDP Protocol
- RMC Protocol
-
NEX Services
- Common
- Nintendo
- Kerberos Authentication
- Hpp Server
- NPLN
- Pia
- Switch Servers
- Other Pages