libctru v2.5.0
Loading...
Searching...
No Matches
Data Structures | Macros | Typedefs | Enumerations | Functions
act.h File Reference

ACT (Account) Services. More...

#include <3ds/services/frd.h>
#include <3ds/types.h>
#include <3ds/mii.h>

Go to the source code of this file.

Data Structures

struct  CoppaCodeMailData
 Coppa Code Mail Data Structure. More...
 
struct  CFLStoreData
 Mii CFLStoreData (CTR Face Library Store Data) structure. More...
 
struct  BirthDate
 Birth date structure. More...
 
struct  AccountInfo
 Account info structure. More...
 
struct  AccountTimezone
 Account Timezone structure. More...
 
struct  TimezoneList
 Timezone List structure. More...
 
struct  EulaInfo
 EULA Info structure. More...
 
struct  ExistentServerAccountData
 Existent Server Account Data structure. More...
 
struct  EulaEntry
 EULA entry header structure. More...
 
struct  SupportContext
 Support Context structure. More...
 
struct  EulaList
 EULA list structure. More...
 
struct  DeviceInfo
 Device Info structure. More...
 
struct  NexServiceToken
 NEX service token structure. More...
 
struct  CreditCardInfo
 Credit Card Info structure. More...
 
struct  IndependentServiceTokenV1
 V1 Independent service token structure. More...
 
struct  IndependentServiceTokenV2
 V2 Independent service token structure. More...
 
struct  AccountServerTypes
 Account server types structure (raw format) More...
 
struct  AccountServerTypesStr
 Account server types structure (string format) More...
 
struct  AccountAccessToken
 Account access token structure. More...
 

Macros

#define ACCOUNT_ID_LEN   16+1
 16-character NULL-terminated ASCII Account ID
 
#define ACCOUNT_EMAIL_LEN   256+1
 256-character NULL-terminated ASCII email address
 
#define ACCOUNT_PASSWORD_LEN   17+1
 17-character NULL-terminated ASCII password
 
#define ACT_NNAS_SUBDOMAIN_LEN   32+1
 32-character NULL-terminated ASCII NNAS (Nintendo Network Authentication Server) subdomain
 
#define ACT_UUID_LEN   16
 RFC9562 Version 1 UUID.
 
#define ACT_DEFAULT_ACCOUNT   0xFE
 
#define ACT_UUID_REGULAR   -1
 The final UUID will not be based on any unique ID.
 
#define ACT_UUID_CURRENT_PROCESS   -2
 The final UUID will be based on the unique ID of the current process.
 
#define ACT_TRANSFERABLE_ID_BASE_COMMON   0xFF
 Use a common transferable ID base.
 
#define ACT_TRANSFERABLE_ID_BASE_CURRENT_ACCOUNT   0xFE
 Use the transferable ID base of the currently loaded account.
 

Typedefs

typedef u8 ActUuid[ACT_UUID_LEN]
 
typedef char ActNnasSubdomain[ACT_NNAS_SUBDOMAIN_LEN]
 
typedef char AccountId[ACCOUNT_ID_LEN]
 
typedef char AccountPassword[ACCOUNT_PASSWORD_LEN]
 
typedef char AccountMailAddress[ACCOUNT_EMAIL_LEN]
 

Enumerations

enum  ACT_InfoType {
  INFO_TYPE_COMMON_NUM_ACCOUNTS = 1 ,
  INFO_TYPE_COMMON_CURRENT_ACCOUNT_SLOT ,
  INFO_TYPE_COMMON_DEFAULT_ACCOUNT_SLOT ,
  INFO_TYPE_COMMON_NETWORK_TIME_DIFF ,
  INFO_TYPE_PERSISTENT_ID ,
  INFO_TYPE_COMMON_TRANSFERABLE_ID_BASE ,
  INFO_TYPE_TRANSFERABLE_ID_BASE = INFO_TYPE_COMMON_TRANSFERABLE_ID_BASE ,
  INFO_TYPE_MII ,
  INFO_TYPE_ACCOUNT_ID ,
  INFO_TYPE_MAIL_ADDRESS ,
  INFO_TYPE_BIRTH_DATE ,
  INFO_TYPE_COUNTRY_NAME ,
  INFO_TYPE_PRINCIPAL_ID ,
  INFO_TYPE_STUB_0xD ,
  INFO_TYPE_IS_PASSWORD_CACHE_ENABLED ,
  INFO_TYPE_STUB_0xF ,
  INFO_TYPE_STUB_0x10 ,
  INFO_TYPE_ACCOUNT_INFO ,
  INFO_TYPE_ACCOUNT_SERVER_TYPES ,
  INFO_TYPE_GENDER ,
  INFO_TYPE_LAST_AUTHENTICATION_RESULT ,
  INFO_TYPE_ASSIGNED_ACCOUNT_ID ,
  INFO_TYPE_PARENTAL_CONTROL_SLOT_NUMBER ,
  INFO_TYPE_SIMPLE_ADDRESS_ID ,
  INFO_TYPE_STUB_0x18 ,
  INFO_TYPE_UTC_OFFSET ,
  INFO_TYPE_IS_COMMITTED ,
  INFO_TYPE_MII_NAME ,
  INFO_TYPE_NFS_PASSWORD ,
  INFO_TYPE_HAS_ECI_VIRTUAL_ACCOUNT ,
  INFO_TYPE_TIMEZONE_ID ,
  INFO_TYPE_IS_MII_UPDATED ,
  INFO_TYPE_IS_MAIL_ADDRESS_VALIDATED ,
  INFO_TYPE_ACCOUNT_ACCESS_TOKEN ,
  INFO_TYPE_COMMON_IS_APPLICATION_UPDATE_REQUIRED ,
  INFO_TYPE_COMMON_DEFAULT_ACCOUNT_SERVER_TYPES ,
  INFO_TYPE_IS_SERVER_ACCOUNT_DELETED ,
  INFO_TYPE_MII_IMAGE_URL ,
  INFO_TYPE_ASSIGNED_PRINCIPAL_ID ,
  INFO_TYPE_ACCOUNT_ACCESS_TOKEN_STATE ,
  INFO_TYPE_ACCOUNT_SERVER_ENVIRONMENT ,
  INFO_TYPE_COMMON_DEFAULT_ACCOUNT_SERVER_ENVIRONMENT ,
  INFO_TYPE_COMMON_DEVICE_HASH ,
  INFO_TYPE_FP_LOCAL_ACCOUNT_ID ,
  INFO_TYPE_AGE ,
  INFO_TYPE_IS_ENABLED_RECEIVE_ADS ,
  INFO_TYPE_IS_OFF_DEVICE_ENABLED ,
  INFO_TYPE_TRANSLATED_SIMPLE_ADDRESS_ID
}
 Enum for common / account specific info types. More...
 
enum  ACT_AsyncRequestType {
  REQUEST_INQUIRE_BINDING_TO_EXISTENT_SERVER_ACCOUNT = 1 ,
  REQUEST_BIND_TO_EXISTENT_SERVER_ACCOUNT ,
  REQUEST_ACQUIRE_EULA ,
  REQUEST_ACQUIRE_EULA_LIST = REQUEST_ACQUIRE_EULA ,
  REQUEST_ACQUIRE_EULA_LANGUAGE_LIST = REQUEST_ACQUIRE_EULA ,
  REQUEST_ACQUIRE_TIMEZONE_LIST ,
  REQUEST_ACQUIRE_ACCOUNT_INFO ,
  REQUEST_ACQUIRE_ACCOUNT_ID_BY_PRINCIPAL_ID_MULTI ,
  REQUEST_ACQUIRE_ACCOUNT_ID_BY_PRINCIPAL_ID ,
  REQUEST_ACQUIRE_PRINCIPAL_ID_BY_ACCOUNT_ID_MULTI ,
  REQUEST_ACQUIRE_PRINCIPAL_ID_BY_ACCOUNT_ID ,
  REQUEST_APPROVE_BY_CREDIT_CARD ,
  REQUEST_SEND_COPPA_CODE_MAIL ,
  REQUEST_ACQUIRE_MII ,
  REQUEST_ACQUIRE_ACCOUNT_INFO_RAW
}
 
enum  MiiImageType {
  MII_IMAGE_PRIMARY = 0 ,
  MII_IMAGE_1 ,
  MII_IMAGE_2 ,
  MII_IMAGE_3 ,
  MII_IMAGE_4 ,
  MII_IMAGE_5 ,
  MII_IMAGE_6 ,
  MII_IMAGE_7 ,
  MII_IMAGE_8
}
 Enum for Mii image type. More...
 
enum  NnasServerType {
  NNAS_PRODUCTION = 0 ,
  NNAS_GAME_DEVELOPMENT ,
  NNAS_SYSTEM_DEVELOPMENT ,
  NNAS_LIBRARY_DEVELOPMENT ,
  NNAS_STAGING
}
 Enum for NNAS (Nintendo Network Authentication Server) type.
 
enum  AccountAccessTokenState {
  ACCESS_TOKEN_UNINITIALIZED = 0 ,
  ACCESS_TOKEN_EXPIRED ,
  ACCESS_TOKEN_VALID
}
 Enum for account access token state.
 
enum  InvalidateAccessTokenAction {
  INVALIDATE_ACCESS_TOKEN = BIT(0) ,
  INVALIDATE_REFRESH_TOKEN = BIT(1)
}
 Enum for account access token invalidation action. More...
 

Functions

Result actInit (bool forceUser)
 Initializes ACT services.
 
void actExit (void)
 Exits ACT services.
 
HandleactGetSessionHandle (void)
 Get the ACT user/admin service handle.
 
Result ACT_Initialize (u32 sdkVersion, u32 sharedMemSize, Handle sharedMem)
 Initializes the current ACT session.
 
Result ACT_ResultToErrorCode (Result code)
 Returns a support error code (XXX-YYYY) for the given ACT result code.
 
Result ACT_GetLastResponseResult ()
 Gets the result of the last internal operation.
 
Result ACT_Cancel ()
 Cancels any currently running async operation.
 
Result ACT_GetCommonInfo (void *output, u32 outputSize, u32 infoType)
 Retrieves information not specific to any one account.
 
Result ACT_GetAccountInfo (void *output, u32 outputSize, u8 accountSlot, u32 infoType)
 Retrieves information of a certain account.
 
Result ACT_GetAsyncResult (u32 *outReadSize, void *output, u32 outputSize, u32 requestType)
 Returns the data resulting from an async request.
 
Result ACT_GetMiiImage (u32 *outSize, void *output, u32 outputSize, u8 accountSlot, u8 miiImageType)
 Gets one of the Mii images of a certain account.
 
Result ACT_SetNfsPassword (u8 accountSlot, char *password)
 Sets the NFS (Nintendo Friend Server) password for a certain account.
 
Result ACT_SetIsApplicationUpdateRequired (bool required)
 Sets the IsApplicationUpdateRequired field in the internal account manager.
 
Result ACT_AcquireEulaList (u8 countryCode, Handle completionEvent)
 Acquires a list of EULA agreements for the specified country.
 
Result ACT_AcquireTimezoneList (u8 countryCode, u8 languageCode, Handle completionEvent)
 Acquires a list of timezones for the specified country and language combination.
 
Result ACT_GenerateUuid (ActUuid *uuid, u32 uniqueId)
 Generates a UUID.
 
Result ACT_GetUuid (ActUuid *uuid, u8 accountSlot, u32 uniqueId)
 Gets a specific account's UUID.
 
Result ACT_FindSlotNoByUuid (u8 *accountSlot, ActUuid *uuid, u32 uniqueId)
 Finds the account slot number of the account having the specified UUID.
 
Result ACT_Save ()
 Saves all pending changes to the ACT system save data.
 
Result ACT_GetTransferableId (u64 *transferableId, u8 accountSlot, u8 saltValue)
 Returns a TransferableID for a certain account.
 
Result ACT_AcquireNexServiceToken (u8 accountSlot, u32 serverId, bool doParentralControlsCheck, u32 callerProcessId, Handle completionEvent)
 Acquires an account-specific service token for a NEX server.
 
Result ACT_GetNexServiceToken (NexServiceToken *token)
 Gets a NEX service token requested using ACT_AcquireNexServiceToken.
 
Result ACT_AcquireIndependentServiceToken (u8 accountSlot, char *clientId, u32 cacheDuration, bool doParentalControlsCheck, bool shared, u32 callerProcessId, Handle completionEvent)
 Requests a V1 independent service token for a specific account.
 
Result ACT_GetIndependentServiceToken (IndependentServiceTokenV1 *token)
 Gets a V1 independent service token requested using ACT_AcquireIndependentServiceToken.
 
Result ACT_AcquireAccountInfo (u8 accountSlot, u32 infoType, Handle completionEvent)
 Acquires account information for the specified account.
 
Result ACT_AcquireAccountIdByPrincipalId (u32 *principalIds, u32 principalIdsSize, u8 unk, Handle completionEvent)
 Acquires account IDs from a list of principal IDs.
 
Result ACT_AcquirePrincipalIdByAccountId (AccountId *accountIds, u32 accountIdsSize, Handle completionHandle)
 Acquires principal IDs from a list of account IDs.
 
Result ACT_AcquireMii (u32 *persistentIds, u32 persistentIdsSize, Handle completionEvent)
 Acquires Miis corresponding to a given list of persistent IDs.
 
Result ACT_AcquireAccountInfoRaw (u8 accountSlot, Handle completionEvent)
 Acquires raw (XML) account info for the specified account.
 
Result ACT_GetCachedIndependentServiceToken (IndependentServiceTokenV1 *token, u8 accountSlot, char *clientId, u32 cacheDuration, bool doParentralControlsCheck, bool shared)
 Gets a cached V1 independent service token for a specific account.
 
Result ACT_InquireMailAddressAvailability (AccountMailAddress *mailAddress, Handle completionEvent)
 Inquires whether or not the given email address is available for creating a new account.
 
Result ACT_AcquireEula (u8 countryCode, char *languageCode, Handle completionEvent)
 Acquires the EULA for the given country and language combination.
 
Result ACT_AcquireEulaLanguageList (u8 countryCode, Handle completionEvent)
 Acquires a list of languages the EULA is available in for a given country.
 
Result ACT_AcquireIndependentServiceTokenV2 (u8 accountSlot, char *clientId, u32 cacheDuration, bool doParentalControlsCheck, bool shared, u32 callerProcessId, Handle completionEvent)
 Requests a V2 independent service token for a specific account.
 
Result ACT_GetIndependentServiceTokenV2 (IndependentServiceTokenV2 *token)
 Gets a V2 independent service token requested using ACT_AcquireIndependentServiceTokenV2.
 
Result ACT_GetCachedIndependentServiceTokenV2 (IndependentServiceTokenV2 *token, u8 accountSlot, char *clientId, u32 cacheDuration, bool doParentralControlsCheck, bool shared)
 Gets a cached V2 independent service token for a specific account.
 
Result ACTA_SwapAccounts (u8 accountSlot1, u8 accountSlot2)
 Swaps the account slot numbers of two accounts.
 
Result ACTA_CreateConsoleAccount ()
 Creates a new local console account.
 
Result ACTA_CommitConsoleAccount (u8 accountSlot)
 Sets a local console account as committed.
 
Result ACTA_UnbindServerAccount (u8 accountSlot, bool completely)
 Clears (but does not delete) account data for the given account slot.
 
Result ACTA_DeleteConsoleAccount (u8 accountSlot)
 Deletes a local console account.
 
Result ACTA_LoadConsoleAccount (u8 accountSlot, bool doPasswordCheck, AccountPassword *password, bool useNullPassword, bool dryRun)
 Loads ("logs in to") a local console account.
 
Result ACTA_UnloadConsoleAccount ()
 Unloads the currently loaded local console account.
 
Result ACTA_EnableAccountPasswordCache (u8 accountSlot, bool enabled)
 Enables or disables the account password cache for a specific account.
 
Result ACTA_SetDefaultAccount (u8 accountSlot)
 Sets the default account that is loaded when the ACT module is initialized.
 
Result ACTA_ReplaceAccountId (u8 accountSlot)
 Replaces the AccountId with the AssignedAccountId for a specific account.
 
Result ACTA_GetSupportContext (SupportContext *supportContext, u8 accountSlot)
 Creates a support context for a specific account.
 
Result ACTA_SetHostServerSettings (u8 accountSlot, u8 nnasType, u8 nfsType, u8 nfsNo)
 Sets server environment settings for a specific account.
 
Result ACTA_SetDefaultHostServerSettings (u8 nnasType, u8 nfsType, u8 nfsNo)
 Sets default server environment settings.
 
Result ACTA_SetHostServerSettingsStr (u8 accountSlot, ActNnasSubdomain *nnasSubdomain, NfsTypeStr *nfsTypeStr)
 Sets server environment settings (in string form) for a specific account.
 
Result ACTA_SetDefaultHostServerSettingsStr (ActNnasSubdomain *nnasSubdomain, NfsTypeStr *nfsTypeStr)
 Sets default server environment settings (in string form).
 
Result ACTA_SetPersistentIdHead (u32 head)
 Sets the internal base value for generating new persistent IDs.
 
Result ACTA_SetTransferableIdCounter (u16 counter)
 Sets the internal base value for generating new transferable IDs.
 
Result ACTA_UpdateMiiData (u8 accountSlot, CFLStoreData *miiData, MiiScreenName *screenName)
 Updates a specific account's Mii data and screen name.
 
Result ACTA_UpdateMiiImage (u8 accountSlot, u8 miiImageType, void *image, u32 imageSize)
 Updates a Mii image of a specific account.
 
Result ACTA_InquireAccountIdAvailability (u8 accountSlot, AccountId *accountId, Handle completionEvent)
 Checks whether or not the given account ID is available for creating a new server account.
 
Result ACTA_BindToNewServerAccount (u8 accountSlot, AccountId *accountId, AccountMailAddress *mailAddress, AccountPassword *password, bool isParentEmail, bool marketingFlag, bool offDeviceFlag, s64 birthDateTimestatmp, u8 gender, u32 region, AccountTimezone *timezone, EulaInfo *eulaInfo, s64 parentalConsentTimestamp, u32 parentalConsentId, Handle completionEvent)
 Links a new server account to a local console account.
 
Result ACTA_BindToExistentServerAccount (u8 accountSlot, AccountId *accountId, AccountMailAddress *mailAddress, AccountPassword *password, Handle completionEvent)
 Links a local console account to an existing server account.
 
Result ACTA_InquireBindingToExistentServerAccount (u8 accountSlot, AccountId *accountId, AccountMailAddress *mailAddress, AccountPassword *password, Handle completionEvent)
 Acquires information about an existing server account.
 
Result ACTA_DeleteServerAccount (u8 accountSlot, Handle completionEvent)
 Deletes a server account.
 
Result ACTA_AcquireAccountTokenEx (u8 accountSlot, AccountPassword *password, bool useNullPassword, Handle completionEvent)
 Acquires an account token for a specific account.
 
Result ACTA_AgreeEula (u8 accountSlot, EulaInfo *eulaInfo, s64 agreementTimestamp, Handle completionEvent)
 Submits a EULA agreement to the account server.
 
Result ACTA_SyncAccountInfo (u8 accountSlot, Handle completionEvent)
 Reloads account information from the server for a specific account.
 
Result ACTA_InvalidateAccountToken (u8 accountSlot, u32 invalidationActionMask)
 Invalidates a specific account's access token in different ways.
 
Result ACTA_UpdateAccountPassword (u8 accountSlot, AccountPassword *newPassword, Handle completionEvent)
 Updates the account password for a specific account.
 
Result ACTA_ReissueAccountPassword (u8 accountSlot, Handle completionEvent)
 Requests the issuing of a temporary password (valid for 24 hours) to the email address associated with a specific account.
 
Result ACTA_SetAccountPasswordInput (u8 accountSlot, AccountPassword *passwordInput)
 Sets the account password input for a specific account.
 
Result ACTA_UploadMii (u8 accountSlot, Handle completionEvent)
 Uploads the Mii data of a specific account to the account server.
 
Result ACTA_InactivateDeviceAssociation (u8 accountSlot, Handle completionEvent)
 Inactivates the device association for a specific account.
 
Result ACTA_ValidateMailAddress (u8 accountSlot, u32 confirmationCode, Handle completionEvent)
 Validates the email address of a specific account using the code received via the confirmation email.
 
Result ACTA_SendPostingApprovalMail (u8 accountSlot, AccountMailAddress *parentalEmail, Handle completionEvent)
 Requests parental approval for a specific account.
 
Result ACTA_SendConfirmationMail (u8 accountSlot, Handle completionEvent)
 Requests the email address confirmation mail to be resent for a specific account.
 
Result ACTA_SendConfirmationMailForPin (u8 accountSlot, AccountMailAddress *parentalEmail, Handle completionEvent)
 Registers a parental email address to be used in case the parental controls PIN has been forgotten for a specific account.
 
Result ACTA_SendMasterKeyMailForPin (u8 accountSlot, u32 masterKey, AccountMailAddress *parentalEmail, Handle completionEvent)
 Sends the master key for resetting parental controls to a parental email for a specific account.
 
Result ACTA_ApproveByCreditCard (u8 accountSlot, CreditCardInfo *cardInfo, Handle completionEvent)
 Requests COPPA parental consent using credit card information.
 
Result ACTA_SendCoppaCodeMail (u8 accountSlot, u32 principalId, Handle completionEvent)
 Requests a COPPA code for a specific account.
 
Result ACTA_SetIsMiiUpdated (u8 accountSlot, bool isDirty)
 Set a flag in a specifc account's data that determines whether or not it is necessary to upload the account Mii data to the account server.
 
Result ACTA_ReserveTransfer (u8 accountSlot, DeviceInfo *newDevice, char *operatorData, u32 operatorSize, Handle completionEvent)
 Initializes a server account transfer of a specific account to another device.
 
Result ACTA_CompleteTransfer (u8 accountSlot, Handle completionEvent)
 Finalizes a server account transfer of a specifc account to another device.
 
Result ACTA_InactivateAccountDeviceAssociation (u8 accountSlot, Handle completionEvent)
 Inactivates the account-device association for a specific account.
 
Result ACTA_SetNetworkTime (s64 timestamp)
 Set the internal network time field.
 
Result ACTA_UpdateAccountInfo (u8 accountSlot, char *xmlData, u32 xmlDataSize, Handle completionEvent)
 Updates the account info of a specific account using raw XML data.
 
Result ACTA_UpdateAccountMailAddress (u8 accountSlot, AccountMailAddress *newEmail, Handle completionEvent)
 Updates the email address of a specific account.
 
Result ACTA_DeleteDeviceAssociation (u8 accountSlot, Handle completionEvent)
 Deletes the device association for a specific account.
 
Result ACTA_DeleteAccountDeviceAssociation (u8 accountSlot, Handle completionEvent)
 Deletes the account-device association for a specific account.
 
Result ACTA_CancelTransfer (u8 accountSlot, Handle completionEvent)
 Cancels a pending server account transfer of a specific account to another device.
 
Result ACTA_ReloadAndBlockSaveData (Handle unloadFinishedEvent, Handle remountAndBlockEvent)
 Cancels any running HTTP requests, saves all pending changes to the system save data, then signals unloadFinishedEvent.
 
Result ACTA_ReserveServerAccountDeletion (u8 accountSlot, Handle completionEvent)
 Initializes server-side account deletion for a specific account.
 

Detailed Description

ACT (Account) Services.

Enumeration Type Documentation

◆ ACT_AsyncRequestType

Enumerator
REQUEST_INQUIRE_BINDING_TO_EXISTENT_SERVER_ACCOUNT 

ExistentServerAccountData struct.

REQUEST_BIND_TO_EXISTENT_SERVER_ACCOUNT 

u32, parentalConsentApprovalId

REQUEST_ACQUIRE_EULA 

EulaList structure (dynamically sized)

REQUEST_ACQUIRE_EULA_LIST 

EulaList structure (dynamically sized)

REQUEST_ACQUIRE_EULA_LANGUAGE_LIST 

EulaList structure with only the languageNameOffsets populated (dynamically sized)

REQUEST_ACQUIRE_TIMEZONE_LIST 

TimezoneList structure.

REQUEST_ACQUIRE_ACCOUNT_INFO 

INFO_TYPE_MAIL_ADDRESS: AccountMailAddress.

REQUEST_ACQUIRE_ACCOUNT_ID_BY_PRINCIPAL_ID_MULTI 

AccountId[count].

REQUEST_ACQUIRE_ACCOUNT_ID_BY_PRINCIPAL_ID 

AccountId.

REQUEST_ACQUIRE_PRINCIPAL_ID_BY_ACCOUNT_ID_MULTI 

u32[count]

REQUEST_ACQUIRE_PRINCIPAL_ID_BY_ACCOUNT_ID 

u32

REQUEST_APPROVE_BY_CREDIT_CARD 

u32, approvalId

REQUEST_SEND_COPPA_CODE_MAIL 

CoppaCodeMailData structure.

REQUEST_ACQUIRE_MII 

CFLStoreData[count].

REQUEST_ACQUIRE_ACCOUNT_INFO_RAW 

char[0xC00+1], NULL-terminate ASCII raw profile XML data

◆ ACT_InfoType

Enum for common / account specific info types.

Enumerator
INFO_TYPE_COMMON_NUM_ACCOUNTS 

u8

INFO_TYPE_COMMON_CURRENT_ACCOUNT_SLOT 

u8

INFO_TYPE_COMMON_DEFAULT_ACCOUNT_SLOT 

u8

INFO_TYPE_COMMON_NETWORK_TIME_DIFF 

s64, difference between server time and device time in nanoseconds.

INFO_TYPE_PERSISTENT_ID 

u32

INFO_TYPE_COMMON_TRANSFERABLE_ID_BASE 

u64

INFO_TYPE_TRANSFERABLE_ID_BASE 

u64

INFO_TYPE_MII 

CFLStoreData.

INFO_TYPE_ACCOUNT_ID 

AccountId.

INFO_TYPE_MAIL_ADDRESS 

AccountMailAddress.

INFO_TYPE_BIRTH_DATE 

BirthDate structure.

INFO_TYPE_COUNTRY_NAME 

char[2+1]

INFO_TYPE_PRINCIPAL_ID 

u32

INFO_TYPE_IS_PASSWORD_CACHE_ENABLED 

bool

INFO_TYPE_ACCOUNT_INFO 

AccountInfo structure.

INFO_TYPE_GENDER 

AccountServerTypes.

u8, F = 0, M = 1

INFO_TYPE_LAST_AUTHENTICATION_RESULT 

Result.

INFO_TYPE_ASSIGNED_ACCOUNT_ID 

AccountId.

INFO_TYPE_PARENTAL_CONTROL_SLOT_NUMBER 

u8

INFO_TYPE_SIMPLE_ADDRESS_ID 

u32

INFO_TYPE_UTC_OFFSET 

s64

INFO_TYPE_IS_COMMITTED 

bool

INFO_TYPE_MII_NAME 

MiiScreenName.

INFO_TYPE_NFS_PASSWORD 

char[0x10+1]

INFO_TYPE_HAS_ECI_VIRTUAL_ACCOUNT 

bool

INFO_TYPE_TIMEZONE_ID 

char[0x40+1]

INFO_TYPE_IS_MII_UPDATED 

bool

INFO_TYPE_IS_MAIL_ADDRESS_VALIDATED 

bool

INFO_TYPE_ACCOUNT_ACCESS_TOKEN 

AccountAccessToken structure.

INFO_TYPE_COMMON_IS_APPLICATION_UPDATE_REQUIRED 

bool

INFO_TYPE_COMMON_DEFAULT_ACCOUNT_SERVER_TYPES 

AccountServerTypes.

INFO_TYPE_IS_SERVER_ACCOUNT_DELETED 

bool

INFO_TYPE_MII_IMAGE_URL 

char[0x100+1]

INFO_TYPE_ASSIGNED_PRINCIPAL_ID 

u32

INFO_TYPE_ACCOUNT_ACCESS_TOKEN_STATE 

u32, AccountAccessTokenState enum

INFO_TYPE_ACCOUNT_SERVER_ENVIRONMENT 

AccountServerTypesStr structure.

INFO_TYPE_COMMON_DEFAULT_ACCOUNT_SERVER_ENVIRONMENT 

AccountServerTypesStr structure.

INFO_TYPE_COMMON_DEVICE_HASH 

u8[8]

INFO_TYPE_FP_LOCAL_ACCOUNT_ID 

u8

INFO_TYPE_AGE 

u16

INFO_TYPE_IS_ENABLED_RECEIVE_ADS 

bool

INFO_TYPE_IS_OFF_DEVICE_ENABLED 

bool

INFO_TYPE_TRANSLATED_SIMPLE_ADDRESS_ID 

u32

◆ InvalidateAccessTokenAction

Enum for account access token invalidation action.

Enumerator
INVALIDATE_ACCESS_TOKEN 

Invalidates only the account token itself (and the expiry date).

INVALIDATE_REFRESH_TOKEN 

Invalidates only the refresh token.

◆ MiiImageType

Enum for Mii image type.

Enumerator
MII_IMAGE_PRIMARY 

The user's primary Mii image.

Function Documentation

◆ ACT_AcquireAccountIdByPrincipalId()

Result ACT_AcquireAccountIdByPrincipalId ( u32 principalIds,
u32  principalIdsSize,
u8  unk,
Handle  completionEvent 
)

Acquires account IDs from a list of principal IDs.

Parameters
principalIdsPointer to the input principal IDs.
principalIdsSizeSize of the input principal IDs buffer.
unkUnknown value. Must be 0.
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquireAccountInfo()

Result ACT_AcquireAccountInfo ( u8  accountSlot,
u32  infoType,
Handle  completionEvent 
)

Acquires account information for the specified account.

Parameters
accountSlotThe account slot number to acquire information for.
infoTypeThe type of info to obtain. (only INFO_TYPE_MAIL_ADDRESS is supported.)
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquireAccountInfoRaw()

Result ACT_AcquireAccountInfoRaw ( u8  accountSlot,
Handle  completionEvent 
)

Acquires raw (XML) account info for the specified account.

Parameters
accountSlotThe account slot number of the account to acquire raw info for.

◆ ACT_AcquireEula()

Result ACT_AcquireEula ( u8  countryCode,
char *  languageCode,
Handle  completionEvent 
)

Acquires the EULA for the given country and language combination.

Parameters
countryCodeThe country code of the country for the EULA.
languageCodeThe 2-character ISO 639 Set 1 language code for the EULA.
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquireEulaLanguageList()

Result ACT_AcquireEulaLanguageList ( u8  countryCode,
Handle  completionEvent 
)

Acquires a list of languages the EULA is available in for a given country.

Parameters
countryCodeThe country code to acquire the EULA language list for.
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquireEulaList()

Result ACT_AcquireEulaList ( u8  countryCode,
Handle  completionEvent 
)

Acquires a list of EULA agreements for the specified country.

Parameters
countryCodeThe country code of the country to acquire EULA agreements for.
completionEventThe event handle to signal when the request has finished.

◆ ACT_AcquireIndependentServiceToken()

Result ACT_AcquireIndependentServiceToken ( u8  accountSlot,
char *  clientId,
u32  cacheDuration,
bool  doParentalControlsCheck,
bool  shared,
u32  callerProcessId,
Handle  completionEvent 
)

Requests a V1 independent service token for a specific account.

Parameters
accountSlotThe account slot number of the account to request the token with.
clientIdThe client ID to use for requesting the independent service token.
cacheDurationThe duration in seconds to cache the token. If a token was requested within the past cacheDuration seconds, this command returns that token instead of requesting a new one. Passing 0 will cause ACT to always request a new token.
doParentalControlsCheckWhether or not to perform a parental controls check before requesting the token. (unused)
sharedWhether or not this token should be shared with other processes. If set to false, it will only be accessible to the process with the given process ID.
callerProcessIdThe process ID of the process requesting the token.
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquireIndependentServiceTokenV2()

Result ACT_AcquireIndependentServiceTokenV2 ( u8  accountSlot,
char *  clientId,
u32  cacheDuration,
bool  doParentalControlsCheck,
bool  shared,
u32  callerProcessId,
Handle  completionEvent 
)

Requests a V2 independent service token for a specific account.

Parameters
accountSlotThe account slot number of the account to request the token with.
clientIdThe client ID to use for requesting the independent service token.
cacheDurationThe duration in seconds to cache the token. If a token was requested within the past cacheDuration seconds, this command returns that token instead of requesting a new one. Passing 0 will cause ACT to always request a new token.
doParentalControlsCheckWhether or not to perform a parental controls check before requesting the token. (unused)
sharedWhether or not this token should be shared with other processes. If set to false, it will only be accessible to the process with the given process ID.
callerProcessIdThe process ID of the process requesting the token.
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquireMii()

Result ACT_AcquireMii ( u32 persistentIds,
u32  persistentIdsSize,
Handle  completionEvent 
)

Acquires Miis corresponding to a given list of persistent IDs.

Parameters
persistentIdsPointer to input persistent IDs to use.
persistentIdsSizeSize of the input persistent IDs buffer.
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquireNexServiceToken()

Result ACT_AcquireNexServiceToken ( u8  accountSlot,
u32  serverId,
bool  doParentralControlsCheck,
u32  callerProcessId,
Handle  completionEvent 
)

Acquires an account-specific service token for a NEX server.

Parameters
accountSlotThe account slot number of the account to use for acquiring the token.
serverIdThe NEX server ID to request a service token for.
doParentalControlsCheckWhether or not to perform a parental controls check before requesting the token. (unused)
callerProcessIdThe process ID of the process requesting the token.
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquirePrincipalIdByAccountId()

Result ACT_AcquirePrincipalIdByAccountId ( AccountId *  accountIds,
u32  accountIdsSize,
Handle  completionHandle 
)

Acquires principal IDs from a list of account IDs.

Parameters
accountIdsPointer to input account IDs.
accountIdsSizeSize of the input account IDs buffer.
completionEventThe event handle to signal once the request has finished.

◆ ACT_AcquireTimezoneList()

Result ACT_AcquireTimezoneList ( u8  countryCode,
u8  languageCode,
Handle  completionEvent 
)

Acquires a list of timezones for the specified country and language combination.

Parameters
countryCodeThe country code of the country to acquire time zones for.
languagecode The language code of the language to acquire the time zones in.
completionEventThe event handle to signal when the request has finished.

◆ ACT_FindSlotNoByUuid()

Result ACT_FindSlotNoByUuid ( u8 accountSlot,
ActUuid *  uuid,
u32  uniqueId 
)

Finds the account slot number of the account having the specified UUID.

Parameters
accountSlotPointer to output the account slot number to.
uuidPointer to the UUID to find the account slot number for.
uniqueIdThe unique ID to use during internal UUID generation. Special values include ACT_UUID_REGULAR and ACT_UUID_CURRENT_PROCESS.

◆ ACT_GenerateUuid()

Result ACT_GenerateUuid ( ActUuid *  uuid,
u32  uniqueId 
)

Generates a UUID.

Parameters
uuidPointer to output the generated UUID to.
uniqueIdThe unique ID to use during generation. Special values include ACT_UUID_REGULAR and ACT_UUID_CURRENT_PROCESS.

◆ ACT_GetAccountInfo()

Result ACT_GetAccountInfo ( void *  output,
u32  outputSize,
u8  accountSlot,
u32  infoType 
)

Retrieves information of a certain account.

Parameters
outputPointer to buffer to output the data to.
outputSizeSize of the output buffer.
accountSlotThe account slot number of the account to retrieve information for.
infoTypeThe type of data to retrieve.

◆ ACT_GetAsyncResult()

Result ACT_GetAsyncResult ( u32 outReadSize,
void *  output,
u32  outputSize,
u32  requestType 
)

Returns the data resulting from an async request.

Parameters
outReadSizePointer to output the number of retrieved bytes to.
outputPointer to buffer to output the data to.
outputSizeSize of the output buffer.
requestTypeThe type of async request to retrieve data for.

◆ ACT_GetCachedIndependentServiceToken()

Result ACT_GetCachedIndependentServiceToken ( IndependentServiceTokenV1 token,
u8  accountSlot,
char *  clientId,
u32  cacheDuration,
bool  doParentralControlsCheck,
bool  shared 
)

Gets a cached V1 independent service token for a specific account.

Parameters
accountSlotThe account slot number of the account to get the token for.
clientIdThe client ID to use for the cache lookup.
cacheDurationThe duration in seconds ago this token must have been requested in at least for it to be eligible for retrieval.
doParentalControlsCheckWhether or not to perform a parental controls check before getting the token. (unused)
sharedWhether or not to only look for shared (non-process-specific) tokens in the cache.

◆ ACT_GetCachedIndependentServiceTokenV2()

Result ACT_GetCachedIndependentServiceTokenV2 ( IndependentServiceTokenV2 token,
u8  accountSlot,
char *  clientId,
u32  cacheDuration,
bool  doParentralControlsCheck,
bool  shared 
)

Gets a cached V2 independent service token for a specific account.

Parameters
accountSlotThe account slot number of the account to get the token for.
clientIdThe client ID to use for the cache lookup.
cacheDurationThe duration in seconds ago this token must have been requested in at least for it to be eligible for retrieval.
doParentalControlsCheckWhether or not to perform a parental controls check before getting the token. (unused)
sharedWhether or not to only look for shared (non-process-specific) tokens in the cache.

◆ ACT_GetCommonInfo()

Result ACT_GetCommonInfo ( void *  output,
u32  outputSize,
u32  infoType 
)

Retrieves information not specific to any one account.

Parameters
outputPointer to buffer to output the data to.
outputSizeSize of the output buffer.
infoTypeThe type of data to retrieve.

◆ ACT_GetIndependentServiceToken()

Result ACT_GetIndependentServiceToken ( IndependentServiceTokenV1 token)

Gets a V1 independent service token requested using ACT_AcquireIndependentServiceToken.

Parameters
tokenPointer to output the V1 independent service token to.

◆ ACT_GetIndependentServiceTokenV2()

Result ACT_GetIndependentServiceTokenV2 ( IndependentServiceTokenV2 token)

Gets a V2 independent service token requested using ACT_AcquireIndependentServiceTokenV2.

Parameters
tokenPointer to output the V2 independent service token to.

◆ ACT_GetMiiImage()

Result ACT_GetMiiImage ( u32 outSize,
void *  output,
u32  outputSize,
u8  accountSlot,
u8  miiImageType 
)

Gets one of the Mii images of a certain account.

Parameters
outSizePointer to output the raw size of the image to.
outputPointer to output the image data to.
outputSizeSize of the output buffer.
accountSlotThe account slot number of the account to get the Mii image for.
miiImageTypeThe type of the Mii image to get.

◆ ACT_GetNexServiceToken()

Result ACT_GetNexServiceToken ( NexServiceToken token)

Gets a NEX service token requested using ACT_AcquireNexServiceToken.

Parameters
tokenPointer to output the NEX service token data to.

◆ ACT_GetTransferableId()

Result ACT_GetTransferableId ( u64 transferableId,
u8  accountSlot,
u8  saltValue 
)

Returns a TransferableID for a certain account.

Parameters
transferableIdPointer to output the generated TransferableID to.
accountSlotThe account slot number of the account to generate the TransferableID for. Special values include ACT_TRANSFERABLE_ID_BASE_COMMON and ACT_TRANSFERABLE_ID_BASE_CURRENT_ACCOUNT.
saltValueThe value to use as a salt during generation.

◆ ACT_GetUuid()

Result ACT_GetUuid ( ActUuid *  uuid,
u8  accountSlot,
u32  uniqueId 
)

Gets a specific account's UUID.

Parameters
uuidPointer to output the UUID to.
uniqueIdThe unique ID to use during the retrieval of the UUID. Special values include ACT_UUID_REGULAR and ACT_UUID_CURRENT_PROCESS.

◆ ACT_Initialize()

Result ACT_Initialize ( u32  sdkVersion,
u32  sharedMemSize,
Handle  sharedMem 
)

Initializes the current ACT session.

Parameters
sdkVersionThe SDK version of the client process.
sharedMemSizeThe size of the shared memory block.
sharedMemHandle to the shared memory block.

◆ ACT_InquireMailAddressAvailability()

Result ACT_InquireMailAddressAvailability ( AccountMailAddress *  mailAddress,
Handle  completionEvent 
)

Inquires whether or not the given email address is available for creating a new account.

Parameters
mailAddressPointer to the input email address to check.
completionEventThe event handle to signal once the request has finished.

◆ ACT_ResultToErrorCode()

Result ACT_ResultToErrorCode ( Result  code)

Returns a support error code (XXX-YYYY) for the given ACT result code.

Parameters
codeThe result code to convert.

◆ ACT_SetIsApplicationUpdateRequired()

Result ACT_SetIsApplicationUpdateRequired ( bool  required)

Sets the IsApplicationUpdateRequired field in the internal account manager.

Parameters
requiredThe new value to use.

◆ ACT_SetNfsPassword()

Result ACT_SetNfsPassword ( u8  accountSlot,
char *  password 
)

Sets the NFS (Nintendo Friend Server) password for a certain account.

Parameters
accountSlotThe account slot number of the account to set the NfsPassword for.
passwordPointer to the new NFS password to use.

◆ ACTA_AcquireAccountTokenEx()

Result ACTA_AcquireAccountTokenEx ( u8  accountSlot,
AccountPassword *  password,
bool  useNullPassword,
Handle  completionEvent 
)

Acquires an account token for a specific account.

Parameters
accountSlotThe account slot number of the account to acquire the account token for.
passwordPointer to the password of the account.
useNullPasswordWhether or not to force NULL as the password (no password). This will cause the account password cache to be used instead, if it is enabled.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_AgreeEula()

Result ACTA_AgreeEula ( u8  accountSlot,
EulaInfo eulaInfo,
s64  agreementTimestamp,
Handle  completionEvent 
)

Submits a EULA agreement to the account server.

Parameters
accountSlotThe account slot number of the account to use to submit the agreement.
eulaInfoPointer to a EULA information structure describing the agreed EULA.
agreementTimestampA timestamp in the format milliseconds elapsed since 01.01.2000 00:00:00 UTC of when the user agreed to the EULA.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_ApproveByCreditCard()

Result ACTA_ApproveByCreditCard ( u8  accountSlot,
CreditCardInfo cardInfo,
Handle  completionEvent 
)

Requests COPPA parental consent using credit card information.

Parameters
accountSlotThe account slot number for the account to request approval for.
cardInfoPointer to the credit card information to use for the approval process.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_BindToExistentServerAccount()

Result ACTA_BindToExistentServerAccount ( u8  accountSlot,
AccountId *  accountId,
AccountMailAddress *  mailAddress,
AccountPassword *  password,
Handle  completionEvent 
)

Links a local console account to an existing server account.

In other words, this links an existing NNID.

Parameters
accountSlotThe account slot number of the local console account to bind.
accountIdPointer to the account ID of the existing server account.
mailAddressPointer to the email address of the existing server account.
passwordPointer to the password of the existing server account.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_BindToNewServerAccount()

Result ACTA_BindToNewServerAccount ( u8  accountSlot,
AccountId *  accountId,
AccountMailAddress *  mailAddress,
AccountPassword *  password,
bool  isParentEmail,
bool  marketingFlag,
bool  offDeviceFlag,
s64  birthDateTimestatmp,
u8  gender,
u32  region,
AccountTimezone timezone,
EulaInfo eulaInfo,
s64  parentalConsentTimestamp,
u32  parentalConsentId,
Handle  completionEvent 
)

Links a new server account to a local console account.

In other words, this creates and links an NNID.

Parameters
accountSlotThe account slot number of the local console account to bind.
accountIdPointer to the account ID to use for the new server account.
mailAddressPointer to the email address to use for the new server account.
passwordPointer to the password to use for the new server account.
isParentEmailWhether or not the input email address is a parental email address.
marketingFlagWhether or not the user has consented to receiving marketing emails. ("Customized Email Offers")
offDeviceFlagWhether or not the user has allowed using the server account from other devices. ("Access from PCs and Other Devices")
birthDateTimestampA birth date timestamp in the format milliseconds elapsed since 01.01.2000 00:00:00 UTC.
parentalConsentTimestampWhen parental consent is required, the timestamp of parental consent in the format milliseconds elapsed since 01.01.2000 00:00:00 UTC.
parentalConsentIdWhen parental consent is required, the resulting ID corresponding to the consent.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_CancelTransfer()

Result ACTA_CancelTransfer ( u8  accountSlot,
Handle  completionEvent 
)

Cancels a pending server account transfer of a specific account to another device.

Parameters
accountSlotThe account slot number of the account to cancel the transfer for.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_CommitConsoleAccount()

Result ACTA_CommitConsoleAccount ( u8  accountSlot)

Sets a local console account as committed.

Parameters
accountSlotThe account slot number of the account to set as committed.

◆ ACTA_CompleteTransfer()

Result ACTA_CompleteTransfer ( u8  accountSlot,
Handle  completionEvent 
)

Finalizes a server account transfer of a specifc account to another device.

Parameters
accountSlotThe account slot number of the account to complete the transfer for.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_DeleteAccountDeviceAssociation()

Result ACTA_DeleteAccountDeviceAssociation ( u8  accountSlot,
Handle  completionEvent 
)

Deletes the account-device association for a specific account.

Parameters
accountSlotThe account slot of the account to perform this action on.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_DeleteConsoleAccount()

Result ACTA_DeleteConsoleAccount ( u8  accountSlot)

Deletes a local console account.

Parameters
accountSlotThe account slot number of the local console account to delete.

◆ ACTA_DeleteDeviceAssociation()

Result ACTA_DeleteDeviceAssociation ( u8  accountSlot,
Handle  completionEvent 
)

Deletes the device association for a specific account.

Parameters
accountSlotThe account slot of the account to perform this action on.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_DeleteServerAccount()

Result ACTA_DeleteServerAccount ( u8  accountSlot,
Handle  completionEvent 
)

Deletes a server account.

In other words, this deletes an NNID (server-side).

Parameters
accountSlotThe account slot number of the local console account bound to the server account to delete.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_EnableAccountPasswordCache()

Result ACTA_EnableAccountPasswordCache ( u8  accountSlot,
bool  enabled 
)

Enables or disables the account password cache for a specific account.

When the account password cache is enabled, entering the password is not required to log into the account.

Parameters
accountSlotThe account slot number to enable/disable the account password cache for.
enabledWhether or not to enable the account password cache.

◆ ACTA_GetSupportContext()

Result ACTA_GetSupportContext ( SupportContext supportContext,
u8  accountSlot 
)

Creates a support context for a specific account.

Parameters
supportContextPointer to write the support context data to.
accountSlotThe account slot number of the account to create the support context for.

◆ ACTA_InactivateAccountDeviceAssociation()

Result ACTA_InactivateAccountDeviceAssociation ( u8  accountSlot,
Handle  completionEvent 
)

Inactivates the account-device association for a specific account.

In other words, this deletes an NNID.

Parameters
accountSlotThe account slot number of the account to perform this action on.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_InactivateDeviceAssociation()

Result ACTA_InactivateDeviceAssociation ( u8  accountSlot,
Handle  completionEvent 
)

Inactivates the device association for a specific account.

Parameters
accountSlotThe account slot number of the account to inactive the device association for.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_InquireAccountIdAvailability()

Result ACTA_InquireAccountIdAvailability ( u8  accountSlot,
AccountId *  accountId,
Handle  completionEvent 
)

Checks whether or not the given account ID is available for creating a new server account.

Parameters
accountSlotThe account slot number of the account to perform the check for.
accountIdPointer to the input account ID to check.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_InquireBindingToExistentServerAccount()

Result ACTA_InquireBindingToExistentServerAccount ( u8  accountSlot,
AccountId *  accountId,
AccountMailAddress *  mailAddress,
AccountPassword *  password,
Handle  completionEvent 
)

Acquires information about an existing server account.

Parameters
accountSlotThe account slot number of the local console account to use for the request.
accountIdPointer to the account ID of the existing server account.
mailAddressPointer to the email address of the existing server account.
passwordPointer to the password of the existing server account.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_InvalidateAccountToken()

Result ACTA_InvalidateAccountToken ( u8  accountSlot,
u32  invalidationActionMask 
)

Invalidates a specific account's access token in different ways.

Parameters
accountSlotThe account slot number of the account to invalidate the access token for.
invalidationMaskA bitfield of the actions to take to invalidate the access token.

◆ ACTA_LoadConsoleAccount()

Result ACTA_LoadConsoleAccount ( u8  accountSlot,
bool  doPasswordCheck,
AccountPassword *  password,
bool  useNullPassword,
bool  dryRun 
)

Loads ("logs in to") a local console account.

Parameters
accountSlotThe account slot number of the local console account to load.
doPasswordCheckWhether or not the check the input password, or if one isn't provided, the cached password (if enabled).
passwordPointer to the input password.
useNullPasswordWhether or not to forcefully use NULL as the password (= no password).
dryRunWhether or not to execute this command as a "dry run," not actually changing the current account to specified one.

◆ ACTA_ReissueAccountPassword()

Result ACTA_ReissueAccountPassword ( u8  accountSlot,
Handle  completionEvent 
)

Requests the issuing of a temporary password (valid for 24 hours) to the email address associated with a specific account.

Parameters
accountSlotThe account slot number of the account to issue the temporary password for.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_ReloadAndBlockSaveData()

Result ACTA_ReloadAndBlockSaveData ( Handle  unloadFinishedEvent,
Handle  remountAndBlockEvent 
)

Cancels any running HTTP requests, saves all pending changes to the system save data, then signals unloadFinishedEvent.

Then, waits for remountAndBlockEvent, and once this has been signaled, remounts the system save, and blocks subsequent attempts to save the system save data (which can be bypassed by entering and exiting sleep mode).

Parameters
unloadFinishedEventThe event handle for ACT to signal once it has saved pending changes and has unmounted its system save.
remountAndBlockEventThe event handle for the caller to signal once ACT should remount its save data and block subsequent save attempts.

◆ ACTA_ReplaceAccountId()

Result ACTA_ReplaceAccountId ( u8  accountSlot)

Replaces the AccountId with the AssignedAccountId for a specific account.

Parameters
accountSlotThe account slot number of the account to perform this replacement for.

◆ ACTA_ReserveServerAccountDeletion()

Result ACTA_ReserveServerAccountDeletion ( u8  accountSlot,
Handle  completionEvent 
)

Initializes server-side account deletion for a specific account.

In other words, this deletes an NNID.

Parameters
accountSlotThe account slot number of the account to perform this action on.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_ReserveTransfer()

Result ACTA_ReserveTransfer ( u8  accountSlot,
DeviceInfo newDevice,
char *  operatorData,
u32  operatorSize,
Handle  completionEvent 
)

Initializes a server account transfer of a specific account to another device.

Parameters
accountSlotThe account slot number of the account to transfer the server account of.
newDevicePointer to device info of the target device.
operatorDataPointer to operator data for the transfer.
operatorSizeSize of the operator data buffer (max: 0x100)
completionEventThe event handle to signal once the request has finished.

◆ ACTA_SendConfirmationMail()

Result ACTA_SendConfirmationMail ( u8  accountSlot,
Handle  completionEvent 
)

Requests the email address confirmation mail to be resent for a specific account.

Parameters
accountSlotThe account slot number of the account for which the confirmation mail should be resent.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_SendConfirmationMailForPin()

Result ACTA_SendConfirmationMailForPin ( u8  accountSlot,
AccountMailAddress *  parentalEmail,
Handle  completionEvent 
)

Registers a parental email address to be used in case the parental controls PIN has been forgotten for a specific account.

Parameters
accountSlotThe account slot number of the account to register the fallback parental email for.
parentalEmailPointer to the parental email to use.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_SendCoppaCodeMail()

Result ACTA_SendCoppaCodeMail ( u8  accountSlot,
u32  principalId,
Handle  completionEvent 
)

Requests a COPPA code for a specific account.

Parameters
accountSlotThe account slot number for the account to send the request for.
principalIdThe principalId of the account to send the request for.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_SendMasterKeyMailForPin()

Result ACTA_SendMasterKeyMailForPin ( u8  accountSlot,
u32  masterKey,
AccountMailAddress *  parentalEmail,
Handle  completionEvent 
)

Sends the master key for resetting parental controls to a parental email for a specific account.

Parameters
accountSlotThe account slot number for the account to be used for this operation.
masterKeyThe master key to send to the parental email address.
parentalEmailPointer to the parental email address to send the master key to.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_SendPostingApprovalMail()

Result ACTA_SendPostingApprovalMail ( u8  accountSlot,
AccountMailAddress *  parentalEmail,
Handle  completionEvent 
)

Requests parental approval for a specific account.

Parameters
accountSlotThe account slot number of the account to request parental approval for.
parentalEmailPointer to a parental email to use for parental consent.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_SetAccountPasswordInput()

Result ACTA_SetAccountPasswordInput ( u8  accountSlot,
AccountPassword *  passwordInput 
)

Sets the account password input for a specific account.

This value is not stored in the save data and only resides in memory. Following up a call to this command with a call to ACTA_EnableAccountPasswordCache will lead to the account password cache being updated.

◆ ACTA_SetDefaultAccount()

Result ACTA_SetDefaultAccount ( u8  accountSlot)

Sets the default account that is loaded when the ACT module is initialized.

Parameters
accountSlotThe account slot number of the account to set as the default.

◆ ACTA_SetDefaultHostServerSettings()

Result ACTA_SetDefaultHostServerSettings ( u8  nnasType,
u8  nfsType,
u8  nfsNo 
)

Sets default server environment settings.

This will also update CFG configuration block 0x150002 accordingly.

Parameters
nnasTypeThe NNAS (Nintendo Network Authentication Server) type.
nfsTypeThe NFS (Nintendo Friend Server) type.
nfsNoThe NFS (Nintendo Friend Server) number.

◆ ACTA_SetDefaultHostServerSettingsStr()

Result ACTA_SetDefaultHostServerSettingsStr ( ActNnasSubdomain *  nnasSubdomain,
NfsTypeStr *  nfsTypeStr 
)

Sets default server environment settings (in string form).

This will also update CFG configuration block 0x150002 accordingly.

Parameters
nnasSubdomainPointer to the new NNAS (Nintendo Network Authentication Server) subdomain to use.
nfsTypeStrPointer to the new NFS (Nintendo Friend Server) type to use.

◆ ACTA_SetHostServerSettings()

Result ACTA_SetHostServerSettings ( u8  accountSlot,
u8  nnasType,
u8  nfsType,
u8  nfsNo 
)

Sets server environment settings for a specific account.

This will also update CFG configuration block 0x150002 accordingly.

Parameters
accountSlotThe account slot number of the account to set the host server settings for.
nnasTypeThe NNAS (Nintendo Network Authentication Server) type.
nfsTypeThe NFS (Nintendo Friend Server) type.
nfsNoThe NFS (Nintendo Friend Server) number.

◆ ACTA_SetHostServerSettingsStr()

Result ACTA_SetHostServerSettingsStr ( u8  accountSlot,
ActNnasSubdomain *  nnasSubdomain,
NfsTypeStr *  nfsTypeStr 
)

Sets server environment settings (in string form) for a specific account.

This will also update CFG configuration block 0x150002 accordingly.

Parameters
accountSlotThe account slot number of the account to set the host server settings for.
nnasSubdomainPointer to the new NNAS (Nintendo Network Authentication Server) subdomain to use.
nfsTypeStrPointer to the new NFS (Nintendo Friend Server) type to use.

◆ ACTA_SetIsMiiUpdated()

Result ACTA_SetIsMiiUpdated ( u8  accountSlot,
bool  isDirty 
)

Set a flag in a specifc account's data that determines whether or not it is necessary to upload the account Mii data to the account server.

Parameters
accountSlotThe account slot number of the account to set the flag for.
isDirtyWhether or not the Mii data should be reuploaded to the account server.

◆ ACTA_SetNetworkTime()

Result ACTA_SetNetworkTime ( s64  timestamp)

Set the internal network time field.

Parameters
timestampThe new server time timestamp to use. The timestamp format is milliseconds elapsed since 01.01.2000 00:00:00 UTC.

◆ ACTA_SetPersistentIdHead()

Result ACTA_SetPersistentIdHead ( u32  head)

Sets the internal base value for generating new persistent IDs.

Parameters
headThe new base value to use.

◆ ACTA_SetTransferableIdCounter()

Result ACTA_SetTransferableIdCounter ( u16  counter)

Sets the internal base value for generating new transferable IDs.

Parameters
counterThe new base value to use.

◆ ACTA_SwapAccounts()

Result ACTA_SwapAccounts ( u8  accountSlot1,
u8  accountSlot2 
)

Swaps the account slot numbers of two accounts.

Parameters
accountSlot1The first account slot number.
accountSlot2The second account slot number.

◆ ACTA_SyncAccountInfo()

Result ACTA_SyncAccountInfo ( u8  accountSlot,
Handle  completionEvent 
)

Reloads account information from the server for a specific account.

Parameters
accountSlotThe account slot number of the account to reload information for.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_UnbindServerAccount()

Result ACTA_UnbindServerAccount ( u8  accountSlot,
bool  completely 
)

Clears (but does not delete) account data for the given account slot.

The FpLocalAccountId will not be cleared.

Parameters
accountSlotThe account slot number of the account to clear.
completelyWhether or not to also clear the AssignedAccountId and AssignedPrincipalId in the account data.

◆ ACTA_UpdateAccountInfo()

Result ACTA_UpdateAccountInfo ( u8  accountSlot,
char *  xmlData,
u32  xmlDataSize,
Handle  completionEvent 
)

Updates the account info of a specific account using raw XML data.

Parameters
accountSlotThe account slot number of the account to update information for.
xmlDataPointer to the input XML data.
xmlDataSizeSize of the input XML data.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_UpdateAccountMailAddress()

Result ACTA_UpdateAccountMailAddress ( u8  accountSlot,
AccountMailAddress *  newEmail,
Handle  completionEvent 
)

Updates the email address of a specific account.

Parameters
accountSlotThe account slot number of the account to update the email address for.
newEmailPointer to the new email address to use.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_UpdateAccountPassword()

Result ACTA_UpdateAccountPassword ( u8  accountSlot,
AccountPassword *  newPassword,
Handle  completionEvent 
)

Updates the account password for a specific account.

Parameters
accountSlotThe account slot number of the account to update the password for.
passwordPointer to the new password to use.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_UpdateMiiData()

Result ACTA_UpdateMiiData ( u8  accountSlot,
CFLStoreData miiData,
MiiScreenName *  screenName 
)

Updates a specific account's Mii data and screen name.

Parameters
accountSlotThe account slot number of the account to update the Mii and screen name of.
miiDataPointer to the new Mii data to use.
screenNamePointer to the new screen name to use.

◆ ACTA_UpdateMiiImage()

Result ACTA_UpdateMiiImage ( u8  accountSlot,
u8  miiImageType,
void *  image,
u32  imageSize 
)

Updates a Mii image of a specific account.

Parameters
accountSlotThe account slot number of the account to update the Mii image for.
miiImageTypeThe type of Mii image to update.
imagePointer to the Mii image data to use.
imageSizeSize of the Mii image data.

◆ ACTA_UploadMii()

Result ACTA_UploadMii ( u8  accountSlot,
Handle  completionEvent 
)

Uploads the Mii data of a specific account to the account server.

Parameters
accountSlotThe account slot number of the account to upload the Mii for.
completionEventThe event handle to signal once the request has finished.

◆ ACTA_ValidateMailAddress()

Result ACTA_ValidateMailAddress ( u8  accountSlot,
u32  confirmationCode,
Handle  completionEvent 
)

Validates the email address of a specific account using the code received via the confirmation email.

Parameters
accountSlotThe account slot number of the account to validate the email address for.
confirmationCodeThe confirmation code received via email.
completionEventThe event handle to signal once the request has finished.

◆ actInit()

Result actInit ( bool  forceUser)

Initializes ACT services.

Parameters
forceUserWhether or not to force using the user service act:u instead of the default (admin service act:a).