Changes

Jump to navigation Jump to search
no edit summary
Line 1: Line 1:  
= acc:su =
 
= acc:su =
 
This is "nn::account::IAccountServiceForAdministrator".
 
This is "nn::account::IAccountServiceForAdministrator".
 +
 +
This was moved to [[NS_Services|ns]] with [13.0.0+].
    
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
Line 49: Line 51:  
|-
 
|-
 
| 113 || [5.0.0+] GetSaveDataThumbnailExistence ||
 
| 113 || [5.0.0+] GetSaveDataThumbnailExistence ||
 +
|-
 +
| 120 || [10.0.0+] ListOpenUsersInApplication ||
 
|-
 
|-
 
| 130 || [6.0.0+] ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]].
 
| 130 || [6.0.0+] ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]].
Line 54: Line 58:  
| 140 || [6.0.0+] ListQualifiedUsers ||  
 
| 140 || [6.0.0+] ListQualifiedUsers ||  
 
|-
 
|-
| 190 || GetUserLastOpenedApplication ||
+
| 150 || [10.0.0-10.2.0] AuthenticateApplicationAsync ||
 +
|-
 +
| 151 || [12.0.0+] EnsureSignedDeviceIdentifierCacheForNintendoAccountAsync ||
 +
|-
 +
| 152 || [12.0.0+] LoadSignedDeviceIdentifierCacheForNintendoAccount ||
 +
|-
 +
| 190 || [1.0.0-9.2.0] GetUserLastOpenedApplication ||
 
|-
 
|-
 
| 191 || [7.0.0+] UpdateNotificationReceiverInfo ([5.0.0-5.1.0] ActivateOpenContextHolder) ||
 
| 191 || [7.0.0+] UpdateNotificationReceiverInfo ([5.0.0-5.1.0] ActivateOpenContextHolder) ||
Line 77: Line 87:  
|-
 
|-
 
| 212 || [8.0.0+] ResumeProcedureToRegisterUserWithNintendoAccount || Takes a total of 0x14-bytes of input and a handle, returns an [[#IOAuthProcedureForUserRegistration]].
 
| 212 || [8.0.0+] ResumeProcedureToRegisterUserWithNintendoAccount || Takes a total of 0x14-bytes of input and a handle, returns an [[#IOAuthProcedureForUserRegistration]].
 +
|-
 +
| 213 || [17.0.0+] CreateProcedureToCreateUserWithNintendoAccount ||
 +
|-
 +
| 214 || [17.0.0+] ResumeProcedureToCreateUserWithNintendoAccount ||
 +
|-
 +
| 215 || [17.0.0+] ResumeProcedureToCreateUserWithNintendoAccountAfterApplyResponse ||
 
|-
 
|-
 
| 230 || AuthenticateServiceAsync || Returns an [[#IAsyncContext]].
 
| 230 || AuthenticateServiceAsync || Returns an [[#IAsyncContext]].
Line 87: Line 103:  
|-
 
|-
 
| 299 || SuspendBackgroundDaemon || Returns an [[#ISessionObject]].
 
| 299 || SuspendBackgroundDaemon || Returns an [[#ISessionObject]].
 +
|-
 +
| 400 || [18.0.0+] SetPinCode ||
 +
|-
 +
| 401 || [18.0.0+] GetPinCodeLength ||
 +
|-
 +
| 402 || [18.0.0+] GetPinCode ||
 +
|-
 +
| 410 || [18.0.0+] GetPinCodeErrorCount ||
 +
|-
 +
| 411 || [18.0.0+] ResetPinCodeErrorCount ||
 +
|-
 +
| 412 || [18.0.0+] IncrementPinCodeErrorCount ||
 +
|-
 +
| 900 || [13.0.0+] SetUserUnqualifiedForDebug ||
 +
|-
 +
| 901 || [13.0.0+] UnsetUserUnqualifiedForDebug ||
 +
|-
 +
| 902 || [13.0.0+] ListUsersUnqualifiedForDebug ||
 +
|-
 +
| 910 || [16.0.0+] RefreshFirmwareSettingsForDebug ||
 
|-
 
|-
 
| 997 || [3.0.0+] DebugInvalidateTokenCacheForUser ||
 
| 997 || [3.0.0+] DebugInvalidateTokenCacheForUser ||
Line 94: Line 130:  
| 999 || DebugSetUserStateOpen ||
 
| 999 || DebugSetUserStateOpen ||
 
|}
 
|}
 +
 +
[10.0.0+] DebugSetUserStateClose/DebugSetUserStateOpen now takes an additional 8-bytes of input.
    
== IsUserRegistrationRequestPermitted ==
 
== IsUserRegistrationRequestPermitted ==
Line 99: Line 137:     
== TrySelectUserWithoutInteraction ==
 
== TrySelectUserWithoutInteraction ==
Takes an input Uid and an input u8 bool isNetworkServiceAccountRequired, returns no output.
+
Takes an input u8 bool isNetworkServiceAccountRequired, returns an output Uid.
    
== IManagerForSystemService ==
 
== IManagerForSystemService ==
Line 151: Line 189:  
|-
 
|-
 
| 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]].
 
| 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]].
 +
|-
 +
| 160 || [15.0.0+] RequiresUpdateNetworkServiceAccountIdTokenCache ||
 +
|-
 +
| 161 || [16.0.0+] RequireReauthenticationOfNetworkServiceAccount ||
 +
|-
 +
| 170 || [17.0.0+] CreateDeviceHistoryRequest ||
 +
|-
 +
| 180 || [18.0.0+] ||
 
|}
 
|}
   Line 210: Line 256:  
| 111 || [4.0.0+] InvalidateServiceEntryRequirementCache ||
 
| 111 || [4.0.0+] InvalidateServiceEntryRequirementCache ||
 
|-
 
|-
| [4.0.0-6.2.0] 112 || InvalidateTokenCache ||
+
| 112 || [4.0.0-6.2.0] InvalidateTokenCache ||
 
|-
 
|-
 
| 113 || [6.1.0+] GetServiceEntryRequirementCacheForOnlinePlay || Takes a total of 0x8-bytes of input, returns a total of 0x4-bytes of output.
 
| 113 || [6.1.0+] GetServiceEntryRequirementCacheForOnlinePlay || Takes a total of 0x8-bytes of input, returns a total of 0x4-bytes of output.
Line 235: Line 281:  
|-
 
|-
 
| 142 || [5.0.0+] RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed ||
 
| 142 || [5.0.0+] RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed ||
 +
|-
 +
| 143 || [15.0.0+] GetNetworkServiceLicenseCacheEx ||
 
|-
 
|-
 
| 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]].
 
| 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]].
 +
|-
 +
| 160 || [15.0.0+] RequiresUpdateNetworkServiceAccountIdTokenCache ||
 +
|-
 +
| 161 || [16.0.0+] RequireReauthenticationOfNetworkServiceAccount ||
 +
|-
 +
| 180 || [18.0.0+] GetRequestForNintendoAccountReauthentication ||
 
|-
 
|-
 
| 200 || IsRegistered ||
 
| 200 || IsRegistered ||
Line 349: Line 403:  
|-
 
|-
 
| 103 || GetProfileImage ||
 
| 103 || GetProfileImage ||
 +
|-
 +
| 104 || [18.0.0+] ||
 
|}
 
|}
   Line 469: Line 525:  
= acc:u0 =
 
= acc:u0 =
 
This is "nn::account::IAccountServiceForApplication".
 
This is "nn::account::IAccountServiceForApplication".
 +
 +
This was moved to [[NS_Services|ns]] with [13.0.0+].
    
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
Line 597: Line 655:  
= acc:u1 =
 
= acc:u1 =
 
This is "nn::account::IAccountServiceForSystemService".
 
This is "nn::account::IAccountServiceForSystemService".
 +
 +
This was moved to [[NS_Services|ns]] with [13.0.0+].
    
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
Line 645: Line 705:  
|-
 
|-
 
| 113 || [5.0.0+] GetSaveDataThumbnailExistence ||
 
| 113 || [5.0.0+] GetSaveDataThumbnailExistence ||
 +
|-
 +
| 120 || [10.0.0+] ListOpenUsersInApplication ||
 
|-
 
|-
 
| 130 || [6.0.0+] ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]].
 
| 130 || [6.0.0+] ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]].
Line 650: Line 712:  
| 140 || [6.0.0+] ListQualifiedUsers ||  
 
| 140 || [6.0.0+] ListQualifiedUsers ||  
 
|-
 
|-
| 190 || GetUserLastOpenedApplication ||
+
| 150 || [10.0.0-10.2.0] AuthenticateApplicationAsync ||
 +
|-
 +
| 151 || [12.0.0+] EnsureSignedDeviceIdentifierCacheForNintendoAccountAsync ||
 +
|-
 +
| 152 || [12.0.0+] LoadSignedDeviceIdentifierCacheForNintendoAccount ||
 +
|-
 +
| 190 || [1.0.0-9.2.0] GetUserLastOpenedApplication ||
 
|-
 
|-
 
| 191 || [7.0.0+] UpdateNotificationReceiverInfo ([5.0.0-5.1.0] ActivateOpenContextHolder) ||
 
| 191 || [7.0.0+] UpdateNotificationReceiverInfo ([5.0.0-5.1.0] ActivateOpenContextHolder) ||
 +
|-
 +
| 401 || [18.0.0+] GetPinCodeLength ||
 +
|-
 +
| 402 || [18.0.0+] GetPinCode ||
 
|-
 
|-
 
| 997 || [3.0.0+] DebugInvalidateTokenCacheForUser ||
 
| 997 || [3.0.0+] DebugInvalidateTokenCacheForUser ||
Line 660: Line 732:  
| 999 || DebugSetUserStateOpen ||
 
| 999 || DebugSetUserStateOpen ||
 
|}
 
|}
 +
 +
[10.0.0+] DebugSetUserStateClose/DebugSetUserStateOpen now takes an additional 8-bytes of input.
    
== IOAuthProcedureForUserRegistration ==
 
== IOAuthProcedureForUserRegistration ==
Line 687: Line 761:  
|-
 
|-
 
| 103 || GetProfileImage ||  
 
| 103 || GetProfileImage ||  
 +
|-
 +
| 104 || [18.0.0+] ||
 
|-
 
|-
 
| 110 || RegisterUserAsync || No input, returns an [[#IAsyncContext]].
 
| 110 || RegisterUserAsync || No input, returns an [[#IAsyncContext]].
 
|-
 
|-
 
| 111 || GetUid ||  
 
| 111 || GetUid ||  
 +
|-
 +
| 200 || [17.0.0+] ApplyResponseForUserCreationAsync ||
 +
|-
 +
| 205 || [17.0.0+] SuspendAfterApplyResponse ||
 +
|-
 +
| 210 || [17.0.0+] IsProfileAvailable ||
 +
|-
 +
| 220 || [17.0.0+] RegisterUserAsyncWithoutProfile ||
 +
|-
 +
| 221 || [17.0.0+] RegisterUserWithProfileAsync ||
 +
|-
 +
| 230 || [18.0.0+] ||
 
|}
 
|}
   Line 723: Line 811:  
|-
 
|-
 
| 2 || [6.0.0+] InvalidateAuthenticationTokenCache
 
| 2 || [6.0.0+] InvalidateAuthenticationTokenCache
 +
|-
 +
| 3 || [16.0.0+] IsDeviceAuthenticationTokenCacheAvailable
 
|-
 
|-
 
| 10 || [6.0.0+] EnsureEdgeTokenCacheAsync
 
| 10 || [6.0.0+] EnsureEdgeTokenCacheAsync
Line 729: Line 819:  
|-
 
|-
 
| 12 || [6.0.0+] InvalidateEdgeTokenCache
 
| 12 || [6.0.0+] InvalidateEdgeTokenCache
 +
|-
 +
| 13 || [16.0.0+] IsEdgeTokenCacheAvailable
 +
|-
 +
| 20 || [11.0.0+] EnsureApplicationAuthenticationCacheAsync
 +
|-
 +
| 21 || [11.0.0+] LoadApplicationAuthenticationTokenCache
 +
|-
 +
| 22 || [11.0.0+] LoadApplicationNetworkServiceClientConfigCache
 +
|-
 +
| 23 || [11.0.0+] IsApplicationAuthenticationCacheAvailable
 +
|-
 +
| 24 || [11.0.0+] InvalidateApplicationAuthenticationCache
 +
|-
 +
| 1000 || [15.0.0+] GetInactiveElicenseUsedEvent
 +
|-
 +
| 9000 || [15.0.0+] ImportVirtualClientCertificate
 +
|-
 +
| 9010 || [15.0.0+] DeleteVirtualClientCertificate
 
|}
 
|}
 +
 +
[10.0.0+] EnsureEdgeTokenCacheAsync now takes an additional 8-bytes of input.
    
== IAsyncResult ==
 
== IAsyncResult ==
Line 747: Line 857:  
|-
 
|-
 
| 3 || GetSystemEvent
 
| 3 || GetSystemEvent
 +
|}
 +
 +
= acc:e =
 +
This is "nn::account::IAccountEntityServiceForAccountPolicy".
 +
 +
This was added with [13.0.0+].
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || GetUserCount ||
 +
|-
 +
| 1 || GetUserExistence ||
 +
|-
 +
| 2 || ListAllUsers ||
 +
|-
 +
| 3 || ListOpenUsers ||
 +
|-
 +
| 4 || GetLastOpenedUser ||
 +
|-
 +
| 5 || GetProfile || Returns an [[#IProfile]].
 +
|-
 +
| 6 || GetProfileDigest ||
 +
|-
 +
| 50 || [[#IsUserRegistrationRequestPermitted]] ||
 +
|-
 +
| 51 || [[#TrySelectUserWithoutInteraction]] ||
 +
|-
 +
| 99 || DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]].
 +
|-
 +
| 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 101 || GetUserStateChangeNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 102 || GetBaasAccountManagerForSystemService || Returns an [[#IManagerForSystemService]].
 +
|-
 +
| 103 || GetBaasUserAvailabilityChangeNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 104 || GetProfileUpdateNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 105 || CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 106 || GetProfileSyncNotifier ||
 +
|-
 +
| 110 || StoreSaveDataThumbnail ||
 +
|-
 +
| 111 || ClearSaveDataThumbnail ||
 +
|-
 +
| 112 || LoadSaveDataThumbnail ||
 +
|-
 +
| 113 || GetSaveDataThumbnailExistence ||
 +
|-
 +
| 120 || ListOpenUsersInApplication ||
 +
|-
 +
| 130 || ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]].
 +
|-
 +
| 140 || ListQualifiedUsers ||
 +
|-
 +
| 151 || EnsureSignedDeviceIdentifierCacheForNintendoAccountAsync ||
 +
|-
 +
| 152 || LoadSignedDeviceIdentifierCacheForNintendoAccount ||
 +
|-
 +
| 170 || GetNasOp2MembershipStateChangeNotifier ||
 +
|-
 +
| 191 || UpdateNotificationReceiverInfo ||
 +
|-
 +
| 200 || BeginUserRegistration ||
 +
|-
 +
| 201 || CompleteUserRegistration ||
 +
|-
 +
| 202 || CancelUserRegistration ||
 +
|-
 +
| 203 || DeleteUser ||
 +
|-
 +
| 204 || SetUserPosition ||
 +
|-
 +
| 205 || GetProfileEditor || Takes an input userID and returns an [[#IProfileEditor]].
 +
|-
 +
| 206 || CompleteUserRegistrationForcibly ||
 +
|-
 +
| 210 || CreateFloatingRegistrationRequest || Returns an [[#IFloatingRegistrationRequest]].
 +
|-
 +
| 211 || CreateProcedureToRegisterUserWithNintendoAccount || Takes a total of 0x4-bytes of input and a handle, returns an [[#IOAuthProcedureForUserRegistration]].
 +
|-
 +
| 212 || ResumeProcedureToRegisterUserWithNintendoAccount || Takes a total of 0x14-bytes of input and a handle, returns an [[#IOAuthProcedureForUserRegistration]].
 +
|-
 +
| 213 || [17.0.0+] CreateProcedureToCreateUserWithNintendoAccount ||
 +
|-
 +
| 214 || [17.0.0+] ResumeProcedureToCreateUserWithNintendoAccount ||
 +
|-
 +
| 215 || [17.0.0+] ResumeProcedureToCreateUserWithNintendoAccountAfterApplyResponse ||
 +
|-
 +
| 230 || AuthenticateServiceAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 250 || GetBaasAccountAdministrator || Returns an [[#IAdministrator]].
 +
|-
 +
| 290 || ProxyProcedureForGuestLoginWithNintendoAccount || Returns an [[#IOAuthProcedureForExternalNsa]].
 +
|-
 +
| 291 || ProxyProcedureForFloatingRegistrationWithNintendoAccount || Returns an [[#IOAuthProcedureForExternalNsa]].
 +
|-
 +
| 299 || SuspendBackgroundDaemon || Returns an [[#ISessionObject]].
 +
|-
 +
| 400 || [18.0.0+] SetPinCode ||
 +
|-
 +
| 401 || [18.0.0+] GetPinCodeLength ||
 +
|-
 +
| 402 || [18.0.0+] GetPinCode ||
 +
|-
 +
| 410 || [18.0.0+] GetPinCodeErrorCount ||
 +
|-
 +
| 411 || [18.0.0+] ResetPinCodeErrorCount ||
 +
|-
 +
| 412 || [18.0.0+] IncrementPinCodeErrorCount ||
 +
|-
 +
| 900 || SetUserUnqualifiedForDebug ||
 +
|-
 +
| 901 || UnsetUserUnqualifiedForDebug ||
 +
|-
 +
| 902 || ListUsersUnqualifiedForDebug ||
 +
|-
 +
| 910 || [16.0.0+] RefreshFirmwareSettingsForDebug ||
 +
|-
 +
| 997 || DebugInvalidateTokenCacheForUser ||
 +
|-
 +
| 998 || DebugSetUserStateClose ||
 +
|-
 +
| 999 || DebugSetUserStateOpen ||
 +
|-
 +
| 1000 || CreateIAccountEntityServiceForApplication || Returns an [[#IAccountEntityServiceForApplication]].
 +
|-
 +
| 1100 || CreateIUserStateManager || Returns an [[#IUserStateManager]].
 +
|-
 +
| 10050 || IsUserRegistrationRequestPermittedForAccountPolicy ||
 +
|-
 +
| 10105 || CheckNetworkServiceAvailabilityAsyncForAccountPolicy ||
 +
|}
 +
 +
== IProfile ==
 +
This is "nn::account::profile::IProfile".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 0 || [[#Get]]
 +
|-
 +
| 1 || [[#GetBase]]
 +
|-
 +
| 10 || [[#GetImageSize]]
 +
|-
 +
| 11 || [[#LoadImage]]
 +
|-
 +
| 20 || [18.0.0+]
 +
|-
 +
| 21 || [18.0.0+]
 +
|-
 +
| 30 || [18.0.0+]
 +
|}
 +
 +
=== Get ===
 +
Takes an output type-0x1A buffer for [[#UserData]], returns an output [[#ProfileBase]].
 +
 +
=== GetBase ===
 +
No input, returns an output [[#ProfileBase]].
 +
 +
=== GetImageSize ===
 +
No input, returns an output u32 for the size of the image buffer.
 +
 +
=== LoadImage ===
 +
Takes an output type-0x6 buffer, returns the same output u32 as [[#GetImageSize]].
 +
 +
The output buffer contains the JPEG profile image icon. This is valid for both Miis and character icons.
 +
 +
== IProfileEditor ==
 +
This is "nn::account::profile::IProfileEditor".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 0 || [[#Get]]
 +
|-
 +
| 1 || [[#GetBase]]
 +
|-
 +
| 10 || [[#GetImageSize]]
 +
|-
 +
| 11 || [[#LoadImage]]
 +
|-
 +
| 20 || [18.0.0+]
 +
|-
 +
| 21 || [18.0.0+]
 +
|-
 +
| 30 || [18.0.0+]
 +
|-
 +
| 100 || [[#Store]]
 +
|-
 +
| 101 || [[#StoreWithImage]]
 +
|-
 +
| 110 || [18.0.0+]
 +
|}
 +
 +
=== Store ===
 +
Takes a [[#ProfileBase]] and an input type-0x19 buffer for [[#UserData]].
 +
 +
=== StoreWithImage ===
 +
Takes a [[#ProfileBase]], an input type-0x19 buffer for [[#UserData]], and an input type-0x5 buffer.
 +
 +
== IAsyncContext ==
 +
This is "nn::account::detail::IAsyncContext".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 0 || GetSystemEvent
 +
|-
 +
| 1 || Cancel
 +
|-
 +
| 2 || HasDone
 +
|-
 +
| 3 || GetResult
 +
|}
 +
 +
== ISessionObject ==
 +
This is "nn::account::detail::ISessionObject".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 999 || Dummy
 +
|}
 +
 +
== INotifier ==
 +
This is "nn::account::detail::INotifier".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 0 || GetSystemEvent
 +
|}
 +
 +
== IManagerForSystemService ==
 +
This is "nn::account::baas::IManagerForSystemService".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || CheckAvailability ||
 +
|-
 +
| 1 || GetAccountId ||
 +
|-
 +
| 2 || EnsureIdTokenCacheAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 3 || LoadIdTokenCache ||
 +
|-
 +
| 100 || SetSystemProgramIdentification ||
 +
|-
 +
| 101 || RefreshNotificationTokenAsync ||
 +
|-
 +
| 110 || GetServiceEntryRequirementCacheForLogin ||
 +
|-
 +
| 111 || InvalidateServiceEntryRequirementCache ||
 +
|-
 +
| 113 || GetServiceEntryRequirementCacheForOnlinePlay || Takes a total of 0x8-bytes of input, returns a total of 0x4-bytes of output.
 +
|-
 +
| 120 || GetNintendoAccountId ||
 +
|-
 +
| 121 || CalculateNintendoAccountAuthenticationFingerprint ||
 +
|-
 +
| 130 || GetNintendoAccountUserResourceCache ||
 +
|-
 +
| 131 || RefreshNintendoAccountUserResourceCacheAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 132 || RefreshNintendoAccountUserResourceCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]].
 +
|-
 +
| 133 || GetNintendoAccountVerificationUrlCache ||
 +
|-
 +
| 134 || RefreshNintendoAccountVerificationUrlCacheAsync ||
 +
|-
 +
| 135 || RefreshNintendoAccountVerificationUrlCacheAsyncIfSecondsElapsed ||
 +
|-
 +
| 140 || GetNetworkServiceLicenseCache ||
 +
|-
 +
| 141 || RefreshNetworkServiceLicenseCacheAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 142 || RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]].
 +
|-
 +
| 143 || [15.0.0+] GetNetworkServiceLicenseCacheEx ||
 +
|-
 +
| 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]].
 +
|-
 +
| 160 || [15.0.0+] RequiresUpdateNetworkServiceAccountIdTokenCache ||
 +
|-
 +
| 161 || [16.0.0+] RequireReauthenticationOfNetworkServiceAccount ||
 +
|-
 +
| 180 || [18.0.0+] GetRequestForNintendoAccountReauthentication ||
 +
|}
 +
 +
== IFloatingRegistrationRequest ==
 +
This is "nn::account::baas::IFloatingRegistrationRequest".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || GetSessionId ||
 +
|-
 +
| 12 || GetAccountId ||
 +
|-
 +
| 13 || GetLinkedNintendoAccountId ||
 +
|-
 +
| 14 || GetNickname ||
 +
|-
 +
| 15 || GetProfileImage ||
 +
|-
 +
| 16 || [18.0.0+] ||
 +
|-
 +
| 21 || LoadIdTokenCache ||
 +
|-
 +
| 100 || RegisterUser ||
 +
|-
 +
| 101 || RegisterUserWithUid ||
 +
|-
 +
| 102 || RegisterNetworkServiceAccountAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 103 || RegisterNetworkServiceAccountWithUidAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 110 || SetSystemProgramIdentification ||
 +
|-
 +
| 111 || EnsureIdTokenCacheAsync || Returns an [[#IAsyncContext]].
 +
|}
 +
 +
== IAdministrator ==
 +
This is "nn::account::baas::IAdministrator".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || CheckAvailability ||
 +
|-
 +
| 1 || GetAccountId ||
 +
|-
 +
| 2 || EnsureIdTokenCacheAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 3 || LoadIdTokenCache ||
 +
|-
 +
| 100 || SetSystemProgramIdentification ||
 +
|-
 +
| 101 || RefreshNotificationTokenAsync ||
 +
|-
 +
| 110 || GetServiceEntryRequirementCacheForLogin ||
 +
|-
 +
| 111 || InvalidateServiceEntryRequirementCache ||
 +
|-
 +
| 113 || GetServiceEntryRequirementCacheForOnlinePlay || Takes a total of 0x8-bytes of input, returns a total of 0x4-bytes of output.
 +
|-
 +
| 120 || GetNintendoAccountId ||
 +
|-
 +
| 121 || CalculateNintendoAccountAuthenticationFingerprint ||
 +
|-
 +
| 130 || GetNintendoAccountUserResourceCache ||
 +
|-
 +
| 131 || RefreshNintendoAccountUserResourceCacheAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 132 || RefreshNintendoAccountUserResourceCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]].
 +
|-
 +
| 133 || GetNintendoAccountVerificationUrlCache ||
 +
|-
 +
| 134 || RefreshNintendoAccountVerificationUrlCacheAsync ||
 +
|-
 +
| 135 || RefreshNintendoAccountVerificationUrlCacheAsyncIfSecondsElapsed ||
 +
|-
 +
| 140 || GetNetworkServiceLicenseCache ||
 +
|-
 +
| 141 || RefreshNetworkServiceLicenseCacheAsync ||
 +
|-
 +
| 142 || RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed ||
 +
|-
 +
| 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]].
 +
|-
 +
| 160 || [15.0.0+] RequiresUpdateNetworkServiceAccountIdTokenCache ||
 +
|-
 +
| 161 || [16.0.0+] RequireReauthenticationOfNetworkServiceAccount ||
 +
|-
 +
| 170 || [17.0.0+] CreateDeviceHistoryRequest ||
 +
|-
 +
| 200 || IsRegistered ||
 +
|-
 +
| 201 || RegisterAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 202 || UnregisterAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 203 || DeleteRegistrationInfoLocally ||
 +
|-
 +
| 220 || SynchronizeProfileAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 221 || UploadProfileAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 222 || SynchronizeProfileAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]].
 +
|-
 +
| 250 || IsLinkedWithNintendoAccount ||
 +
|-
 +
| 251 || CreateProcedureToLinkWithNintendoAccount || Returns an [[#IOAuthProcedureForNintendoAccountLinkage]].
 +
|-
 +
| 252 || ResumeProcedureToLinkWithNintendoAccount || Returns an [[#IOAuthProcedureForNintendoAccountLinkage]].
 +
|-
 +
| 255 || CreateProcedureToUpdateLinkageStateOfNintendoAccount || Returns an [[#IOAuthProcedure]].
 +
|-
 +
| 256 || ResumeProcedureToUpdateLinkageStateOfNintendoAccount || Returns an [[#IOAuthProcedure]].
 +
|-
 +
| 260 || CreateProcedureToLinkNnidWithNintendoAccount || Returns an [[#IOAuthProcedure]].
 +
|-
 +
| 261 || ResumeProcedureToLinkNnidWithNintendoAccount || Returns an [[#IOAuthProcedure]].
 +
|-
 +
| 280 || ProxyProcedureToAcquireApplicationAuthorizationForNintendoAccount || Returns an [[#IOAuthProcedure]].
 +
|-
 +
| 290 || GetRequestForNintendoAccountUserResourceView ||
 +
|-
 +
| 300 || TryRecoverNintendoAccountUserStateAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 400 || IsServiceEntryRequirementCacheRefreshRequiredForOnlinePlay || Takes a total of 0x8-bytes of input, returns an output u8.
 +
|-
 +
| 401 || RefreshServiceEntryRequirementCacheForOnlinePlayAsync || Takes a total of 0x8-bytes of input, returns an [[#IAsyncContext]].
 +
|-
 +
| 410 || [13.1.0+] CheckRequiredLicenseForLexAsync ||
 +
|-
 +
| 900 || GetAuthenticationInfoForWin ||
 +
|-
 +
| 901 || ImportAsyncForWin ||
 +
|-
 +
| 997 || DebugUnlinkNintendoAccountAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 998 || DebugSetAvailabilityErrorDetail ||
 +
|}
 +
 +
== IAuthorizationRequest ==
 +
This is "nn::account::nas::IAuthorizationRequest".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || GetSessionId ||
 +
|-
 +
| 10 || InvokeWithoutInteractionAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 19 || IsAuthorized ||
 +
|-
 +
| 20 || GetAuthorizationCode ||
 +
|-
 +
| 21 || GetIdToken ||
 +
|-
 +
| 22 || GetState ||
 +
|}
 +
 +
== IOAuthProcedure ==
 +
This is "nn::account::http::IOAuthProcedure".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || PrepareAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 1 || GetRequest ||
 +
|-
 +
| 2 || ApplyResponse ||
 +
|-
 +
| 3 || ApplyResponseAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 10 || Suspend ||
 +
|}
 +
 +
== IOAuthProcedureForExternalNsa ==
 +
This is "nn::account::nas::IOAuthProcedureForExternalNsa".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || PrepareAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 1 || GetRequest ||
 +
|-
 +
| 2 || ApplyResponse ||
 +
|-
 +
| 3 || ApplyResponseAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 10 || Suspend ||
 +
|-
 +
| 100 || GetAccountId ||
 +
|-
 +
| 101 || GetLinkedNintendoAccountId ||
 +
|-
 +
| 102 || GetNickname ||
 +
|-
 +
| 103 || GetProfileImage ||
 +
|}
 +
 +
== IOAuthProcedureForNintendoAccountLinkage ==
 +
This is "nn::account::nas::IOAuthProcedureForNintendoAccountLinkage".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || PrepareAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 1 || GetRequest ||
 +
|-
 +
| 2 || ApplyResponse ||
 +
|-
 +
| 3 || ApplyResponseAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 10 || Suspend ||
 +
|-
 +
| 100 || GetRequestWithTheme ||
 +
|-
 +
| 101 || IsNetworkServiceAccountReplaced ||
 +
|-
 +
| 200 || [16.0.0+] ApplyAsyncWithAuthorizedToken ||
 +
|}
 +
 +
== IOAuthProcedureForUserRegistration ==
 +
This is "nn::account::nas::IOAuthProcedureForUserRegistration".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || PrepareAsync || No input, returns an [[#IAsyncContext]].
 +
|-
 +
| 1 || GetRequest ||
 +
|-
 +
| 2 || ApplyResponse ||
 +
|-
 +
| 3 || ApplyResponseAsync || Takes a type-0x9 input buffer, returns an [[#IAsyncContext]].
 +
|-
 +
| 10 || Suspend ||
 +
|-
 +
| 100 || GetAccountId ||
 +
|-
 +
| 101 || GetLinkedNintendoAccountId ||
 +
|-
 +
| 102 || GetNickname ||
 +
|-
 +
| 103 || GetProfileImage ||
 +
|-
 +
| 110 || RegisterUserAsync || No input, returns an [[#IAsyncContext]].
 +
|-
 +
| 111 || GetUid ||
 +
|}
 +
 +
== IAccountEntityServiceForApplication ==
 +
This is "nn::account::IAccountEntityServiceForApplication".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || GetUserCount ||
 +
|-
 +
| 1 || GetUserExistence ||
 +
|-
 +
| 2 || ListAllUsers ||
 +
|-
 +
| 3 || ListOpenUsers ||
 +
|-
 +
| 4 || GetLastOpenedUser ||
 +
|-
 +
| 5 || GetProfile || Takes an input userID, returns an [[#IProfile]].
 +
|-
 +
| 6 || GetProfileDigest ||
 +
|-
 +
| 50 || [[#IsUserRegistrationRequestPermitted]] ||
 +
|-
 +
| 51 || [[#TrySelectUserWithoutInteraction]] ||
 +
|-
 +
| 99 || DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]].
 +
|-
 +
| 100 || [[#InitializeApplicationInfoV0]] ||
 +
|-
 +
| 101 || GetBaasAccountManagerForApplication || Takes an input userID, returns an [[#IManagerForApplication]].
 +
|-
 +
| 102 || AuthenticateApplicationAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 103 || CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 110 || StoreSaveDataThumbnail ||
 +
|-
 +
| 111 || ClearSaveDataThumbnail ||
 +
|-
 +
| 120 || CreateGuestLoginRequest || Returns an [[#IGuestLoginRequest]].
 +
|-
 +
| 130 || LoadOpenContext ||
 +
|-
 +
| 131 || ListOpenContextStoredUsers ||
 +
|-
 +
| 140 || [[#InitializeApplicationInfoV1]] ||
 +
|-
 +
| 141 || ListQualifiedUsers ||
 +
|-
 +
| 150 || IsUserAccountSwitchLocked ||
 +
|-
 +
| 160 || InitializeApplicationInfoV2 ||
 +
|-
 +
| 10050 || IsUserRegistrationRequestPermittedForAccountPolicy ||
 +
|-
 +
| 10100 || InitializeApplicationInfoV0ForAccountPolicy ||
 +
|-
 +
| 10140 || InitializeApplicationInfoV1ForAccountPolicy ||
 +
|-
 +
| 10160 || InitializeApplicationInfoV2ForAccountPolicy ||
 +
|}
 +
 +
InitializeApplicationInfo* is used by the user-process during service init.
 +
 +
=== IsUserRegistrationRequestPermitted ===
 +
Takes a PID, an input u64 pid_reserved, and returns an output u8 bool.
 +
 +
=== TrySelectUserWithoutInteraction ===
 +
Takes an input u8 bool isNetworkServiceAccountRequired, returns an output Uid.
 +
 +
=== InitializeApplicationInfoV0 ===
 +
Takes a PID and an input u64 pid_placeholder, no output.
 +
 +
=== InitializeApplicationInfoV1 ===
 +
Takes a PID and an input u64 pid_placeholder, no output.
 +
 +
=== IGuestLoginRequest ===
 +
This is "nn::account::baas::IGuestLoginRequest".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 0 || GetSessionId
 +
|-
 +
| 12 || GetAccountId
 +
|-
 +
| 13 || GetLinkedNintendoAccountId
 +
|-
 +
| 14 || GetNickname
 +
|-
 +
| 15 || GetProfileImage
 +
|-
 +
| 16 || [18.0.0+]
 +
|-
 +
| 21 || LoadIdTokenCache
 +
|}
 +
 +
=== IManagerForApplication ===
 +
This is "nn::account::baas::IManagerForApplication".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || CheckAvailability ||
 +
|-
 +
| 1 || GetAccountId ||
 +
|-
 +
| 2 || EnsureIdTokenCacheAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 3 || LoadIdTokenCache ||
 +
|-
 +
| 130 || GetNintendoAccountUserResourceCacheForApplication ||
 +
|-
 +
| 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]].
 +
|-
 +
| 160 || StoreOpenContext ||
 +
|-
 +
| 170 || EnsureIdTokenCacheForOnlinePlayAsync || No input, returns an [[#IAsyncContextForLoginForOnlinePlay]].
 +
|}
 +
 +
==== IAsyncContextForLoginForOnlinePlay ====
 +
This is "nn::account::baas::IAsyncContextForLoginForOnlinePlay".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || GetSystemEvent ||
 +
|-
 +
| 1 || Cancel ||
 +
|-
 +
| 2 || HasDone ||
 +
|-
 +
| 3 || GetResult ||
 +
|-
 +
| 100 || GetNetworkServiceLicenseInfoForOnlinePlay ||
 +
|}
 +
 +
== IUserStateManager ==
 +
This is "nn::account::detail::IUserStateManager".
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 100 || EnableQualificationLimitation
 +
|-
 +
| 101 || DisableQualificationLimitation
 +
|-
 +
| 110 || SelectQualifiedUsers
 +
|-
 +
| 900 || [14.0.0+] SetUserUnqualifiedForDebug
 +
|-
 +
| 901 || [14.0.0+] UnsetUserUnqualifiedForDebug
 +
|-
 +
| 902 || [14.0.0+] ListUsersUnqualifiedForDebug
 +
|}
 +
 +
= acc:e:u1 =
 +
This is "nn::account::IAccountServiceForSystemService".
 +
 +
This was added with [13.0.0+].
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || GetUserCount ||
 +
|-
 +
| 1 || GetUserExistence ||
 +
|-
 +
| 2 || ListAllUsers ||
 +
|-
 +
| 3 || ListOpenUsers ||
 +
|-
 +
| 4 || GetLastOpenedUser ||
 +
|-
 +
| 5 || GetProfile || Returns an [[#IProfile]].
 +
|-
 +
| 6 || GetProfileDigest ||
 +
|-
 +
| 50 || [[#IsUserRegistrationRequestPermitted]] ||
 +
|-
 +
| 51 || [[#TrySelectUserWithoutInteraction]] ||
 +
|-
 +
| 99 || DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]].
 +
|-
 +
| 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 101 || GetUserStateChangeNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 102 || GetBaasAccountManagerForSystemService || Returns an [[#IManagerForSystemService]].
 +
|-
 +
| 103 || GetBaasUserAvailabilityChangeNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 104 || GetProfileUpdateNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 105 || CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 106 || GetProfileSyncNotifier ||
 +
|-
 +
| 110 || StoreSaveDataThumbnail ||
 +
|-
 +
| 111 || ClearSaveDataThumbnail ||
 +
|-
 +
| 112 || LoadSaveDataThumbnail ||
 +
|-
 +
| 113 || GetSaveDataThumbnailExistence ||
 +
|-
 +
| 120 || ListOpenUsersInApplication ||
 +
|-
 +
| 130 || ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]].
 +
|-
 +
| 140 || ListQualifiedUsers ||
 +
|-
 +
| 151 || EnsureSignedDeviceIdentifierCacheForNintendoAccountAsync ||
 +
|-
 +
| 152 || LoadSignedDeviceIdentifierCacheForNintendoAccount ||
 +
|-
 +
| 170 || GetNasOp2MembershipStateChangeNotifier ||
 +
|-
 +
| 191 || UpdateNotificationReceiverInfo ||
 +
|-
 +
| 997 || DebugInvalidateTokenCacheForUser ||
 +
|-
 +
| 998 || DebugSetUserStateClose ||
 +
|-
 +
| 999 || DebugSetUserStateOpen ||
 +
|}
 +
 +
= acc:e:u2 =
 +
This is "nn::account::IAccountServiceForSystemServiceWithProfileEditor".
 +
 +
This was added with [13.0.0+].
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name || Notes
 +
|-
 +
| 0 || GetUserCount ||
 +
|-
 +
| 1 || GetUserExistence ||
 +
|-
 +
| 2 || ListAllUsers ||
 +
|-
 +
| 3 || ListOpenUsers ||
 +
|-
 +
| 4 || GetLastOpenedUser ||
 +
|-
 +
| 5 || GetProfile || Returns an [[#IProfile]].
 +
|-
 +
| 6 || GetProfileDigest ||
 +
|-
 +
| 50 || [[#IsUserRegistrationRequestPermitted]] ||
 +
|-
 +
| 51 || [[#TrySelectUserWithoutInteraction]] ||
 +
|-
 +
| 99 || DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]].
 +
|-
 +
| 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 101 || GetUserStateChangeNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 102 || GetBaasAccountManagerForSystemService || Returns an [[#IManagerForSystemService]].
 +
|-
 +
| 103 || GetBaasUserAvailabilityChangeNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 104 || GetProfileUpdateNotifier || Returns an [[#INotifier]].
 +
|-
 +
| 105 || CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]].
 +
|-
 +
| 106 || GetProfileSyncNotifier ||
 +
|-
 +
| 110 || StoreSaveDataThumbnail ||
 +
|-
 +
| 111 || ClearSaveDataThumbnail ||
 +
|-
 +
| 112 || LoadSaveDataThumbnail ||
 +
|-
 +
| 113 || GetSaveDataThumbnailExistence ||
 +
|-
 +
| 120 || ListOpenUsersInApplication ||
 +
|-
 +
| 130 || ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]].
 +
|-
 +
| 140 || ListQualifiedUsers ||
 +
|-
 +
| 151 || EnsureSignedDeviceIdentifierCacheForNintendoAccountAsync ||
 +
|-
 +
| 152 || LoadSignedDeviceIdentifierCacheForNintendoAccount ||
 +
|-
 +
| 170 || GetNasOp2MembershipStateChangeNotifier ||
 +
|-
 +
| 191 || UpdateNotificationReceiverInfo ||
 +
|-
 +
| 205 || GetProfileEditor || Takes an input userID and returns an [[#IProfileEditor]].
 +
|-
 +
| 401 || [18.0.0+] GetPinCodeLength ||
 +
|-
 +
| 402 || [18.0.0+] GetPinCode ||
 +
|-
 +
| 997 || DebugInvalidateTokenCacheForUser ||
 +
|-
 +
| 998 || DebugSetUserStateClose ||
 +
|-
 +
| 999 || DebugSetUserStateOpen ||
 
|}
 
|}
   Line 783: Line 1,759:     
This is a 0x38-byte struct.
 
This is a 0x38-byte struct.
 +
 +
= Uid =
 +
This is "nn::account::Uid". This is a 0x10-byte struct. This contains 2 u64s for the UserId.
    
[[Category:Services]]
 
[[Category:Services]]

Navigation menu