Skip to main content

Unreal Plugin API Reference

Classes​

ModioCommonTypesLibrary​

Utility functions for working with mod.io types

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioCreateModLibrary​

Utility functions for creating mod and mod file parameters

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioErrorCodeLibrary​

Utility functions for working with error codes

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioErrorConditionLibrary​

Utility functions for checking error conditions

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioExampleLibrary​

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioImageLibrary​

Utility functions for loading and managing images

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioModCollectionInfoListLibrary​

Utility functions for accessing and managing lists of mod information

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioModCollectionLibrary​

Utility functions for accessing and managing mod collection data

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioModDependenciesLibrary​

Utility functions for accessing and managing mod dependencies

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioModInfoListLibrary​

Utility functions for accessing and managing lists of mod information

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioModProgressInfoLibrary​

Utility functions for accessing and managing mod operation progress

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioModTagOptionsLibrary​

Utility functions for accessing and managing mod tag options

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioMultiplayerSubsystem​

ModioMultiplayerSubsystem is a thin wrapper around the mod.io Multiplayer SDK Library, wrapping all the functions available in the SDK's public header modio/detail/ModioSDKMultiplayerLibrary.h. This subsystem also converts mod.io Multiplayer SDK types to unreal-friendly types and caches some expensive operations.

Inheritance Hierarchy​

-> EngineSubsystem-> DynamicSubsystem-> Subsystem-> Object

Experimental Feature

This class is part of an experimental feature and is subject to change.

RegisterClientModsWithServerAsync​

Adds the provided Mods to the Server's list of client mods. Intended to be called on the server. Once complete it is expected to propagate the server's list of client mods back to all clients to ensure syncronization

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioMultiplayerSubsystem_K2_RegisterClientModsWithServerAsync.png
nd_img_ModioMultiplayerSubsystem_K2_RegisterClientModsWithServerAsync.png
void K2_RegisterClientModsWithServerAsync(TArray<FModioModID> ModIDs, FAddClientModsDelegate Callback)
Parameters​
TargetModioMultiplayerSubsystem
ModIDsa list of mods that the joining client has
Callbackcallback upon completion of adding the mods to the Server's list.
Error Values​
NetworkErrorCouldn't connect to the mod.io servers

InstallOrUpdateServerModsAsync​

Gets and/or updates all of the indicated mods for this server, assuming you have provided a valid S2S token. Is called automatically by InitialalizeModioServerAsync() depending on UpdateModsOnInit state.

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioMultiplayerSubsystem_K2_InstallOrUpdateServerModsAsync.png
nd_img_ModioMultiplayerSubsystem_K2_InstallOrUpdateServerModsAsync.png
void K2_InstallOrUpdateServerModsAsync(TArray<FModioModID> Mods, FOnErrorOnlyDelegate Callback)
Parameters​
TargetModioMultiplayerSubsystem
Modsthe mods to get or update
Callbackcallback executed upon completion of all mods

InitializeServerAsync​

Initializes the SDK in the context of a dedicated server. Loads the state of all mods installed on the system. Loads or gets all mods indicated in the initialization param, optionally updating to the latest versions.

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioMultiplayerSubsystem_K2_InitializeServerAsync.png
nd_img_ModioMultiplayerSubsystem_K2_InitializeServerAsync.png
void K2_InitializeServerAsync(FModioServerInitializeOptions ServerOptions, FOnErrorOnlyDelegate OnInitComplete)
Parameters​
TargetModioMultiplayerSubsystem
ServerOptions
On Init Complete
Error Values​
NetworkErrorCouldn't connect to mod.io servers
FilesystemErrorCouldn't create the user data or common data folders
ConfigurationErrorInitializeOptions contains an invalid value. Inspect ec.value() to determine what was incorrect
SDKAlreadyInitializedSDK already initialized

GetRegisteredClientMods​

Returns the full list of mods that have been registered with the server via AddClientModsToServerAsync

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioMultiplayerSubsystem_K2_GetRegisteredClientMods.png
nd_img_ModioMultiplayerSubsystem_K2_GetRegisteredClientMods.png
TSet<FModioModID> K2_GetRegisteredClientMods()
Parameters​
TargetModioMultiplayerSubsystem
Returns​

A TSet of ModIDs representing the Mods registered with the server.

ClearRegisteredClientMods​

Clears the server's list of client mods. Intended only to be called when the Server can safely flush its list of client mods, if you want to minimize the number of mods you send to clients/remove mods no longer needed.

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioMultiplayerSubsystem_K2_ClearRegisteredClientMods.png
nd_img_ModioMultiplayerSubsystem_K2_ClearRegisteredClientMods.png
void K2_ClearRegisteredClientMods()
Parameters​
TargetModioMultiplayerSubsystem

ModioPlatformHelpersLibrary​

Blueprint library which contains a variety of Platform-based helpers for mapping initialization functionality (ie Auth, Portal, Platform etc) based off Platform.

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioPortalInterface​

Interface for objects that provide portal/platform specific implementations

Inheritance Hierarchy​

-> Interface-> Object

Should Show SKUInformation​

nd_img_ModioPortalInterface_ShouldShowSKUInformation.png
nd_img_ModioPortalInterface_ShouldShowSKUInformation.png
bool ShouldShowSKUInformation()
Parameters​
TargetModioPortalInterface
Returns​

true if the UI should show SKU information, false otherwise

Sanitize File Path​

nd_img_ModioPortalInterface_SanitizeFilePath.png
nd_img_ModioPortalInterface_SanitizeFilePath.png
FString SanitizeFilePath(FString FilePath)

Request Store Purchase​

nd_img_ModioPortalInterface_RequestStorePurchase.png
nd_img_ModioPortalInterface_RequestStorePurchase.png
bool RequestStorePurchase(FString SKU, FStorePurchaseDelegate Callback)

Request SKUMappings​

nd_img_ModioPortalInterface_RequestSKUMappings.png
nd_img_ModioPortalInterface_RequestSKUMappings.png
void RequestSKUMappings(FSKUMappingsRequestedDelegate Callback)

Request Open Store​

nd_img_ModioPortalInterface_RequestOpenStore.png
nd_img_ModioPortalInterface_RequestOpenStore.png
EModioOpenStoreResult RequestOpenStore(FString SKU, FStoreClosedDelegate Callback)

Request Entitlement Params​

nd_img_ModioPortalInterface_RequestEntitlementParams.png
nd_img_ModioPortalInterface_RequestEntitlementParams.png
void RequestEntitlementParams(TMap<FString,FString> Params, FEntitlementParamsRequestedDelegate Callback)
Parameters​
TargetModioPortalInterface
Paramscan provide additional parameters for login
Callbackwill be called with the entitlement parameters

Request Auth Token​

nd_img_ModioPortalInterface_RequestAuthToken.png
nd_img_ModioPortalInterface_RequestAuthToken.png
void RequestAuthToken(TMap<FString,FString> Params, FAuthTokenRequestedDelegate Callback)
Parameters​
TargetModioPortalInterface
Paramscan provide additional parameters for login
Callbackwill be called with the auth token

Prepare Filesystem to Use Path​

nd_img_ModioPortalInterface_PrepareFilesystemToUsePath.png
nd_img_ModioPortalInterface_PrepareFilesystemToUsePath.png
bool PrepareFilesystemToUsePath(FString UgcPath)

Notify Store Browsing​

nd_img_ModioPortalInterface_NotifyStoreBrowsing.png
nd_img_ModioPortalInterface_NotifyStoreBrowsing.png
void NotifyStoreBrowsing(bool bEnabled)
Parameters​
TargetModioPortalInterface
bEnabledwhether the store is being browsed or not

Initialize Platform​

nd_img_ModioPortalInterface_InitializePlatform.png
nd_img_ModioPortalInterface_InitializePlatform.png
void InitializePlatform()

Get Extended Initialization Params​

nd_img_ModioPortalInterface_GetExtendedInitializationParams.png
nd_img_ModioPortalInterface_GetExtendedInitializationParams.png
TMap<FString,FString> GetExtendedInitializationParams()

Get Extended Auth Params​

nd_img_ModioPortalInterface_GetExtendedAuthParams.png
nd_img_ModioPortalInterface_GetExtendedAuthParams.png
TMap<FString,FString> GetExtendedAuthParams()

ModioPresetFilterParamsLibrary​

Blueprint library for working with preset filter parameters

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioReportLibrary​

Utility library for creating content reports within the mod.io platform. This class contains methods for reporting various types of content (e.g., game, user, or mod).

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioSDKLibrary​

A utility class providing various helper functions for mod.io SDK integration in Unreal Engine.

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioStorageInfoLibrary​

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioSubmissionExtensionLibrary​

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object

SubmitModChangesAsync​

Edits the parameters of a mod, by updating any fields set in the Params object to match the passed-in values. Fields left empty on the Params object will not be updated. This method also accepts a Png binary file for uploading a new logo.

nd_img_ModioSubmissionExtensionLibrary_K2_SubmitModChangesFromMemoryAsync.png
nd_img_ModioSubmissionExtensionLibrary_K2_SubmitModChangesFromMemoryAsync.png
void K2_SubmitModChangesFromMemoryAsync(FModioModID Mod, FModioEditModParams Params, TArray<uint8> PngData, FOnGetModInfoDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubmissionExtensionLibrary
ModThe ID of the mod you wish to edit
ParamsDescriptor containing the fields that should be altered.
PngData
CallbackThe callback invoked when the changes have been submitted, containing an optional updated ModInfo object if the edits were performed successfully
Error Values​
GenericError::SDKNotInitializedSDK not initialized
UserDataError::InvalidUserNo authenticated user
NetworkErrorCouldn't connect to mod.io servers
InvalidArgsErrorSome fields in Params did not pass validation

ModioSubsystem​

ModioSubsystem is a thin wrapper around the mod.io SDK, wrapping all the functions available in the SDK's public header modio/ModioSDK.h. This subsystem also converts mod.io SDK types to unreal-friendly types and caches some expensive operations.

Inheritance Hierarchy​

-> EngineSubsystem-> DynamicSubsystem-> Subsystem-> Object

Set Log Level​

Sets the global logging level.

nd_img_ModioSubsystem_SetLogLevel.png
nd_img_ModioSubsystem_SetLogLevel.png
void SetLogLevel(EModioLogLevel UnrealLogLevel)
Parameters​
TargetModioSubsystem
UnrealLogLevelDetermines which messages to include in the log output. Messages with a log level below the specified value will not be displayed.

Run Pending Handlers​

Runs any pending mod.io work on the calling thread and invokes any callbacks passed to asynchronous operations.

nd_img_ModioSubsystem_RunPendingHandlers.png
nd_img_ModioSubsystem_RunPendingHandlers.png
void RunPendingHandlers()
Parameters​
TargetModioSubsystem

Query User Subscriptions​

Fetches the local view of the user's subscribed mods, including mods that are subscribed but not yet installed

nd_img_ModioSubsystem_QueryUserSubscriptions.png
nd_img_ModioSubsystem_QueryUserSubscriptions.png
TMap<FModioModID,FModioModCollectionEntry> QueryUserSubscriptions()
Parameters​
TargetModioSubsystem
Returns​

TMap<FModioModID, FModioModCollectionEntry> providing information about the subscribed mods

Query User Purchased Mods​

Returns the user's purchased mods. FetchUserPurchasesAsync must be called first to populate the cache.

nd_img_ModioSubsystem_QueryUserPurchasedMods.png
nd_img_ModioSubsystem_QueryUserPurchasedMods.png
TMap<FModioModID,FModioModInfo> QueryUserPurchasedMods()
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
Returns​

A TMap<FModioModID, FModioModInfo> of all purchases a user has made.

Query User Installations​

Fetches the subset of the user's subscribed mods that are installed and ready for loading

nd_img_ModioSubsystem_QueryUserInstallations.png
nd_img_ModioSubsystem_QueryUserInstallations.png
TMap<FModioModID,FModioModCollectionEntry> QueryUserInstallations(bool bIncludeOutdatedMods)
Parameters​
TargetModioSubsystem
bIncludeOutdatedModsInclude subscribed mods that are installed but have an updated version on the server that has not yet been installed
Returns​

TMap<FModioModID, FModioModCollectionEntry> providing information about the subscribed mods

Query System Installations​

Fetches all mods installed on the system, including those installed by other users.

nd_img_ModioSubsystem_QuerySystemInstallations.png
nd_img_ModioSubsystem_QuerySystemInstallations.png
TMap<FModioModID,FModioModCollectionEntry> QuerySystemInstallations()
Parameters​
TargetModioSubsystem
Returns​

A TMap<FModioModID, FModioModCollectionEntry> of all mods installed on the system, including those installed by other users.

Prioritize Transfer for Mod​

Cancels or suspends the current mod update, installation, or upload, and begins processing a pending operation for the specified mod ID

nd_img_ModioSubsystem_PrioritizeTransferForMod.png
nd_img_ModioSubsystem_PrioritizeTransferForMod.png
FModioErrorCode PrioritizeTransferForMod(FModioModID ModToPrioritize)
Requirements​
  • initialized-sdk
  • authenticated-user
Parameters​
TargetModioSubsystem
ModToPrioritizeThe ID for the mod to prioritize
Returns​

Error code indicating the status of the prioritization request. Will be empty if the prioritization was successful or if the mod was already being processed

Error Values​
InvalidArgsErrorThe supplied mod ID is invalid or not present in the list of pending operations

Kill Background Thread​

Kills the background thread if it is running

nd_img_ModioSubsystem_KillBackgroundThread.png
nd_img_ModioSubsystem_KillBackgroundThread.png
void KillBackgroundThread()
Parameters​
TargetModioSubsystem

VerifyUserAuthenticationAsync​

Queries the server to verify the state of the currently authenticated user if there is one present

nd_img_ModioSubsystem_K2_VerifyUserAuthenticationAsync.png
nd_img_ModioSubsystem_K2_VerifyUserAuthenticationAsync.png
void K2_VerifyUserAuthenticationAsync(FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
Parameters​
TargetModioSubsystem
CallbackCallback invoked with the results of the verification process. An empty ModioErrorCode indicates successful verification i.e. the mod.io server was contactable and the user's authentication remains valid.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
UserNotAuthenticatedErrorNo authenticated user

UnsubscribeFromModCollectionAsync​

Sends a request to the mod.io server to remove the specified mod collection to the user's list of subscriptions.

nd_img_ModioSubsystem_K2_UnsubscribeFromModCollectionAsync.png
nd_img_ModioSubsystem_K2_UnsubscribeFromModCollectionAsync.png
void K2_UnsubscribeFromModCollectionAsync(FModioModCollectionID ModCollectionToUnsubscribeFrom, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
  • management-enabled
Parameters​
TargetModioSubsystem
ModCollectionToUnsubscribeFromMod Collection ID of the mod collection requiring unsubscription.
CallbackCallback providing a status code to indicate if the unsubscription was successful.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection does not exist or was deleted

UnsubscribeFromModAsync​

Sends a request to the mod.io server to remove the specified mod from the user's list of subscriptions. If no other local users are subscribed to the specified mod this function will also mark the mod for uninstallation by the SDK.

nd_img_ModioSubsystem_K2_UnsubscribeFromModAsync.png
nd_img_ModioSubsystem_K2_UnsubscribeFromModAsync.png
void K2_UnsubscribeFromModAsync(FModioModID ModToUnsubscribeFrom, FOnErrorOnlyDelegate OnUnsubscribeComplete)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModToUnsubscribeFromMod ID of the mod requiring unsubscription.
On Unsubscribe CompleteCallback invoked when the unsubscription request is completed.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
EntityNotFoundErrorSpecified mod does not exist or was deleted
UserNotAuthenticatedErrorNo authenticated user
InvalidArgsErrorThe supplied mod ID is invalid

UnmuteUserAsync​

Unmute a user. This allows mod.io to display mods authored by the now unmuted user when performing searches.

nd_img_ModioSubsystem_K2_UnmuteUserAsync.png
nd_img_ModioSubsystem_K2_UnmuteUserAsync.png
void K2_UnmuteUserAsync(FModioUserID UserID, FOnErrorOnlyDelegate Callback)
Requirements​
  • authenticated-user
  • initialized-sdk
Parameters​
TargetModioSubsystem
UserIDID of the user to unmute
CallbackCallback providing a status code indicating success or failure of unmuting the user.
Error Values​
SDKNotInitializedSDK not initialized
UserNotAuthenticatedErrorNo authenticated user
InvalidArgsErrorThe supplied user ID is invalid

UnfollowUserAsync​

Unfollows the given user for the currently authenticated user.

nd_img_ModioSubsystem_K2_UnfollowUserAsync.png
nd_img_ModioSubsystem_K2_UnfollowUserAsync.png
void K2_UnfollowUserAsync(FModioUserID UserId, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • user-authenticated
Parameters​
TargetModioSubsystem
UserIdThe UserID of the user that should be unfollowed.
Callbacka callback invoked upon completion, indicating if the request was successful.
Error Values​
GenericError::SDKNotInitializedSDK not initialized
UserDataError::InvalidUserUser not authenticated
HttpError::RateLimitedToo many frequent calls to the API. Wait some time and try again.
NetworkErrorCouldn't connect to mod.io servers

UnfollowModCollectionAsync​

Sends a request to the mod.io server to remove the specified mod collection to the user's list of followed collections.

nd_img_ModioSubsystem_K2_UnfollowModCollectionAsync.png
nd_img_ModioSubsystem_K2_UnfollowModCollectionAsync.png
void K2_UnfollowModCollectionAsync(FModioModCollectionID ModCollectionToUnfollow, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
  • management-enabled
  • mod-not-pending-uninstall
Parameters​
TargetModioSubsystem
ModCollectionToUnfollowMod Collection ID of the mod collection to unfollow.
CallbackCallback invoked when the unfollow request is completed.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection does not exist or was deleted

SubscribeToModCollectionAsync​

Sends a request to the mod.io server to add the specified mod collection to the user's list of subscriptions.

nd_img_ModioSubsystem_K2_SubscribeToModCollectionAsync.png
nd_img_ModioSubsystem_K2_SubscribeToModCollectionAsync.png
void K2_SubscribeToModCollectionAsync(FModioModCollectionID ModCollectionToSubscribeTo, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
  • management-enabled
  • mod-not-pending-uninstall
Parameters​
TargetModioSubsystem
ModCollectionToSubscribeToMod Collection ID of the mod collection requiring a subscription.
CallbackCallback providing a status code to indicate if the subscription was successful.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection does not exist or was deleted

SubscribeToModAsync​

Sends a request to the mod.io server to add the specified mod to the user's list of subscriptions, and marks the mod for local installation by the SDK

nd_img_ModioSubsystem_K2_SubscribeToModAsync.png
nd_img_ModioSubsystem_K2_SubscribeToModAsync.png
void K2_SubscribeToModAsync(FModioModID ModToSubscribeTo, bool IncludeDependencies, FOnErrorOnlyDelegate OnSubscribeComplete)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModToSubscribeToMod ID of the mod requiring a subscription.
IncludeDependenciesSubscribe to all dependencies as well.
On Subscribe CompleteCallback invoked when the subscription request is completed.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
EntityNotFoundErrorSpecified mod does not exist or was deleted
UserNotAuthenticatedErrorNo authenticated user
InvalidArgsErrorThe supplied mod ID is invalid

SubmitNewSourceFileForMod​

Queues the upload of source files for a modfile to defined platforms. This function takes a Modio::CreateSourceFileParams struct that defines the options needed to upload the source files. The files present in the root folder defined in the params will be compressed to a .zip archive and uploaded.

nd_img_ModioSubsystem_K2_SubmitNewSourceFileForMod.png
nd_img_ModioSubsystem_K2_SubmitNewSourceFileForMod.png
void K2_SubmitNewSourceFileForMod(FModioModID Mod, FModioCreateSourceFileParams Params)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
  • management-enabled
Parameters​
TargetModioSubsystem
ModThe mod to upload source files for
ParamsDescriptor containing information regarding the modfile
Error Values​
GenericError::BadParameterThe supplied mod ID is invalid

SubmitNewModFileForMod​

Queues the upload of a new modfile release for the specified mod using the submitted parameters. This function takes an ModioCreateModFileParams object to specify the path to the root folder of the new modfile. The plugin will compress the folder's contents into a .zip archive and queue the result for upload. When the upload completes, a mod management event will be triggered. Note the plugin is also responsible for decompressing the archive upon its installation at a later point in time.

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioSubsystem_K2_SubmitNewModFileForMod.png
nd_img_ModioSubsystem_K2_SubmitNewModFileForMod.png
void K2_SubmitNewModFileForMod(FModioModID Mod, FModioCreateModFileParams Params)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModThe ID of the mod you are submitting a file for
ParamsInformation about the mod file being created, including the root path of the directory that will be archived
Error Values​
UserNotAuthenticatedErrorNo authenticated user
InvalidArgsErrorThe supplied mod ID is invalid

SubmitNewModAsync​

Requests the creation of a new mod on the server with the specified parameters

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioSubsystem_K2_SubmitNewModAsync.png
nd_img_ModioSubsystem_K2_SubmitNewModAsync.png
void K2_SubmitNewModAsync(FModioModCreationHandle Handle, FModioCreateModParams Params, FOnSubmitNewModDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
HandleThe ModioModCreationHandle for this submission. Once this method invokes your callback indicating success, the ModioModCreationHandle is invalid for the rest of the session. You should request a new one for the next submission attempt.
ParamsInformation about the new mod to create
CallbackCallback providing a status code and an optional ModioModID for the newly created mod
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
InvalidArgsErrorSome fields in Params did not pass validation
UserNotAuthenticatedErrorNo authenticated user

SubmitModRatingAsync​

Submits a rating for a mod on behalf of the current user. Submit a neutral rating to effectively clear a rating already submitted by a user. Submitting other values will overwrite any existing rating submitted by this user.

nd_img_ModioSubsystem_K2_SubmitModRatingAsync.png
nd_img_ModioSubsystem_K2_SubmitModRatingAsync.png
void K2_SubmitModRatingAsync(FModioModID Mod, EModioRating Rating, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModThe mod the user is rating
RatingThe rating the user wishes to submit
CallbackCallback providing a status code indicating success or failure of the rating submission
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
EntityNotFoundErrorSpecified mod does not exist or was deleted
UserNotAuthenticatedErrorNo authenticated user
InvalidArgsErrorThe supplied mod ID is invalid

SubmitModCollectionRatingAsync​

Submits a rating for a mod collection on behalf of the current user. Submit a neutral rating to effectively clear a rating already submitted by a user. Submitting other values will overwrite any existing rating submitted by this user.

nd_img_ModioSubsystem_K2_SubmitModCollectionRatingAsync.png
nd_img_ModioSubsystem_K2_SubmitModCollectionRatingAsync.png
void K2_SubmitModCollectionRatingAsync(FModioModCollectionID ModCollectionId, EModioRating Rating, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
Parameters​
TargetModioSubsystem
ModCollectionIdThe mod collection the user is rating
RatingThe rating the user wishes to submit
CallbackCallback providing a status code indicating success or failure of the rating submission
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection does not exist or was deleted

SubmitModChangesAsync​

Edits the parameters of a mod by updating any fields set in the Params object to match the passed-in values. Fields left empty on the Params object will not be updated.

nd_img_ModioSubsystem_K2_SubmitModChangesAsync.png
nd_img_ModioSubsystem_K2_SubmitModChangesAsync.png
void K2_SubmitModChangesAsync(FModioModID Mod, FModioEditModParams Params, FOnGetModInfoDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModThe ID of the mod you wish to edit
ParamsDescriptor containing the fields that should be altered.
CallbackThe callback invoked when the changes have been submitted containing an optional updated ModioModInfo object if the edits were performed successfully
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
InvalidArgsErrorSome fields in Params did not pass validation
UserNotAuthenticatedErrorNo authenticated user
InvalidArgsErrorThe supplied mod ID is invalid

ShutdownAsync​

Cancels any running internal operations, frees SDK resources, and invokes any pending callbacks with an OperationCanceled error category. This function will NOT block while the deinitialization occurs.

nd_img_ModioSubsystem_K2_ShutdownAsync.png
nd_img_ModioSubsystem_K2_ShutdownAsync.png
void K2_ShutdownAsync(FOnErrorOnlyDelegate OnShutdownComplete)
Parameters​
TargetModioSubsystem
On Shutdown CompleteCallback invoked when the plugin is shut down and calling RunPendingHandlers is no longer required

SetLanguage​

Set language to get corresponding data from the server

nd_img_ModioSubsystem_K2_SetLanguage.png
nd_img_ModioSubsystem_K2_SetLanguage.png
void K2_SetLanguage(EModioLanguage Locale)
Parameters​
TargetModioSubsystem
LocaleLanguage to set

RequestEmailAuthCodeAsync​

Begins email authentication for the current session by requesting a one-time code be sent to the specified email address.

nd_img_ModioSubsystem_K2_RequestEmailAuthCodeAsync.png
nd_img_ModioSubsystem_K2_RequestEmailAuthCodeAsync.png
void K2_RequestEmailAuthCodeAsync(FModioEmailAddress EmailAddress, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • no-authenticated-user
Parameters​
TargetModioSubsystem
EmailAddressThe email address to send the code to
CallbackCallback providing a status code indicating the outcome of the request
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
UserAlreadyAuthenticatedErrorCurrent user is already authenticated. De-authenticate the current user with ClearUserDataAsync, and re-initialize the SDK by calling ShutdownAsync then InitializeAsync.

ReportContentAsync​

Sends a content report to mod.io. When using this function, please inform your users that if they provide their contact name or details in the Report parameter, this data may be shared with the person responsible for the content being reported. For more information on what data in a report will be shared with whom, please see our website's report form.

nd_img_ModioSubsystem_K2_ReportContentAsync.png
nd_img_ModioSubsystem_K2_ReportContentAsync.png
void K2_ReportContentAsync(FModioReportParams Report, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
Parameters​
TargetModioSubsystem
ReportInformation about the content being reported and a description of the report.
CallbackCallback providing a status code to indicate successful submission of the report.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
InvalidArgsErrorRequired information in the report did not pass validation
InvalidArgsErrorThe mod ID, game ID, or user ID supplied to Report is invalid

RemoveFromTempModSet​

Remove mods from a temp mod set. Every temp mod specified by ModIds will be uninstalled unless the user is already subscribed.

nd_img_ModioSubsystem_K2_RemoveFromTempModSet.png
nd_img_ModioSubsystem_K2_RemoveFromTempModSet.png
FModioErrorCode K2_RemoveFromTempModSet(TArray<FModioModID> ModIds)
Requirements​
  • initialized-sdk
  • mod-management-enabled
  • temp-mod-set-initialized
Parameters​
TargetModioSubsystem
ModIdsTArray of ModioModIDs to remove as temp mods
Returns​

Error code indicating the status of the TempModSet. Will be empty if it was successful

Error Values​
SDKNotInitializedSDK not initialized
ModManagementDisabledMod management not enabled
TempModSetNotInitializedTempModSet not initialized

RefreshUserEntitlementsAsync​

Requests mod.io refresh the available entitlements for the current user purchased through the portal and currently authenticated.

nd_img_ModioSubsystem_K2_RefreshUserEntitlementsAsync.png
nd_img_ModioSubsystem_K2_RefreshUserEntitlementsAsync.png
void K2_RefreshUserEntitlementsAsync(FModioEntitlementParams Params, FOnRefreshUserEntitlementsDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ParamsAdditional parameters.
CallbackCallback providing an error code indicating success or failure of the refresh operation.

QueryUserProfile​

Fetches the currently authenticated mod.io user profile if there is one

nd_img_ModioSubsystem_K2_QueryUserProfile.png
nd_img_ModioSubsystem_K2_QueryUserProfile.png
FModioOptionalUser K2_QueryUserProfile()
Parameters​
TargetModioSubsystem
Returns​

ModioOptionalUser object containing profile information

QueryTempModSet​

Query every system and temp mod in TempModSet

nd_img_ModioSubsystem_K2_QueryTempModSet.png
nd_img_ModioSubsystem_K2_QueryTempModSet.png
TMap<FModioModID,FModioModCollectionEntry> K2_QueryTempModSet()
Parameters​
TargetModioSubsystem
Returns​

TMap using ModioModID as keys and ModioModCollectionEntry objects providing information about mods in TempModSet

QueryStorageInfo​

Fetches storage related information, including total availability and how much is being consumed by mod installations.

nd_img_ModioSubsystem_K2_QueryStorageInfo.png
nd_img_ModioSubsystem_K2_QueryStorageInfo.png
FModioStorageInfo K2_QueryStorageInfo()
Parameters​
TargetModioSubsystem
Returns​

An FModioStorageInfo structure containing storage information

QueryCurrentModUpdate​

Provides progress information for a mod installation or update operation if one is currently in progress.

nd_img_ModioSubsystem_K2_QueryCurrentModUpdate.png
nd_img_ModioSubsystem_K2_QueryCurrentModUpdate.png
FModioOptionalModProgressInfo K2_QueryCurrentModUpdate()
Parameters​
TargetModioSubsystem
Returns​

ModioOptionalModProgressInfo object containing information regarding the progress of the installation operation.

PurchaseModWithEntitlementAsync​

Attempts to purchase a specified mod by consuming an existing, un-consumed entitlement that the user has from the current portal. Purchasing a mod will add a subscription to it. If the user does not have an existing entitlement, the purchase will fail. It is recommended to call GetAvailableUserEntitlementsAsync to query if the current user has an available entitlement prior to this call.

nd_img_ModioSubsystem_K2_PurchaseModWithEntitlementAsync.png
nd_img_ModioSubsystem_K2_PurchaseModWithEntitlementAsync.png
void K2_PurchaseModWithEntitlementAsync(FModioModID ModID, FModioEntitlementParams EntitlementParams, FOnPurchaseModDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModIDID of the mod to purchase
EntitlementParamsPortal-specific additional parameters
CallbackCallback invoked with purchase information once the purchase is completed.

PurchaseModAsync​

Purchases a mod for the current player

nd_img_ModioSubsystem_K2_PurchaseModAsync.png
nd_img_ModioSubsystem_K2_PurchaseModAsync.png
void K2_PurchaseModAsync(FModioModID ModID, FModioUnsigned64 ExpectedPrice, FOnPurchaseModDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModIDID of the mod to purchase
ExpectedPriceThe price the user is expected to pay for the mod, generally ModioModInfo.Price. This ensures that there is consistency between the displayed price and the price in the backend. If there is a mismatch, the purchase will fail.
CallbackCallback invoked with purchase information once the purchase is completed.

PreviewExternalUpdatesAsync​

Retrieve a list of updates between the users local mod state, and the server-side state. This allows you to identify which mods will be modified by the next call to FetchExternalUpdatesAsync in order to perform any content management (such as unloading files) that might be required.

nd_img_ModioSubsystem_K2_PreviewExternalUpdatesAsync.png
nd_img_ModioSubsystem_K2_PreviewExternalUpdatesAsync.png
void K2_PreviewExternalUpdatesAsync(FOnPreviewExternalUpdatesDelegate OnPreviewDone)
Parameters​
TargetModioSubsystem
On Preview DoneCallback invoked when the external state has been retrieved. It contains a dictionary with ModID as keys and change maps as values. Empty when there are no differences between local and the mod.io API service

MuteUserAsync​

Mute a user. This will prevent mod.io from returning mods authored by the muted user. when performing searches.

nd_img_ModioSubsystem_K2_MuteUserAsync.png
nd_img_ModioSubsystem_K2_MuteUserAsync.png
void K2_MuteUserAsync(FModioUserID UserID, FOnErrorOnlyDelegate Callback)
Requirements​
  • authenticated-user
  • initialized-sdk
Parameters​
TargetModioSubsystem
UserIDID of the User to mute
CallbackCallback providing a status code indicating success or failure of muting the user.
Error Values​
SDKNotInitializedSDK not initialized
UserNotAuthenticatedErrorNo authenticated user
InvalidArgsErrorThe supplied user ID is invalid

MetricsSessionStartAsync​

Start a metrics play session

Premium Feature

This function requires the Metrics premium feature. Sign up to one of our advanced service tiers to activate it, or contact us at developers@mod.io for more information.

nd_img_ModioSubsystem_K2_MetricsSessionStartAsync.png
nd_img_ModioSubsystem_K2_MetricsSessionStartAsync.png
void K2_MetricsSessionStartAsync(FModioMetricsSessionParams Params, FOnErrorOnlyDelegate Callback)
Parameters​
TargetModioSubsystem
ParamsModioMetricsSessionParams struct containing information of what and how to start a metrics session
CallbackCallback providing an error code indicating success or failure of the session start operation
Error Values​
SDKNotInitializedSDK not initialized
RateLimitedToo many frequent calls to the API. Wait some time and try again.
InvalidUserNo authenticated user
SessionNotInitializedMetrics session has not yet been initialized
SessionIsActiveMetrics session is currently active and running
BadParameterOne or more values in the Metric Session Parameters are invalid

MetricsSessionSendHeartbeatOnceAsync​

Sends a single heartbeat to the mod.io server to indicate a session is still active

Premium Feature

This function requires the Metrics premium feature. Sign up to one of our advanced service tiers to activate it, or contact us at developers@mod.io for more information.

nd_img_ModioSubsystem_K2_MetricsSessionSendHeartbeatOnceAsync.png
nd_img_ModioSubsystem_K2_MetricsSessionSendHeartbeatOnceAsync.png
void K2_MetricsSessionSendHeartbeatOnceAsync(FOnErrorOnlyDelegate Callback)
Parameters​
TargetModioSubsystem
CallbackCallback providing an error code indicating success or failure of the session heartbeat operation
Error Values​
SDKNotInitializedSDK not initialized
InvalidUserNo authenticated user
SessionNotInitializedMetrics session has not yet been initialized
SessionIsNotActiveMetrics session is not currently running. Call MetricsSessionStartAsync before attempting to sending a heartbeat.

MetricsSessionSendHeartbeatAtIntervalAsync​

Sends a constant heartbeat at a given interval to the mod.io server to indicate a session is still active

nd_img_ModioSubsystem_K2_MetricsSessionSendHeartbeatAtIntervalAsync.png
nd_img_ModioSubsystem_K2_MetricsSessionSendHeartbeatAtIntervalAsync.png
void K2_MetricsSessionSendHeartbeatAtIntervalAsync(FModioUnsigned64 IntervalSeconds, FOnErrorOnlyDelegate Callback)
Parameters​
TargetModioSubsystem
IntervalSecondsThe frequency in seconds to send a heartbeat to the mod.io server
CallbackCallback providing an error code indicating success or failure of the session heartbeat operation
Error Values​
SDKNotInitializedSDK not initialized
InvalidUserNo authenticated user
SessionNotInitializedMetrics session has not yet been initialized
SessionIsNotActiveMetrics session is not currently running. Call MetricsSessionStartAsync before attempting to sending a heartbeat.

MetricsSessionEndAsync​

Ends a metrics play session

Premium Feature

This function requires the Metrics premium feature. Sign up to one of our advanced service tiers to activate it, or contact us at developers@mod.io for more information.

nd_img_ModioSubsystem_K2_MetricsSessionEndAsync.png
nd_img_ModioSubsystem_K2_MetricsSessionEndAsync.png
void K2_MetricsSessionEndAsync(FOnErrorOnlyDelegate Callback)
Parameters​
TargetModioSubsystem
CallbackCallback providing an error code indicating success or failure of the session end operation
Error Values​
SDKNotInitializedSDK not initialized
RateLimitedToo many frequent calls to the API. Wait some time and try again.
InvalidUserNo authenticated user
SessionNotInitializedMetrics session has not yet been initialized
SessionIsNotActiveMetrics session is not currently running. Call MetricsSessionStartAsync before attempting to end a session.

ListUserGamesAsync​

Provides a list of games for the current user that match the parameters specified in the filter

nd_img_ModioSubsystem_K2_ListUserGamesAsync.png
nd_img_ModioSubsystem_K2_ListUserGamesAsync.png
void K2_ListUserGamesAsync(FModioFilterParams Filter, FOnListUserGamesDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
Parameters​
TargetModioSubsystem
FilterModioFilterParams object containing any filters that should be applied to the query
CallbackCallback invoked with a status code and an optional ModioGameInfoList providing game profiles
Error Values​
NetworkErrorCouldn't connect to mod.io servers
UserNotAuthenticatedErrorNo authenticated user
SDKNotInitializedSDK not initialized

ListUserFollowedModCollectionsAsync​

Provides a list of followed mod collections for the current game, that match the parameters specified in the filter.

nd_img_ModioSubsystem_K2_ListUserFollowedModCollectionsAsync.png
nd_img_ModioSubsystem_K2_ListUserFollowedModCollectionsAsync.png
void K2_ListUserFollowedModCollectionsAsync(FModioFilterParams Filter, FOnListFollowedModCollectionsDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
FilterFModioFilterParams object containing any filters that should be applied to the query.
CallbackCallback providing a status code and an optional FModioModCollectionInfoList object with the mod collection's extended information.
Error Values​
NetworkErrorCouldn't connect to mod.io servers

ListUserCreatedModsAsync​

Provides a list of mods that the user has submitted or is a team member of for the current game, applying the parameters specified in the filter.

nd_img_ModioSubsystem_K2_ListUserCreatedModsAsync.png
nd_img_ModioSubsystem_K2_ListUserCreatedModsAsync.png
void K2_ListUserCreatedModsAsync(FModioFilterParams Filter, FOnListUserCreatedModsDelegate Callback)
Requirements​
  • authenticated-user
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
FilterFilter to apply when listing the user's created mods.
CallbackCallback invoked when the call succeeds, or when an error occurs.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
RateLimitedToo many frequent calls to the API. Wait some time and try again.

ListModCollectionsAsync​

Provides a list of mod collections for the current game, that match the parameters specified in the filter.

nd_img_ModioSubsystem_K2_ListModCollectionsAsync.png
nd_img_ModioSubsystem_K2_ListModCollectionsAsync.png
void K2_ListModCollectionsAsync(FModioFilterParams Filter, FOnListModCollectionsDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
FilterModioFilterParams object containing any filters that should be applied to the query.
CallbackCallback invoked with a status code and an optional FModioModCollectionInfoList providing mod collection profiles.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized

ListAllModsAsync​

Provides a list of mods for the current game that match the parameters specified in the filter

nd_img_ModioSubsystem_K2_ListAllModsAsync.png
nd_img_ModioSubsystem_K2_ListAllModsAsync.png
void K2_ListAllModsAsync(FModioFilterParams Filter, FOnListAllModsDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
FilterModioFilterParams object containing any filters that should be applied to the query
CallbackCallback invoked with a status code and an optional ModioModInfoList providing mod profiles
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized

InitTempModSet​

Install every temp mod specified by ModIds if not already installed.

nd_img_ModioSubsystem_K2_InitTempModSet.png
nd_img_ModioSubsystem_K2_InitTempModSet.png
FModioErrorCode K2_InitTempModSet(TArray<FModioModID> ModIds)
Requirements​
  • initialized-sdk
  • mod-management-enabled
Parameters​
TargetModioSubsystem
ModIdsTArray of ModioModIDs to install as temp mods
Returns​

Error code indicating the status of the TempModSet. Will be empty if it was successful

Error Values​
SDKNotInitializedSDK not initialized
ModManagementDisabledMod management not enabled

InitializeAsync​

Initializes the SDK for the given user. Loads the state of mods installed on the system as well as the set of mods the specified user has installed on this device

nd_img_ModioSubsystem_K2_InitializeAsync.png
nd_img_ModioSubsystem_K2_InitializeAsync.png
void K2_InitializeAsync(FModioInitializeOptions InitializeOptions, FOnErrorOnlyDelegate OnInitComplete)
Parameters​
TargetModioSubsystem
InitializeOptionsParameters to the function packed as a struct where all members needs to be initialized for the call to succeed
On Init CompleteCallback which will be invoked with the result of initialization
Error Values​
NetworkErrorCouldn't connect to mod.io servers
FilesystemErrorCouldn't create the user data or common data folders
ConfigurationErrorInitializeOptions contains an invalid value - inspect ec.value() to determine what was incorrect
SDKAlreadyInitializedSDK already initialized

GetUserWalletBalanceAsync​

Gets the users current wallet balance. This will also create a wallet for a user if one does not exist. You should ensure this is called prior to calling PurchaseModAsync purchase will fail.

nd_img_ModioSubsystem_K2_GetUserWalletBalanceAsync.png
nd_img_ModioSubsystem_K2_GetUserWalletBalanceAsync.png
void K2_GetUserWalletBalanceAsync(FOnGetUserWalletBalanceDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
CallbackCallback invoked with the users wallet balance

GetUserRatingsAsync​

Provides a list of mod ratings for the current user

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioSubsystem_K2_GetUserRatingsAsync.png
nd_img_ModioSubsystem_K2_GetUserRatingsAsync.png
void K2_GetUserRatingsAsync(FOnGetUserModRatingsDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • user-authenticated
Parameters​
TargetModioSubsystem
CallbackCallback invoked with a status code and an optional UserModRatingList providing ratings for each
Error Values​
GenericError::SDKNotInitializedSDK not initialized
HttpError::RateLimitedToo many frequent calls to the API. Wait some time and try again.
NetworkErrorCouldn't connect to mod.io servers

GetUserMediaAsync (Avatar)​

Downloads the avatar of the currently authenticated user. Will only perform a download if there is no local cache of the avatar or if that cached copy is out-of-date.

nd_img_ModioSubsystem_K2_GetUserMediaAvatarAsync.png
nd_img_ModioSubsystem_K2_GetUserMediaAvatarAsync.png
void K2_GetUserMediaAvatarAsync(EModioAvatarSize AvatarSize, FOnGetMediaDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
Parameters​
TargetModioSubsystem
AvatarSizeParameter specifying the size of avatar image to download
CallbackCallback providing a status code for the download and an optional path to the downloaded image
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
UserNotAuthenticatedErrorNo authenticated user

GetUserFollowingAsync​

Gets a list of users that the given user is following

nd_img_ModioSubsystem_K2_GetUserFollowingAsync.png
nd_img_ModioSubsystem_K2_GetUserFollowingAsync.png
void K2_GetUserFollowingAsync(FModioUserID UserId, FOnGetFollowsDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • user-authenticated
Parameters​
TargetModioSubsystem
UserIdthe UserID of the user you are querying.
Callbacka Callback invoked with a status code and optional User List containing the list of followers
Error Values​
GenericError::SDKNotInitializedSDK not initialized
UserDataError::InvalidUserUser not authenticated
HttpError::RateLimitedToo many frequent calls to the API. Wait some time and try again.
NetworkErrorCouldn't connect to mod.io servers

GetUserFollowersAsync​

Gets the list of followers for the given user.

nd_img_ModioSubsystem_K2_GetUserFollowersAsync.png
nd_img_ModioSubsystem_K2_GetUserFollowersAsync.png
void K2_GetUserFollowersAsync(FModioUserID UserId, FOnGetFollowsDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • user-authenticated
Parameters​
TargetModioSubsystem
UserIdthe UserID of the user who's followers you are getting
Callbacka Callback invoked with a status code and optional User List containing the list of followers
Error Values​
GenericError::SDKNotInitializedSDK not initialized
UserDataError::InvalidUserUser not authenticated
HttpError::RateLimitedToo many frequent calls to the API. Wait some time and try again.
NetworkErrorCouldn't connect to mod.io servers

GetUserDelegationTokenAsync​

Get a user delegation token that can be used for S2S service calls

nd_img_ModioSubsystem_K2_GetUserDelegationTokenAsync.png
nd_img_ModioSubsystem_K2_GetUserDelegationTokenAsync.png
void K2_GetUserDelegationTokenAsync(FOnGetUserDelegationTokenDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
CallbackCallback invoked with purchase information once the purchase is completed.

GetTermsOfUseAsync​

This function retrieves the information required for a game to display the mod.io terms of use to a player who wishes to create a mod.io account

nd_img_ModioSubsystem_K2_GetTermsOfUseAsync.png
nd_img_ModioSubsystem_K2_GetTermsOfUseAsync.png
void K2_GetTermsOfUseAsync(FOnGetTermsOfUseDelegate Callback)
Requirements​
  • initialized-sdk
Parameters​
TargetModioSubsystem
CallbackCallback invoked with the terms of use data once retrieved from the server
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized

GetMutedUsersAsync​

List all the users that have been muted by the current user.

nd_img_ModioSubsystem_K2_GetMutedUsersAsync.png
nd_img_ModioSubsystem_K2_GetMutedUsersAsync.png
void K2_GetMutedUsersAsync(FOnMuteUsersDelegate Callback)
Requirements​
  • authenticated-user
  • initialized-sdk
Parameters​
TargetModioSubsystem
CallbackCallback providing a status code indicating success or failure of the operation, and an optional containing a list of muted users if successful.
Error Values​
SDKNotInitializedSDK not initialized
UserNotAuthenticatedErrorNo authenticated user

GetModTagOptionsAsync​

Fetches the available tags used on mods for the current game. These tags can them be used in conjunction with the FilterParams passed to ListAllModsAsync Will be cached when first received

nd_img_ModioSubsystem_K2_GetModTagOptionsAsync.png
nd_img_ModioSubsystem_K2_GetModTagOptionsAsync.png
void K2_GetModTagOptionsAsync(FOnGetModTagOptionsDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
CallbackCallback providing a status code and an optional ModioModTagOptions object containing the available tags
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized

Downloads the logo for the specified mod. Will use existing file if it is already present on disk

nd_img_ModioSubsystem_K2_GetModMediaLogoAsync.png
nd_img_ModioSubsystem_K2_GetModMediaLogoAsync.png
void K2_GetModMediaLogoAsync(FModioModID ModId, EModioLogoSize LogoSize, FOnGetMediaDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModIdMod ID for use in logo retrieval
LogoSizeParameter indicating the size of logo that's required
CallbackCallback providing a status code and an optional path object pointing to the location of the downloaded image
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
EntityNotFoundErrorSpecified mod media does not exist or was deleted
InsufficientSpaceNot enough space for the file
InvalidArgsErrorThe supplied mod ID is invalid

Get a gallery image for the specified mod ID. If it already exists on disk the file will be reused unless it is outdated

nd_img_ModioSubsystem_K2_GetModMediaGalleryImageAsync.png
nd_img_ModioSubsystem_K2_GetModMediaGalleryImageAsync.png
void K2_GetModMediaGalleryImageAsync(FModioModID ModId, EModioGallerySize GallerySize, int32 Index, FOnGetMediaDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModIdThe mod you want to retrieve an image for
GallerySizeSize of the image you want to retrieve
IndexThe zero-based index of the image you want to retrieve
CallbackCallback containing a status code and an Optional containing a path to the image file on disk
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
EntityNotFoundErrorSpecified mod media does not exist or was deleted
InsufficientSpaceNot enough space for the file
InvalidArgsErrorThe supplied mod ID is invalid

GetModMediaAsync (Avatar)​

Downloads the creator avatar for a specified mod. Will use existing file if it is already present on disk and not outdated

nd_img_ModioSubsystem_K2_GetModMediaAvatarAsync.png
nd_img_ModioSubsystem_K2_GetModMediaAvatarAsync.png
void K2_GetModMediaAvatarAsync(FModioModID ModId, EModioAvatarSize AvatarSize, FOnGetMediaDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModIdID of the mod the creator avatar will be retrieved for
AvatarSizeParameter indicating the size of avatar image that's required
CallbackCallback providing a status code and an optional path object pointing to the location of the downloaded image
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
EntityNotFoundErrorSpecified mod media does not exist or was deleted
InsufficientSpaceNot enough space for the file
InvalidArgsErrorThe supplied mod ID is invalid

GetModInfoAsync​

Fetches detailed information about the specified mod, including description and file metadata for the most recent release

nd_img_ModioSubsystem_K2_GetModInfoAsync.png
nd_img_ModioSubsystem_K2_GetModInfoAsync.png
void K2_GetModInfoAsync(FModioModID ModId, FOnGetModInfoDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModIdMod ID of the mod to fetch data
CallbackCallback providing a status code and an optional ModioModInfo object with the mod's extended information
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
EntityNotFoundErrorSpecified mod does not exist or was deleted
InvalidArgsErrorThe supplied mod ID is invalid

GetModDependenciesAsync​

For a given Mod ID, fetches a list of any mods that the creator has marked as dependencies

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioSubsystem_K2_GetModDependenciesAsync.png
nd_img_ModioSubsystem_K2_GetModDependenciesAsync.png
void K2_GetModDependenciesAsync(FModioModID ModID, bool Recursive, FOnGetModDependenciesDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModIDThe mod to retrieve dependencies for
RecursiveFetches dependencies recursively up to a depth of 5
CallbackCallback providing a status code and an optional ModioModTagOptions object containing the available tags
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
InvalidArgsErrorThe supplied mod ID is invalid

GetModCreationHandle​

Gets a new mod handle for use with SubmitNewModAsync.

Experimental Feature

This function is part of an experimental feature and is subject to change.

nd_img_ModioSubsystem_K2_GetModCreationHandle.png
nd_img_ModioSubsystem_K2_GetModCreationHandle.png
FModioModCreationHandle K2_GetModCreationHandle()
Parameters​
TargetModioSubsystem

GetModCollectionModsAsync​

Get a list of Mods contained within the specified mod collection.

nd_img_ModioSubsystem_K2_GetModCollectionModsAsync.png
nd_img_ModioSubsystem_K2_GetModCollectionModsAsync.png
void K2_GetModCollectionModsAsync(FModioModCollectionID ModCollectionId, FOnGetModCollectionModsDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModCollectionIdMod Collection ID of the mod collection to fetch data.
CallbackCallback providing a status code and an optional FModioModCollectionInfoList object with the mod collection's extended information.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection does not exist or was deleted

Downloads the logo for the specified mod collection. Will use existing file if it is already present on disk.

nd_img_ModioSubsystem_K2_GetModCollectionLogoAsync.png
nd_img_ModioSubsystem_K2_GetModCollectionLogoAsync.png
void K2_GetModCollectionLogoAsync(FModioModCollectionID ModCollectionId, EModioLogoSize LogoSize, FOnGetModCollectionMediaDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModCollectionIdMod Collection ID for use in logo retrieval.
LogoSizeParameter indicating the size of logo that's required.
CallbackCallback providing a status code and an optional path object pointing to the location of the downloaded image
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection media does not exist or was deleted

GetModCollectionInfoAsync​

Fetches detailed information about the specified mod collection, including description and file metadata for the most recent release.

nd_img_ModioSubsystem_K2_GetModCollectionInfoAsync.png
nd_img_ModioSubsystem_K2_GetModCollectionInfoAsync.png
void K2_GetModCollectionInfoAsync(FModioModCollectionID ModCollectionId, FOnGetModCollectionInfoDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModCollectionIdMod Collection ID of the mod collection to fetch data.
CallbackCallback providing a status code and an optional FModioModCollectionInfo object with the mod collection's extended information.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection does not exist or was deleted

GetModCollectionMediaAsync (Avatar)​

Downloads the creator avatar for a specified mod collection. Will use existing file if it is already present on disk and not outdated.

nd_img_ModioSubsystem_K2_GetModCollectionAvatarAsync.png
nd_img_ModioSubsystem_K2_GetModCollectionAvatarAsync.png
void K2_GetModCollectionAvatarAsync(FModioModCollectionID ModCollectionId, EModioAvatarSize AvatarSize, FOnGetModCollectionMediaDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModCollectionIdMod Collection ID for use in creator avatar retrieval.
AvatarSizeParameter indicating the size of avatar image that's required.
CallbackCallback providing a status code and an optional path object pointing to the location of the downloaded image
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection media does not exist or was deleted

GetLanguage​

Get the currently applied language

nd_img_ModioSubsystem_K2_GetLanguage.png
nd_img_ModioSubsystem_K2_GetLanguage.png
EModioLanguage K2_GetLanguage()
Parameters​
TargetModioSubsystem
Returns​

Current language

GetGameInfoAsync​

Fetches detailed information about the specified game

nd_img_ModioSubsystem_K2_GetGameInfoAsync.png
nd_img_ModioSubsystem_K2_GetGameInfoAsync.png
void K2_GetGameInfoAsync(FModioGameID GameID, FOnGetGameInfoDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
GameIDGame ID of the game data to fetch
CallbackCallback providing a status code and an optional ModioGameInfo object with the game's extended information
Error Values​
SDKNotInitializedSDK not initialized
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified game does not exist
InvalidArgsErrorThe supplied game ID is invalid

GetAvailableUserEntitlementsAsync​

nd_img_ModioSubsystem_K2_GetAvailableUserEntitlementsAsync.png
nd_img_ModioSubsystem_K2_GetAvailableUserEntitlementsAsync.png
void K2_GetAvailableUserEntitlementsAsync(FModioEntitlementParams Params, FOnGetAvailableUserEntitlementsDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
Params
CallbackCallback providing an error code indicating success or failure of the retrieval operation

ForceUninstallModAsync​

Forcibly uninstalls a mod from the system. This can be used when the host application requires additional space for other mods. The current user must not be subscribed to the mod to force uninstall. To remove a mod the current user is subscribed to, first use UnsubscribeFromModAsync. If the mod does not uninstall (due to a different user on the same system remaining subscribed), ForceUninstallModAsync can be called next.

nd_img_ModioSubsystem_K2_ForceUninstallModAsync.png
nd_img_ModioSubsystem_K2_ForceUninstallModAsync.png
void K2_ForceUninstallModAsync(FModioModID ModToRemove, FOnErrorOnlyDelegate Callback)
Parameters​
TargetModioSubsystem
ModToRemoveThe mod ID to force uninstall.
CallbackCallback invoked indicating success or failure of the uninstallation.
Error Values​
SDKNotInitializedSDK not initialized
UserNotAuthenticatedErrorNo authenticated user
ApiErrorRefSuccessUser is still subscribed to the specified mod
InvalidArgsErrorThe supplied mod ID is invalid

FollowUserAsync​

Follows the given user for the currently authenticated user.

nd_img_ModioSubsystem_K2_FollowUserAsync.png
nd_img_ModioSubsystem_K2_FollowUserAsync.png
void K2_FollowUserAsync(FModioUserID UserId, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • user-authenticated
Parameters​
TargetModioSubsystem
UserIdThe UserID of the user that should be followed.
Callbacka callback invoked upon completion, indicating if the request was successful.
Error Values​
GenericError::SDKNotInitializedSDK not initialized
UserDataError::InvalidUserUser not authenticated
HttpError::RateLimitedToo many frequent calls to the API. Wait some time and try again.
NetworkErrorCouldn't connect to mod.io servers

FollowModCollectionAsync​

Sends a request to the mod.io server to add the specified mod collection to the user's list of followed collections.

nd_img_ModioSubsystem_K2_FollowModCollectionAsync.png
nd_img_ModioSubsystem_K2_FollowModCollectionAsync.png
void K2_FollowModCollectionAsync(FModioModCollectionID ModCollectionToFollow, FOnFollowModCollectionDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
  • management-enabled
  • mod-not-pending-uninstall
Parameters​
TargetModioSubsystem
ModCollectionToFollowMod Collection ID of the mod collection requiring a subscription.
CallbackCallback invoked when the follow request is completed.
Error Values​
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod collection does not exist or was deleted

FetchUserPurchasesAsync​

Fetches the user's purchases. This populates a runtime cache of purchase information that can be accessed using QueryUserPurchasedMods.

nd_img_ModioSubsystem_K2_FetchUserPurchasesAsync.png
nd_img_ModioSubsystem_K2_FetchUserPurchasesAsync.png
void K2_FetchUserPurchasesAsync(FOnFetchUserPurchasesDelegate Callback)
Requirements​
  • initialized-sdk
  • authenticated-user
  • no-rate-limiting
Parameters​
TargetModioSubsystem
CallbackCallback invoked once the call has been completed.

FetchExternalUpdatesAsync​

Synchronises the local list of the current user's subscribed mods with the server. Any mods that have been externally subscribed will be automatically marked for installation, and mods that have been externally removed from the user's subscriptions may be uninstalled if no other local users have a current subscription.

nd_img_ModioSubsystem_K2_FetchExternalUpdatesAsync.png
nd_img_ModioSubsystem_K2_FetchExternalUpdatesAsync.png
void K2_FetchExternalUpdatesAsync(FOnErrorOnlyDelegate OnFetchDone)
Parameters​
TargetModioSubsystem
On Fetch DoneCallback invoked when the external state has been retrieved and merged with the local data

EnableModManagement​

Enables the automatic management of installed mods on the system based on the user's subscriptions.

nd_img_ModioSubsystem_K2_EnableModManagement.png
nd_img_ModioSubsystem_K2_EnableModManagement.png
FModioErrorCode K2_EnableModManagement(FOnModManagementDelegate Callback)
Parameters​
TargetModioSubsystem
CallbackThis callback handler will be invoked with a ModioModManagementEvent for each mod operation performed by the SDK
Returns​

An error code indicating success or failure of enabling mod management. Note that this is independent of error codes for mod management events. Inspect the Callback for information on each mod management event.

Error Values​
SDKNotInitializedSDK not initialized
ModManagementAlreadyEnabledMod management was already enabled. The mod management callback has not been changed.

DeleteModDependenciesAsync​

Deletes dependencies from a specified mod, unlinking it from other mods that are no longer required.

nd_img_ModioSubsystem_K2_DeleteModDependenciesAsync.png
nd_img_ModioSubsystem_K2_DeleteModDependenciesAsync.png
void K2_DeleteModDependenciesAsync(FModioModID ModID, TArray<FModioModID> Dependencies, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
Parameters​
TargetModioSubsystem
ModIDThe mod to delete dependencies from
DependenciesList of mod IDs to delete as dependencies
CallbackCallback providing a status code to indicate if the dependencies were deleted successfully
Error Values​
GenericError::SDKNotInitializedSDK not initialized
UserDataError::InvalidUserNo authenticated user
HttpError::RateLimitedToo many frequent calls to the API. Wait some time and try again.
GenericError::BadParameterThe supplied mod ID is invalid
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod could not be found

CloseTempModSet​

Uninstall every temp mod unless the user is subscribed.

nd_img_ModioSubsystem_K2_CloseTempModSet.png
nd_img_ModioSubsystem_K2_CloseTempModSet.png
FModioErrorCode K2_CloseTempModSet()
Requirements​
  • initialized-sdk
  • mod-management-enabled
  • temp-mod-set-initialized
Parameters​
TargetModioSubsystem
Returns​

Error code indicating the status of the TempModSet. Will be empty if it was successful

Error Values​
SDKNotInitializedSDK not initialized
ModManagementDisabledMod management not enabled
TempModSetNotInitializedTempModSet not initialized

ClearUserDataAsync​

De-authenticates the current mod.io user for the current session, and clears all user-specific data stored on the current device. Any subscribed mods that are installed but do not have other local users subscribed will be uninstalled

nd_img_ModioSubsystem_K2_ClearUserDataAsync.png
nd_img_ModioSubsystem_K2_ClearUserDataAsync.png
void K2_ClearUserDataAsync(FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
Parameters​
TargetModioSubsystem
CallbackCallback providing a status code indicating the outcome of clearing the user data. Error codes returned by this function are informative only - it will always succeed.
Error Values​
SDKNotInitializedSDK not initialized
UserNotAuthenticatedErrorNo authenticated user

AuthenticateUserExternalAsync​

Uses platform-specific authentication to associate a mod.io user account with the current platform user

nd_img_ModioSubsystem_K2_AuthenticateUserExternalAsync.png
nd_img_ModioSubsystem_K2_AuthenticateUserExternalAsync.png
void K2_AuthenticateUserExternalAsync(FModioAuthenticationParams User, EModioAuthenticationProvider Provider, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • no-authenticated-user
Parameters​
TargetModioSubsystem
UserAuthentication payload data to submit to the provider
ProviderThe provider to use to perform the authentication
CallbackCallback invoked once the authentication request has been made
Error Values​
NetworkErrorCouldn't connect to mod.io servers
ConfigurationErrorThe SDK's configuration is not valid
InvalidArgsErrorThe arguments passed to the function have failed validation
UserTermsOfUseErrorThe user has not yet accepted the mod.io Terms of Use
SDKNotInitializedSDK not initialized
UserAlreadyAuthenticatedErrorCurrent user is already authenticated. De-authenticate the current user with ClearUserDataAsync, and re-initialize the SDK by calling ShutdownAsync followed by InitializeAsync.

AuthenticateUserEmailAsync​

Completes email authentication for the current session by submitting the one-time code sent to the user's email address

nd_img_ModioSubsystem_K2_AuthenticateUserEmailAsync.png
nd_img_ModioSubsystem_K2_AuthenticateUserEmailAsync.png
void K2_AuthenticateUserEmailAsync(FModioEmailAuthCode AuthenticationCode, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • no-authenticated-user
Parameters​
TargetModioSubsystem
AuthenticationCodeUser's authentication code
CallbackCallback providing a status code indicating if authentication was successful or not
Error Values​
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
UserAlreadyAuthenticatedErrorCurrent user is already authenticated. De-authenticate the current user with ClearUserDataAsync, and re-initialize the SDK by calling ShutdownAsync then InitializeAsync.

ArchiveModAsync​

Archives a mod. This mod will no longer be able to be viewed or retrieved via the SDK, but it will still exist should you choose to restore it at a later date. Archiving is restricted to team managers and administrators only. Note that restoration and permanent deletion of a mod is possible only via web interface.

nd_img_ModioSubsystem_K2_ArchiveModAsync.png
nd_img_ModioSubsystem_K2_ArchiveModAsync.png
void K2_ArchiveModAsync(FModioModID Mod, FOnErrorOnlyDelegate Callback)
Requirements​
  • authenticated-user
  • initialized-sdk
  • no-rate-limiting
Parameters​
TargetModioSubsystem
ModThe mod to be archived.
CallbackCallback providing a status code indicating success or failure of archiving the mod.
Error Values​
InsufficientPermissionsThe authenticated user does not have permission to archive this mod. This action is restricted to team managers and administrators only.
NetworkErrorCouldn't connect to mod.io servers
SDKNotInitializedSDK not initialized
EntityNotFoundErrorSpecified mod does not exist or was deleted
InvalidArgsErrorThe supplied mod ID is invalid

AddToTempModSet​

Add mods to a Temp Mod Set. Every temp mod specified by ModIds will be installed if not already installed.

nd_img_ModioSubsystem_K2_AddToTempModSet.png
nd_img_ModioSubsystem_K2_AddToTempModSet.png
FModioErrorCode K2_AddToTempModSet(TArray<FModioModID> ModIds)
Requirements​
  • initialized-sdk
  • mod-management-enabled
  • temp-mod-set-initialized
Parameters​
TargetModioSubsystem
ModIdsTArray of ModioModIDs to install as temp mods
Returns​

Error code indicating the status of the TempModSet. Will be empty if it was successful

Error Values​
SDKNotInitializedSDK not initialized
ModManagementDisabledMod management not enabled
TempModSetNotInitializedTempModSet not initialized

AddModDependenciesAsync​

Adds dependencies to a specified mod, linking it with other mods that are required for it to function

nd_img_ModioSubsystem_K2_AddModDependenciesAsync.png
nd_img_ModioSubsystem_K2_AddModDependenciesAsync.png
void K2_AddModDependenciesAsync(FModioModID ModID, TArray<FModioModID> Dependencies, FOnErrorOnlyDelegate Callback)
Requirements​
  • initialized-sdk
  • no-rate-limiting
  • authenticated-user
Parameters​
TargetModioSubsystem
ModIDThe mod to add dependencies to
DependenciesList of mod dependencies to add
CallbackCallback providing a status code to indicate if the dependencies were added successfully
Error Values​
GenericError::SDKNotInitializedSDK not initialized
UserDataError::InvalidUserNo authenticated user
HttpError::RateLimitedToo many frequent calls to the API. Wait some time and try again.
GenericError::BadParameterThe supplied mod ID is invalid
NetworkErrorCouldn't connect to mod.io servers
EntityNotFoundErrorSpecified mod could not be found

Is Using Background Thread​

Returns if the background thread is being used or not

nd_img_ModioSubsystem_IsUsingBackgroundThread.png
nd_img_ModioSubsystem_IsUsingBackgroundThread.png
bool IsUsingBackgroundThread()
Parameters​
TargetModioSubsystem

Is Mod Management Busy​

Checks if the automatic management process is currently installing or removing mods

nd_img_ModioSubsystem_IsModManagementBusy.png
nd_img_ModioSubsystem_IsModManagementBusy.png
bool IsModManagementBusy()
Parameters​
TargetModioSubsystem
Returns​

True if automatic management is currently performing an operation

Get Storage Quota​

Get the storage quota for a given EModioStorageLocation if one has been set.

nd_img_ModioSubsystem_GetStorageQuota.png
nd_img_ModioSubsystem_GetStorageQuota.png
FModioOptionalUInt64 GetStorageQuota(EModioStorageLocation Location)
Parameters​
TargetModioSubsystem
LocationThe type of storage to get the quota for. *
Returns​

FModioOptionalUInt64 of the storage quota in bytes for the specified EModioStorageLocation. Empty if no quota is set.

Get Last Validation Error​

If the last request to the mod.io servers returned a validation failure, this function returns extended information describing the fields that failed validation.

nd_img_ModioSubsystem_GetLastValidationError.png
nd_img_ModioSubsystem_GetLastValidationError.png
TArray<FModioValidationError> GetLastValidationError()
Requirements​
  • initialized-sdk
Parameters​
TargetModioSubsystem
Returns​

Collection of ModioValidationError objects, or empty collection if there were no validation failures

Get Current Portal​

nd_img_ModioSubsystem_GetCurrentPortal.png
nd_img_ModioSubsystem_GetCurrentPortal.png
EModioPortal GetCurrentPortal() const

Disable Mod Management​

Disables automatic installation or uninstallation of mods based on the user's subscriptions. Allows currently processing installation to complete. Will cancel any pending operations when called.

nd_img_ModioSubsystem_DisableModManagement.png
nd_img_ModioSubsystem_DisableModManagement.png
void DisableModManagement()
Parameters​
TargetModioSubsystem

ModioTokenPackLibrary​

Blueprint function library for interacting with ModioTokenPack objects

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioUIEnumLocalizationLibrary​

Utility functions for UI enum localization in mod.io

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioUILocalizationLibrary​

Utility functions for UI localization in mod.io

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioUnsigned64Library​

Library class for operations on FModioUnsigned64

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


ModioUserListLibrary​

Utility functions for accessing and managing lists of user information

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


Structs​

ModioEntitlementList​

Strong type struct to wrap multiple Entitlement indexed by a paged result


ModioEntitlement​

Information related to a SKU entitlement

Variables​
FStringSkuIdId of the Sku the entitlement is for
EModioEntitlementTypeEntitlementTypeThe type of the entitlement

ModioPagedResult​

Strong type struct to acknowledge the position of a result relative to the API endpoint's results

Variables​
int32PageIndexThe index of this page
int32PageSizeThe amount of results allowed to be displayed within a page
int32PageCountThe total amount of pages
int32TotalResultCountThe total amount of results
int32ResultCountThe amount of results for this page

ModioGameInfoList​

Strong type struct to wrap multiple GameInfo indexed by a paged result


ModioGameInfo​

Full game profile with extended information

Variables​
FModioGameIDGameIDUnique Game ID
FDateTimeDateAddedUnix timestamp of date the game was registered
FDateTimeDateUpdatedUnix timestamp of date the game was updated
FDateTimeDateLiveUnix timestamp of date the game was set live
FStringUgcNameWord used to describe user-generated content (mods, items, add-ons etc)
FModioIconIconContains media URLs to the icon for the game
FModioLogoLogoContains media URLs to the logo for the game
FModioHeaderImageHeaderImageContains media URLs to the preview header image for the game
FStringNameName of the game
FStringSummarySummary of the game's mod support
FStringInstructionsA guide about creating and uploading mods for this game to mod.io
FStringInstructionsUrlLink to a mod.io guide, modding wiki, or a page where modders can learn how to make and submit mods to this game's profile
FStringProfileUrlURL to the game
FModioThemeThemeTheme color values for the game
FModioGameStatsStatsNumerous aggregate stats for the game
TArray<FModioOtherUrl>OtherUrlsCreator defined URLs to share
TArray<EModioModfilePlatform>PlatformsPlatforms that are supported by this title
boolbAllowNegativeRatingsWhether or not the game allows negative ratings
EGameMonetizationFlagsGameMonetizationOptionsMonetization options for the game
EGameMaturityFlagsGameMaturityOptionsMaturity options for the game
FStringVirtualTokenNameName of the Virtual Tokens for this game
TArray<FModioGamePlatform>PlatformSupportPlatforms that are supported by this title
TArray<FModioModTagInfo>TagOptionsTags available for this game
TArray<FModioPlacement>PlacementsPlacements available for this game
EModioGameCloudCookingStatusCloudCookingStatusCloud Cooking status for this game

ModioPlacement​

Placements of a game to represent dynamic mod view

Variables​
int64IDUnique placement id
EModioPlacementTypeTypePlacement type
FStringNamePlacement name
FStringNameLocalizedPlacement name localized
FModioFilterParamsFiltersStructured filter describing the mods this placement should display
int64DisplayPositionPlacement's display position
int64TotalTotal number in the placement to show
EModioPlacementSizeSizePlacement's display size
boolbEnabledPlacement's enabled status

ModioFilterParams​

Class storing a set of filter parameters for use in ListAllModsAsync


ModioModTagInfo​

Metadata about a group of tags that can be used for filtering mods

Variables​
FStringTagGroupNameRaw unlocalized tag group name
TArray<FString>TagGroupValuesValid raw unlocalized tag values this group contains
TMap<FString,FText>TagGroupNameLocalizationDataCulture code -> localized tag category name mapping for all configured languages
TArray<FModioModTagLocalizationData>TagGroupValueLocalizationDataLocalization data for this tag category's values in all configured languages
boolbAllowMultipleSelectionTrue if multiple tags from the group can be used simultaneously
boolbHiddenTrue if only visible by admins
boolbLockedTrue if only editable by admins

ModioLocalizedTagCategory​

Struct containing pre-localized display strings for a tag group

Variables​
FStringGroupNameLocalized display string for this tag category's name
TArray<FString>TagsLocalized display strings for all valid values in this tag category

ModioModTagLocalizationData​

Localization data for an individual tag value

Variables​
FStringTagThe original raw unlocalized tag value used by the REST API
TMap<FString,FText>TranslationsCulture code -> Localized tag value string mapping for all configured languages.

ModioGamePlatform​

Details about a platform that a Game supports

Variables​
EModioModfilePlatformPlatformA platform supported by a title
boolLockedWhether or not this platform is locked from having files submitted to it by players
boolModeratedWhether or not this platform's file submissions are moderated

ModioOtherUrl​

Strong type struct representing creator defined urls to share

Variables​
FStringLabelLabel of the link you are sharing
FStringUrlThe URL to be associated with the label

ModioGameStats​

Numerous aggregate stats for the game

Variables​
FModioGameIDGameIDUnique game id
int64ModCountTotalAvailable mod count for the game
int64ModDownloadsTodayMods downloaded today for the game
int64ModDownloadsTotalTotal mods downloaded for the game
int64ModDownloadsDailyAverageAverage mods downloaded on a daily basis
int64ModSubscribersTotalNumber of total users who have subscribed to the mods for the game
int64DateExpiresUnix timestamp until this game's statistics are considered stale

ModioGameID​

Strong type struct to wrap a GameID to uniquely identify a single game in mod.io


ModioTheme​

Theme color values for the game

Variables​
FStringPrimaryThe primary hex color code
FStringDarkThe dark hex color code
FStringLightThe light hex color code
FStringSuccessThe success hex color code
FStringWarningThe warning hex color code
FStringDangerThe danger hex color code

ModioHeaderImage​

Contains media URLs to the preview header image for the game

Variables​
FStringFilenameHeader image filename including extension
FStringOriginalURL to the full-sized header image

Contains media URLs to the logo for the game

Variables​
FStringFilenameLogo filename including extension.
FStringOriginalURL to the full-sized logo.
FStringThumb320x180URL to the small logo thumbnail.
FStringThumb640x360URL to the medium logo thumbnail.
FStringThumb1280x720URL to the large logo thumbnail.

ModioIcon​

Contains media URLs to the icon for the game

Variables​
FStringFilenameIcon filename including extension
FStringOriginalURL to the full-sized icon
FStringThumb64x64URL to the small icon thumbnail
FStringThumb128x128URL to the medium icon thumbnail
FStringThumb256x256URL to the large icon thumbnail

ModioModCollectionInfoList​

Strong type struct to wrap multiple ModCollectionInfo indexed by a paged result


ModioModCollectionInfo​

Information about a given mod collection

Variables​
FModioModCollectionIDIdThe unique ID of the collection.
FModioGameIDGameIdThe unique ID of the game the collection belongs to.
FStringGameNamethe game name
EModioModServerSideStatusCollectionStatusThe current ModStatus on the server: Accepted, NotAccepted, or Deleted.
EModioObjectVisibilityFlagsVisibilityThe mod collection's visibility status. Defaults to Public (1)
FModioUserProfileSubmittedByInformation on the user who submitted the collection
FStringCategoryChosen category of the collection
FDateTimeProfileDateAddedUnix timestamp of the date the mod was registered
FDateTimeProfileDateUpdatedUnix timestamp of the date the mod was updated
FDateTimeProfileDateLiveUnix timestamp of the date the mod was marked live
boolIncompleteboolean to indicate whether the collection contains hidden mods
EModioMaturityFlagsProfileMaturityOptionMaturity options flagged by the mod developer. This is only relevant if the parent game allows collections to be labeled as mature. The value of this field will default to None unless the parent game allows to flag mature content.
FModioUnsigned64FileSizeSize of collection in bytes
FModioUnsigned64FileSizeUncompressedSize of the uncompressed collection in bytes
TArray<EModioModfilePlatform>PlatformsSupported platform for this collection
TArray<FString>TagsTags this mod collection has set
FModioModCollectionStatsStatsStats and rating information for the mod collection.
FModioLogoLogoMedia data related to the mod collection logo
FStringProfileNameName of the mod collection
FStringProfileNameIdName id of the mod collection
FStringProfileSummarySummary of the mod collection
FStringProfileDescriptionDetailed description in HTML format
FStringProfileDescriptionPlaintextDetailed description in plaintext format

ModioModCollectionStats​

Contains download stats and ratings for a mod collection

Variables​
int64DownloadsTodayNumber of mod collection downloads today.
int64DownloadsTotalNumber of total mod collection downloads.
int64DownloadsUniqueNumber of unique mod collection downloads.
int64RatingTotal30DaysNumber of rating over 30 days.
int64RatingPositive30DaysNumber of positive ratings over 30 days.
int64RatingNegative30DaysNumber of negative ratings over 30 days.
int64RatingTotalNumber of times this mod collection has been rated.
int64RatingPositiveNumber of positive ratings.
int64RatingNegativeNumber of negative ratings.
int64NumberOfCommentsNumber of comments.
int64NumberOfFollowersNumber of followers.
int64NumberOfModsNumber of mods in the collection.

ModioUnsigned64​

Trivial Blueprint-compatible wrapper around an unsigned 64-bit integer


ModioUser​

Object representing a mod.io user profile information

Variables​
FModioUserIDUserIdUser's unique ID
FStringUsernameName chosen by the user
FDateTimeDateOnlineUnix timestamp of the last time the user was online
FStringProfileUrlURL of the user's mod.io profile
FStringDisplayNamePortalDisplay name of this User for the given Portal, if their account is linked

ModioUserID​

Strong type struct to wrap a UserID which uniquely identifies a user in mod.io


ModioModCollectionID​

Strong type struct to wrap a ModCollectionID to uniquely identify collections of user-generated content.


ModioModInfoList​

Strong type struct to wrap multiple ModInfo indexed by a paged result


ModioModInfo​

Full mod profile including current release information, media links, and stats

Variables​
FModioModIDModIdUnique Mod ID
FStringProfileNameName of the mod
FStringProfileSummarySummary of the mod
FStringProfileDescriptionDetailed description in HTML format
FStringProfileDescriptionPlaintextDetailed description in plaintext
FStringProfileURLURL to the mod profile
FModioUserProfileSubmittedByInformation on the user who submitted the mod
FDateTimeProfileDateAddedUnix timestamp of the date the mod was registered
FDateTimeProfileDateUpdatedUnix timestamp of the date the mod was updated
FDateTimeProfileDateLiveUnix timestamp of the date the mod was marked live
EModioMaturityFlagsProfileMaturityOptionFlags for maturity options. Maturity options are flagged by the mod developer. This is only relevant if the parent game allows mods to be labeled as mature.
EModioModCommunityOptionsFlagsCommunityOptionsCommunity options for the mod
boolbVisible_DEPRECATEDDeprecated as of 2023.6 release. Please use EModioObjectVisibilityFlags Visibility instead.
EModioObjectVisibilityFlagsVisibilityEnum parameter to signal the backend if the mod to upload would be publicly visible. Default value is Public
boolDependenciesIf this mod has any dependencies
FStringMetadataBlobStored property to the metadata string
FModioFileMetadataFileInfoInformation about the mod's most recent public release
TArray<FModioMetadata>MetadataKvpArbitrary key-value metadata set for this mod
TArray<FModioModTag>TagsTags this mod has set
int32NumGalleryImagesNumber of images in the mod's media gallery
FModioYoutubeURLListYoutubeURLsList of youtube links provided by the creator of the mod
FModioSketchfabURLListSketchfabURLsList of sketchfab links provided by the creator of the mod
FModioModStatsStatsStats and rating information for the mod
EModioModServerSideStatusModStatusStatus of the mod
FModioUnsigned64PricePrice of this mod
TArray<FModioModMonetizationSKU>SKUMappings

ModioModMonetizationSKU​

Variables​
int64Id
FStringSKUName
FStringPortal

ModioModStats​

Contains download stats and ratings for a mod

Variables​
int64PopularityRankPositionCurrent rank of the mod.
int64PopularityRankTotalModsNumber of ranking spots the current rank is measured against.
int64DownloadsTotalNumber of total mod downloads.
int64SubscribersTotalNumber of total users who have subscribed to the mod.
int64RatingTotalNumber of times this mod has been rated.
int64RatingPositiveNumber of positive ratings.
int64RatingNegativeNumber of negative ratings.
int64RatingPercentagePositiveNumber of positive ratings, divided by the total ratings to determine its percentage score.
floatRatingWeightedAggregateOverall rating of this item calculated using the Wilson score confidence interval. This column is good to sort on, as it will order items based on number of ratings and will place items with many positive ratings above those with a higher score but fewer ratings. We actually get a double back from the server, but it's converted to a float for blueprint support
FStringRatingDisplayTextTextual representation of the rating in format: Overwhelmingly Positive -> Very Positive -> Positive -> Mostly Positive -> Mixed -> Negative -> Mostly Negative -> Very Negative -> Overwhelmingly Negative -> Unrated

ModioSketchfabURLList​

Struct to store links and metadata associated to Sketchfab URLs for Blueprint


ModioYoutubeURLList​

Struct to store links and metadata associated to YouTube URLs for Blueprint


ModioModTag​

Strong type struct to wrap a Mod tag

Variables​
FStringTagA string that represents a mod tag
FTextTagLocalizedA localized tag string

ModioMetadata​

Strong type struct to represent key-value pairs for mod metadata

Variables​
FStringKeyKey of the metadata
FStringValueValue of the metadata

ModioFileMetadata​

Metadata for a release archive for a mod

Variables​
FModioFileMetadataIDMetadataIdUnique modfile id.
FModioModIDModIdUnique mod id.
FDateTimeDateAddedUnix timestamp of date file was added.
EModioVirusScanStatusCurrentVirusScanStatusCurrent virus scan status of the file. For newly added files that have yet to be scanned this field will change frequently until a scan is complete
EModioVirusStatusCurrentVirusStatusWas a virus detected?
FModioUnsigned64FilesizeSize of the file in bytes.
FModioUnsigned64FilesizeUncompressedTotal size of all files in the mod after installation.
FStringFilenameFilename including extension.
FStringVersionRelease version this file represents.
FStringChangelogChangelog for the file.
FStringMetadataBlobMetadata stored by the game developer for this file.

ModioModID​

Strong type struct to wrap a ModID to uniquely identify user-generated content


ModioFileMetadataID​

Strong type struct to store the associated metadata to a mod file


ModioModTagOptions​

Strong type struct to wrap multiple ModTagInfo indexed by a paged result


ModioTokenPackList​

Strong type struct to wrap multiple TokenPacks indexed by a paged result


ModioTokenPack​

A wrapper type around the Unreal Engine type FOnlineStoreOffer, representing a platform-agnostic store offer/product, e.g a Premium Currency pack.


ModioUserList​

Strong type struct to wrap multiple Users indexed by a paged result


ModioUserModRatingList​

Strong type struct to wrap multiple user ratings indexed by a paged result

Variables​
FModioPagedResultPagedResultA paged result property
TArray<FModioUserModRating>InternalListInternal array of user ratings

ModioUserModRating​

Variables​
FModioGameIDGameId
FModioModIDModId
EModioRatingRating

ModioErrorCode​

Wrapper around Modio::ErrorCode


ModioEntitlementParams​

Simple struct to encapsulate portal-specific data required when consuming entitlements


ModioOptionalModCollectionInfo​

Struct to wrap ModCollectionInfo into an optional parameter


ModioOptionalEntitlementList​

Struct to wrap EntitlementList into an optional parameter


ModioOptionalUserList​

Struct to wrap UserList into an optional parameter


ModioOptionalGameInfo​

Strong type struct to store an optional GameInfo parameter


ModioOptionalImage​

Strong type struct to wrap Image data as an optional value


ModioOptionalModInfoList​

Struct to wrap ModInfoList into an optional parameter


ModioOptionalModDependencyList​

Strong type struct to wrap a ModDependencyList data as an optional value


ModioOptionalModInfo​

Strong type struct to store an optional ModInfo parameter


ModioOptionalModTagOptions​

Strong type struct that wraps mod tag options in an optional value


ModioOptionalTerms​

Struct to store an optional value for the terms of service


ModioOptionalUserModRatingList​

Struct to wrap UserModRatingList into an optional parameter


ModioOptionalUInt64​

Strong type struct to wrap uint64 as an optional value


ModioOptionalModCollectionInfoList​

Struct to wrap ModCollectionInfoList into an optional parameter


ModioOptionalGameInfoList​

Struct to wrap GameInfoList into an optional parameter


ModioModManagementEvent​

Simple struct representing the outcome of a mod management operation

Variables​
FModioModIDIDID for the mod that the event occurred on
EModioModManagementEventTypeEventWhat type of event occurred
FModioErrorCodeStatusEmpty if operation completed successfully, truthy/contains error code if operation failed

ModioOptionalModChangeMap​

Strong type struct to wrap a ModChangeMap as an optional value


ModioOptionalTransactionRecord​

Struct to store an optional value for the transaction record


ModioOptionalEntitlementConsumptionStatusList​

Optional class representing a list of entitlement consumption statuses that may be a page from a larger set of results


ModioOptionalModID​

Strong type struct to wrap ModID as an optional value


ModioAuthenticationParams​

Struct to encapsulate data passed to external authentication systems * This struct is used to store authentication parameters required by various external authentication providers. These parameters are used to authenticate users with external systems (e.g., Xbox, Steam, Google, etc.).

Variables​
FStringAuthTokenStored property of the authentication token This token is required for authentication with the external provider.
FStringUserEmailStored property of the user email This is the email address of the user, which is used for authentication purposes in certain external systems.
boolbUserHasAcceptedTermsBoolean that signals if the user has accepted the terms of service This flag is used to indicate whether the user has agreed to the terms of service required by the external authentication provider.
TMap<FString,FString>ExtendedParametersStored property of extended parameters required by some providers This map holds additional key-value pairs for authentication that might be required by specific authentication providers. These could include things like additional credentials or metadata.

ModioCreateModFileParams​

Strong type for the parameters needed to create a mod file

Variables​
FStringPathToModRootDirectoryThe file system path that references the directory with the mod files. The plugin will compress the contents of this path into a .zip archive.

ModioCreateModParams​

Strong type for the parameters needed to create a mod file

Variables​
FStringPathToLogoFileThe file system path to the file used as the mod logo
FStringNameThe name for the mod to create
FStringSummaryBrief description for the mod to create

ModioCreateSourceFileParams​

Strong type for the parameters needed to create a mod file

Variables​
FStringPathToModRootDirectoryPath to a directory to treat as the root of the mod source. The SDK will compress all contents of this folder into a .zip archive, with a relative path based on this directory. This directory will not be created itself, the contents will exist at the top level of the archive.

ModioEditModParams​

Struct type to specify the fields to update for a mod


ModioOptionalEntitlement​

Strong type struct to store an optional Entitlement parameter


ModioEntitlementWalletBalance​

Updated wallet balance from the sync entitlements call

Variables​
FModioUnsigned64BalanceThe updated balance of the wallet

ModioOptionalEntitlementWalletBalance​

Optional updated wallet balance from the sync entitlements call


ModioEntitlementConsumptionVirtualCurrencyDetails​

Further details about a Virtual Currency entitlement that was consumed

Variables​
int32TokensAllocatedAmount of tokens that were issued for this specific entitlement consumption

EntitlementConsumptionStatus​

The result of an entitlement's consumption

Variables​
FStringTransactionIdID of the transaction to redeem this entitlement
EModioEntitlementConsumptionStateTransactionStateState of the transaction
FStringSkuIdID of the SKU that we attempted to consume
boolEntitlementConsumedWhether this entitlement was consumed or not
EModioEntitlementTypeEntitlementTypeType of Entitlement that was consumed
FModioEntitlementConsumptionVirtualCurrencyDetailsVirtualCurrencyDetailsDetails about virtual currency entitlement consumption

ModioEntitlementConsumptionStatusList​

Class representing a list of entitlement consumption statuses that may be a page from a larger set of results

Variables​
FModioPagedResultPagedResultStored property for a paged result, which provides context on the entitlement consumption status list
TArray<FEntitlementConsumptionStatus>InternalListStored property for the dependency list
FModioOptionalEntitlementWalletBalanceWalletBalanceUpdated wallet balance from syncing entitlements

ModioInitializeOptions​

Struct type to store the initialization options used by the mod.io SDK

Variables​
FModioGameIDGameIdThe mod.io-provided ID for the game
FModioApiKeyApiKeyThe mod.io-provided API key for your application or game
EModioEnvironmentGameEnvironmentThe mod.io environment you want to run the SDK on
EModioPortalPortalInUseThe portal your title is running through
TMap<FString,FString>ExtendedInitializationParametersExtended platform-specific initialization parameters. Refer to the platform documentation for valid keys and their values. Unrecognized values will be ignored
boolbUseBackgroundThreadSet mod.io to run with background thread

ModioApiKey​

Strong type struct to wrap an ApiKey, used to communicate with the mod.io service


ModioModChangeMap​

Strong type struct to wrap mod change information

Variables​
TMap<FModioModID,EModioModChangeType>ChangesA map representing mod change types for each mod ID

ModioModCreationHandle​

Struct type to store the handle when a new mod is created


ModioModProgressInfo​

Strong type struct representing the progress of a mod installation or update

Variables​
FModioModIDIDThe mod ID of the mod being processed

ModioOptionalModProgressInfo​

Struct strong type to wrap an optional value for the ModProgressInfo


ModioServerInitializeOptions​

Struct type to store the initialization options used by the mod.io SDK in the context of a dedicated server

Experimental Feature

This class is part of an experimental feature and is subject to change.

Variables​
FModioInitializeOptionsBaseOptionsThe base initialize options required in any Mod.io initialization context.
FStringModsDirectoryThe directory where mods should be stored on this Server
FStringTokenThe S2S token for this Server
TArray<FModioModID>ModsWhat mods this Server will use.

StorageInfoKey​

Composite key for looking up storage metrics by location and usage type. * Combines an EModioStorageLocation (where the data lives) with an EModioStorageUsage (whether reporting consumed vs. available space). Implements equality and hashing so it can be used as a key in hashed containers (e.g., TMap).

Variables​
EModioStorageLocationLocation
EModioStorageUsageUsage

ModioStorageInfo​

Strongly-typed container for storage space metrics (consumed/available) across storage locations. * Stores storage values (in bytes) keyed by EModioStorageLocation and EModioStorageUsage, and provides convenience accessors via GetSpace(...) to query the recorded amount for a given key.


Strong type struct to store links and metadata associated with a mod

Variables​
FStringTextThe user-facing text for the link
FStringURLThe actual URL for the link
boolbRequiredIs displaying this link mandatory?

ModioTerms​

Struct with the strings to display to a user when showing the terms of use and the reference URLs to mod.io user account page

Variables​
FStringAgreeButtonTextText to display on the affirmative/OK button
FStringDisagreeButtonTextText to display on the negative/cancel button
FModioLinkWebsiteLinkLink to the mod.io website
FModioLinkTermsLinkLink to the mod.io terms of use
FModioLinkPrivacyLinkLink to the mod.io Privacy Policy
FModioLinkRefundLinkLink to the mod.io Refund Policy
FModioLinkManageLinkLink to the mod.io Manage User Account page
FModioLinkMonetizationLinkLink to the mod.io Monetization Policy
FStringTermsTextThe plaintext version of the mod.io terms of use

ModioOptionalTokenPack​

Strong type struct to store an optional TokenPack parameter


ModioOptionalUser​

Struct wrapper for an optional ModioUser


ModioValidationError​

Wrapper struct containing information about a field validation error

Variables​
FStringFieldNameString description of the field that failed validation
FStringValidationFailureDescriptionString description of the validation failure

ModioGuid​

Strong type struct to wrap a Guid, used to communicate with the mod.io metrics service


ModioOptionalGuid​

Strong type struct to wrap Guid as an optional value


ModioEmailAddress​

Strong type struct to wrap an email address


ModioEmailAuthCode​

Strong type struct to wrap the code sent to the email address to obtain an authentication token


ModioMetricsSessionParams​

Simple struct to store metric session specific parameters


ModioTokenPackID​

Strong type struct to wrap Token Pack ID


ModioPresetFilterParams​

Helper struct for named preset filter parameters

Variables​
FTextPresetNamePreset name
TArray<FString>TagsList of tags to filter on
TArray<FString>ExcludedTagsList of tags to exclude from filtering
EModioSortDirectionDirectionSorting direction (default is ascending)
EModioSortFieldTypeSortFieldField to use for sorting (default is ID)
EModioRevenueFilterTypeRevenueFieldField to use for revenue (default is FreeAndPaid)
TSoftClassPtr<UWidget> TileWidgetClassField to use for the widget class (default is nullptr)
int64CountNumber of results to return

ModioImageWrapper​

Strong type struct to wrap image data returned by the mod.io API

Variables​
FStringImagePathThe path on disk to the image

ModioModCollectionEntry​

Struct representing a mod which is installed locally


ModioModDependency​

Basic reference data about a dependency relationship to another mod

Experimental Feature

This class is part of an experimental feature and is subject to change.

Variables​
FModioModIDModIDThe ID of the mod dependency
FStringModNameThe name of the mod dependency
FDateTimeDateAddedUnix timestamp of the date the mod was registered
FDateTimeDateUpdatedUnix timestamp of the date the mod was updated
uint8DependencyDepthThe level at which this dependency sits. When greater than zero (0), it means that this dependency relies on additional dependencies.
FModioLogoLogoMedia data related to the mod logo
FModioFileMetadataFileInfoInformation about the mod's most recent public release
EModioModServerSideStatusStatusThe current ModStatus on the server: Accepted, NotAccepted, or Deleted.
EModioObjectVisibilityFlagsVisibilityThe visibility status of the mod, default to Public

ModioModDependencyList​

Strong type struct to wrap multiple ModDependency indexed by a paged result

Experimental Feature

This class is part of an experimental feature and is subject to change.

Variables​
FModioPagedResultPagedResultStored property for a paged result, which provides context on the dependency list
TArray<FModioModDependency>InternalListStored property for the dependency list
FModioUnsigned64TotalFilesizeTotal size of all the dependency files in bytes.
FModioUnsigned64TotalFilesizeUncompressedTotal size of the uncompressed dependency files in bytes.

ModioReportParams​

Struct type to store the parameters used to report a mod


ModioOptionalTokenPackList​

Struct to wrap ModInfoList into an optional parameter


ModioTransactionRecord​

Contains information about a successful transaction for a mod

Variables​
FModioModIDAssociatedModIDThe mod the purchase was for
FModioUnsigned64PriceThe price the mod was purchased for
FModioUnsigned64UpdatedUserWalletBalanceThe updated balance in the user's wallet after the transaction

ModioCreateModFileMemoryParams​

Variables​
TArray<uint8>ModMemory

Functions​

Get Localized Text for Enum by Name​

Returns the localized string table FText for a given enum value's FName. Only works with enums registered via ModioUI::RegisterEnumAsLocalizable.

nd_img_ModioUIEnumLocalizationLibrary_GetLocalizedTextForEnumByName.png
nd_img_ModioUIEnumLocalizationLibrary_GetLocalizedTextForEnumByName.png
FText GetLocalizedTextForEnumByName(FName EnumName)

Parameters​

EnumNameThe FName of the given enum value to fetch its localized string

Returns​

Localized FText for the specified enum value, or a dummy FText if not found


FileSizeToText (Unsigned64)​

Converts an Unsigned64 filesize to a human-readable string with the appropriate unit. * The function attempts to display the size in the largest unit that will have an integral part > 0, or in the specified unit if Unit is set to something other than Largest.

nd_img_ModioUIEnumLocalizationLibrary_FileSizeUnsigned64_ToText.png
nd_img_ModioUIEnumLocalizationLibrary_FileSizeUnsigned64_ToText.png
FText FileSizeUnsigned64_ToText(FModioUnsigned64 FileSize, int32 MinDecimals, int32 MaxDecimals, EFileSizeUnit Unit, bool bIncludeUnitName)

Parameters​

FileSizeThe filesize in bytes to convert to human-readable format
MinDecimalsThe minimum number of decimals to display for the filesize
MaxDecimalsThe maximum number of decimals to display for the filesize
UnitThe unit to display the filesize in (defaults to the largest appropriate unit)
bIncludeUnitNameWhether or not to include the unit name in the result

Returns​

An FText formatted with the specified filesize and unit


Get Localized Text from Default Table by Key​

Returns the localized string table Text for a given string key

nd_img_ModioUILocalizationLibrary_GetLocalizedTextFromDefaultTableByKey.png
nd_img_ModioUILocalizationLibrary_GetLocalizedTextFromDefaultTableByKey.png
FText GetLocalizedTextFromDefaultTableByKey(FString StringKey)

Parameters​

StringKeyThe key to look up in the string table

Returns​

Localized FText for the specified key, or StringKey itself if not found


Get Total Progress​

Retrieve the total amount of progress required for a specified state

nd_img_ModioModProgressInfoLibrary_GetTotalProgress.png
nd_img_ModioModProgressInfoLibrary_GetTotalProgress.png
FModioUnsigned64 GetTotalProgress(FModioModProgressInfo Info, EModioModProgressState State)

Parameters​

InfoThe progress struct to query
StateThe state to query total progress for

Returns​

An FModioUnsigned64 representing the total progress in bytes


Get Current State​

Get the current state of the mod operation

nd_img_ModioModProgressInfoLibrary_GetCurrentState.png
nd_img_ModioModProgressInfoLibrary_GetCurrentState.png
EModioModProgressState GetCurrentState(FModioModProgressInfo Info)

Parameters​

InfoThe progress struct to query

Returns​

An EModioModProgressState indicating the current state of the mod operation


Get Current Progress​

Retrieve the progress value for a specified state If the state has completed, CurrentProgress will equal TotalProgress. For example, if a mod is currently in the Extracting state, querying progress for the Downloading state will return a value equal to the total download size because the download is complete.

nd_img_ModioModProgressInfoLibrary_GetCurrentProgress.png
nd_img_ModioModProgressInfoLibrary_GetCurrentProgress.png
FModioUnsigned64 GetCurrentProgress(FModioModProgressInfo Info, EModioModProgressState State)

Parameters​

InfoThe progress struct to query
StateThe state to query progress information for

Returns​

An FModioUnsigned64 representing the current progress in bytes


Get Space by Key​

Returns the recorded storage space for a given storage location and usage type

nd_img_ModioStorageInfoLibrary_GetSpaceByKey.png
nd_img_ModioStorageInfoLibrary_GetSpaceByKey.png
FModioUnsigned64 GetSpaceByKey(FModioStorageInfo Info, FStorageInfoKey StorageKey)

Parameters​

Info
StorageKeyWhere the storage has been written to and what type of usage to query

Returns​

Total storage space in bytes


Get Space​

Returns the recorded storage space for a given storage location and usage type

nd_img_ModioStorageInfoLibrary_GetSpace.png
nd_img_ModioStorageInfoLibrary_GetSpace.png
FModioUnsigned64 GetSpace(FModioStorageInfo Info, EModioStorageLocation Location, EModioStorageUsage Usage)

Parameters​

Info
LocationWhere the storage has been written to
UsageThe type of storage usage recorded

Returns​

Total storage space in bytes


Is Purchasable​

Check if the token pack is purchasable

nd_img_ModioTokenPackLibrary_IsPurchasable.png
nd_img_ModioTokenPackLibrary_IsPurchasable.png
bool IsPurchasable(FModioTokenPack In)

Parameters​

InThe token pack to check if it is purchasable

Returns​

True if the token pack is purchasable, false otherwise


Get Title​

Get the title of the token pack

nd_img_ModioTokenPackLibrary_GetTitle.png
nd_img_ModioTokenPackLibrary_GetTitle.png
FText GetTitle(FModioTokenPack In)

Parameters​

InThe token pack to retrieve the title from

Returns​

The title text of the token pack


Get Regular Price​

Get the regular price of the token pack

nd_img_ModioTokenPackLibrary_GetRegularPrice.png
nd_img_ModioTokenPackLibrary_GetRegularPrice.png
FText GetRegularPrice(FModioTokenPack In)

Parameters​

InThe token pack to retrieve the regular price from

Returns​

The regular price text of the token pack


Get Numeric Price​

Get the numeric price of the token pack

nd_img_ModioTokenPackLibrary_GetNumericPrice.png
nd_img_ModioTokenPackLibrary_GetNumericPrice.png
int64 GetNumericPrice(FModioTokenPack In)

Parameters​

InThe token pack to retrieve the numeric price from

Returns​

The numeric price of the token pack


Get Modio Id​

Get the Modio ID for this token pack

nd_img_ModioTokenPackLibrary_GetModioId.png
nd_img_ModioTokenPackLibrary_GetModioId.png
FModioTokenPackID GetModioId(FModioTokenPack In)

Parameters​

InThe token pack to retrieve the Modio ID from

Returns​

The Modio ID of the token pack


Get Long Description​

Get the long description of the token pack

nd_img_ModioTokenPackLibrary_GetLongDescription.png
nd_img_ModioTokenPackLibrary_GetLongDescription.png
FText GetLongDescription(FModioTokenPack In)

Parameters​

InThe token pack to retrieve the long description from

Returns​

The long description text of the token pack


Get Id​

Get the ID of the token pack

nd_img_ModioTokenPackLibrary_GetId.png
nd_img_ModioTokenPackLibrary_GetId.png
FString GetId(FModioTokenPack In)

Parameters​

InThe token pack to retrieve the ID from

Returns​

The ID of the token pack


Get Fields​

Get any dynamic fields associated with the token pack

nd_img_ModioTokenPackLibrary_GetFields.png
nd_img_ModioTokenPackLibrary_GetFields.png
TMap<FString,FString> GetFields(FModioTokenPack In)

Parameters​

InThe token pack to retrieve dynamic fields from

Returns​

A map of dynamic fields for the token pack


Get Display Price​

Get the display price of the token pack

nd_img_ModioTokenPackLibrary_GetDisplayPrice.png
nd_img_ModioTokenPackLibrary_GetDisplayPrice.png
FText GetDisplayPrice(FModioTokenPack In)

Parameters​

InThe token pack to retrieve the display price from

Returns​

The display price text of the token pack


Get Description​

Get the description of the token pack

nd_img_ModioTokenPackLibrary_GetDescription.png
nd_img_ModioTokenPackLibrary_GetDescription.png
FText GetDescription(FModioTokenPack In)

Parameters​

InThe token pack to retrieve the description from

Returns​

The description text of the token pack


ModioUnsigned64 - ModioUnsigned64​

Subtracts one FModioUnsigned64 from another

nd_img_ModioUnsigned64Library_Subtract.png
nd_img_ModioUnsigned64Library_Subtract.png
FModioUnsigned64 Subtract(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

Percentage Unsigned 64​

Calculates the percentage of one FModioUnsigned64 value in relation to another

nd_img_ModioUnsigned64Library_Percentage_Unsigned64.png
nd_img_ModioUnsigned64Library_Percentage_Unsigned64.png
float Percentage_Unsigned64(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

ModioUnsigned64 != ModioUnsigned64​

Compares two FModioUnsigned64 values for inequality

nd_img_ModioUnsigned64Library_NotEqualTo.png
nd_img_ModioUnsigned64Library_NotEqualTo.png
bool NotEqualTo(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

Make from Components​

Creates an FModioUnsigned64 from two 32-bit components

nd_img_ModioUnsigned64Library_MakeFromComponents.png
nd_img_ModioUnsigned64Library_MakeFromComponents.png
FModioUnsigned64 MakeFromComponents(int32 High, int32 Low)

Parameters​

High
Low

ModioUnsigned64 < ModioUnsigned64​

Compares two FModioUnsigned64 values to see if the left-hand side is less than the right-hand side

nd_img_ModioUnsigned64Library_LessThan.png
nd_img_ModioUnsigned64Library_LessThan.png
bool LessThan(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

ModioUnsigned64 > 0​

Checks if FModioUnsigned64 is greater than zero

nd_img_ModioUnsigned64Library_GreaterThanZero.png
nd_img_ModioUnsigned64Library_GreaterThanZero.png
bool GreaterThanZero(FModioUnsigned64 In)

Parameters​

In

ModioUnsigned64 > ModioUnsigned64​

Compares two FModioUnsigned64 values to see if the left-hand side is greater than the right-hand side

nd_img_ModioUnsigned64Library_GreaterThan.png
nd_img_ModioUnsigned64Library_GreaterThan.png
bool GreaterThan(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

ModioUnsigned64 == ModioUnsigned64​

Compares two FModioUnsigned64 values for equality

nd_img_ModioUnsigned64Library_EqualTo.png
nd_img_ModioUnsigned64Library_EqualTo.png
bool EqualTo(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

ModioUnsigned64 / ModioUnsigned64​

Divides two FModioUnsigned64 values and returns the result as a float

nd_img_ModioUnsigned64Library_DivideToFloat.png
nd_img_ModioUnsigned64Library_DivideToFloat.png
float DivideToFloat(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

ModioUnsigned64 / float​

Divides an FModioUnsigned64 by a float and returns the result as a float

nd_img_ModioUnsigned64Library_DivideFloat.png
nd_img_ModioUnsigned64Library_DivideFloat.png
float DivideFloat(FModioUnsigned64 LHS, float RHS)

Parameters​

LHS
RHS

ModioUnsigned64 / ModioUnsigned64 (truncate)​

Divides two FModioUnsigned64 values (truncate result)

nd_img_ModioUnsigned64Library_Divide.png
nd_img_ModioUnsigned64Library_Divide.png
FModioUnsigned64 Divide(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

Break to Components​

Breaks a FModioUnsigned64 into two components: high and low 32-bits

nd_img_ModioUnsigned64Library_BreakToComponents.png
nd_img_ModioUnsigned64Library_BreakToComponents.png
void BreakToComponents(FModioUnsigned64 In, int32 High, int32 Low)

Parameters​

In
High
Low

ModioUnsigned64 + ModioUnsigned64​

Adds two FModioUnsigned64 values together

nd_img_ModioUnsigned64Library_Add.png
nd_img_ModioUnsigned64Library_Add.png
FModioUnsigned64 Add(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters​

LHS
RHS

Get Users​

Retrieve the list of users from the user list

nd_img_ModioUserListLibrary_GetUsers.png
nd_img_ModioUserListLibrary_GetUsers.png
TArray<FModioUser> GetUsers(FModioUserList UserList)

Parameters​

UserListThe user list to retrieve the Users from

Returns​

An array of FModioUser objects representing the Users in the list


Get Paged Result​

Retrieve paged result information for a user list

nd_img_ModioUserListLibrary_GetPagedResult.png
nd_img_ModioUserListLibrary_GetPagedResult.png
FModioPagedResult GetPagedResult(FModioUserList UserList)

Parameters​

UserListThe user list to retrieve paged result information from

Returns​

An FModioPagedResult containing metadata about the paginated data


Set Session Identifier​

Changes the session identifier for the provided set of ModioInitializeOptions

nd_img_ModioCommonTypesLibrary_SetSessionIdentifier.png
nd_img_ModioCommonTypesLibrary_SetSessionIdentifier.png
FModioInitializeOptions SetSessionIdentifier(FModioInitializeOptions Options, FString SessionIdentifier)

Parameters​

OptionsThe template ModioInitializeOptions
SessionIdentifierThe new session id to use

Returns​

New ModioInitializeOptions object with the session identifier set to the desired value


Set Session Id​

Changes the session identifier for the provided Metrics Session parameters

nd_img_ModioCommonTypesLibrary_SetSessionId.png
nd_img_ModioCommonTypesLibrary_SetSessionId.png
FModioMetricsSessionParams SetSessionId(FModioMetricsSessionParams Params, FModioGuid Id)

Parameters​

ParamsThe template Metrics Session parameters
IdThe intended Guid to store in the Metrics Session parameters

Set Portal​

Changes the portal for the provided set of ModioInitializeOptions

nd_img_ModioCommonTypesLibrary_SetPortal.png
nd_img_ModioCommonTypesLibrary_SetPortal.png
FModioInitializeOptions SetPortal(FModioInitializeOptions Options, EModioPortal PortalToUse)

Parameters​

OptionsThe template ModioInitializeOptions
PortalToUseThe new portal to use

Returns​

New ModioInitializeOptions object with the portal set to the desired value


Set Game Id​

Changes the game id for the provided set of ModioInitializeOptions

nd_img_ModioCommonTypesLibrary_SetGameId.png
nd_img_ModioCommonTypesLibrary_SetGameId.png
FModioInitializeOptions SetGameId(FModioInitializeOptions Options, int64 GameId)

Parameters​

OptionsThe template ModioInitializeOptions
GameIdThe new game id to use

Returns​

New ModioInitializeOptions object with the game id set to the desired value


Set Game Environment​

Changes the game environment for the provided set of ModioInitializeOptions

nd_img_ModioCommonTypesLibrary_SetGameEnvironment.png
nd_img_ModioCommonTypesLibrary_SetGameEnvironment.png
FModioInitializeOptions SetGameEnvironment(FModioInitializeOptions Options, EModioEnvironment GameEnvironment)

Parameters​

OptionsThe template ModioInitializeOptions
GameEnvironmentThe new environment to use

Returns​

New ModioInitializeOptions object with the game environment set to the desired value


Set Extended Initialization Parameters​

Sets extended initialization parameters for the provided set of ModioInitializeOptions

nd_img_ModioCommonTypesLibrary_SetExtendedInitializationParameters.png
nd_img_ModioCommonTypesLibrary_SetExtendedInitializationParameters.png
FModioInitializeOptions SetExtendedInitializationParameters(FModioInitializeOptions Options, TMap<FString,FString> ExtendedParameters)

Parameters​

OptionsThe template ModioInitializeOptions
ExtendedParametersThe new extended parameters to use (will overwrite existing values)

Returns​

New ModioInitializeOptions object with the extended parameters set to the desired value


Set Background Thread​

Changes the background thread usage for the provided set of ModioInitializeOptions

nd_img_ModioCommonTypesLibrary_SetBackgroundThread.png
nd_img_ModioCommonTypesLibrary_SetBackgroundThread.png
FModioInitializeOptions SetBackgroundThread(FModioInitializeOptions Options, bool bUseBackgroundThread)

Parameters​

OptionsThe template ModioInitializeOptions
bUseBackgroundThreadWhether to use a background thread

Returns​

New ModioInitializeOptions object with the background thread usage set to the desired value


Set API Key​

Changes the API key for the provided set of ModioInitializeOptions

nd_img_ModioCommonTypesLibrary_SetAPIKey.png
nd_img_ModioCommonTypesLibrary_SetAPIKey.png
FModioInitializeOptions SetAPIKey(FModioInitializeOptions Options, FString APIKey)

Parameters​

OptionsThe template ModioInitializeOptions
APIKeyThe new API key to use

Returns​

New ModioInitializeOptions object with the API key set to the desired value


ModioModID != ModioModID​

Compares two mod IDs to check whether they're not equal

nd_img_ModioCommonTypesLibrary_NotEqualTo.png
nd_img_ModioCommonTypesLibrary_NotEqualTo.png
bool NotEqualTo(FModioModID A, FModioModID B)

Parameters​

A
B

Make Server Initialize Options​

Make ModioServerInitializeOptions. Should only be used in conjunction with InitializeServerAsync.

nd_img_ModioCommonTypesLibrary_MakeServerInitializeOptions.png
nd_img_ModioCommonTypesLibrary_MakeServerInitializeOptions.png
FModioServerInitializeOptions MakeServerInitializeOptions(FModioInitializeOptions BaseOptions, FString ModsDirectory, FString Token, TArray<FModioModID> Mods)

Parameters​

BaseOptions
ModsDirectoryThe directory to store modfiles on this server.
TokenThe S2S token for this Server.
ModsThe mods this server should load and use.

Make Metrics Session Params​

Create Metrics Session parameters

nd_img_ModioCommonTypesLibrary_MakeMetricsSessionParams.png
nd_img_ModioCommonTypesLibrary_MakeMetricsSessionParams.png
FModioMetricsSessionParams MakeMetricsSessionParams(TArray<FModioModID> Ids)

Parameters​

IdsThe list of mods to store within the Metrics Session parameters

Make Initialize Options​

Make ModioInitializeOptions. Should only be used in conjunction with InitializeAsync.

nd_img_ModioCommonTypesLibrary_MakeInitializeOptions.png
nd_img_ModioCommonTypesLibrary_MakeInitializeOptions.png
FModioInitializeOptions MakeInitializeOptions(int64 GameId, FString APIKey, EModioEnvironment GameEnvironment, EModioPortal PortalInUse, bool bUseBackgroundThread)

Parameters​

GameIdA positive integer that maps to your game. This can be found in the admin section of your game's page at https://mod.io/
APIKeyThe API key for your game. This can be found in the admin section of your game's page at https://mod.io/
GameEnvironmentThe environment your game has been set up on: test or live.
PortalInUseThe EModioPortal representing the store or service your game is being
bUseBackgroundThreadWhether to run the mod.io SDK on a background thread. Defaults to true. distributed through. Defaults to EModioPortal::None.

Make Guid​

Create a Guid from a string

nd_img_ModioCommonTypesLibrary_MakeGuid.png
nd_img_ModioCommonTypesLibrary_MakeGuid.png
FModioGuid MakeGuid(FString Guid)

Parameters​

GuidA string to wrap within a Guid struct

Make Game Id​

Create a game id from a integer. Should only be used in conjunction with InitializeAsync

nd_img_ModioCommonTypesLibrary_MakeGameId.png
nd_img_ModioCommonTypesLibrary_MakeGameId.png
FModioGameID MakeGameId(int64 GameId)

Parameters​

GameIdA positive integer that maps to your game

Make Entitlement Params​

Create entitlement parameters

nd_img_ModioCommonTypesLibrary_MakeEntitlementParams.png
nd_img_ModioCommonTypesLibrary_MakeEntitlementParams.png
FModioEntitlementParams MakeEntitlementParams(TMap<FString,FString> ExtendedParameters)

Parameters​

ExtendedParametersA map to store extended parameters required by some portals

Make Auth Params​

Creates a ModioAuthenticationParams object

nd_img_ModioCommonTypesLibrary_MakeAuthParams.png
nd_img_ModioCommonTypesLibrary_MakeAuthParams.png
FModioAuthenticationParams MakeAuthParams(FString AuthToken, FString EmailAddress, bool bHasAcceptedTOS)

Parameters​

AuthTokenAuthentication provider-supplied OAuth token
EmailAddressUser email address, can be left blank
bHasAcceptedTOSHas the user been shown the Terms of Service and accepted the Terms of Service?

Returns​

The constructed ModioAuthenticationParams object for use with AuthenticateUserExternalAsync


Make Api Key​

Create an ApiKey id from a string. Should only be used in conjunction with InitializeAsync

nd_img_ModioCommonTypesLibrary_MakeApiKey.png
nd_img_ModioCommonTypesLibrary_MakeApiKey.png
FModioApiKey MakeApiKey(FString ApiKey)

Parameters​

ApiKeyThe api key from your settings panel on mod.io

Get Raw Value from Mod ID​

Retrieves the raw underlying value from an ModioModID. ModioModIDs are intended as opaque types, so use with care.

nd_img_ModioCommonTypesLibrary_GetRawValueFromModID.png
nd_img_ModioCommonTypesLibrary_GetRawValueFromModID.png
int64 GetRawValueFromModID(FModioModID In)

Parameters​

InThe ModioModID to retrieve the value for

Returns​

The underlying value


Get Raw Value from Mod Collection ID​

Retrieves the raw underlying value from an ModioModCollectionID. ModioModCollectionIDs are intended as opaque types, so use with care.

nd_img_ModioCommonTypesLibrary_GetRawValueFromModCollectionID.png
nd_img_ModioCommonTypesLibrary_GetRawValueFromModCollectionID.png
int64 GetRawValueFromModCollectionID(FModioModCollectionID In)

Parameters​

InThe ModioModCollectionID to retrieve the value for

Returns​

The underlying value


ModioModCollectionID == ModioModCollectionID​

Compares two mod Collection IDs to check whether they're equal

nd_img_ModioCommonTypesLibrary_EqualToModCollectionID.png
nd_img_ModioCommonTypesLibrary_EqualToModCollectionID.png
bool EqualToModCollectionID(FModioModCollectionID A, FModioModCollectionID B)

Parameters​

A
B

ModioModID == ModioModID​

Compares two mod IDs to check whether they're equal

nd_img_ModioCommonTypesLibrary_EqualTo.png
nd_img_ModioCommonTypesLibrary_EqualTo.png
bool EqualTo(FModioModID A, FModioModID B)

Parameters​

A
B

Set Version String​

Sets the version string of the mod file

nd_img_ModioCreateModLibrary_SetVersionString.png
nd_img_ModioCreateModLibrary_SetVersionString.png
void SetVersionString(FModioCreateModFileParams In, FString Version)

Parameters​

InThe mod file creation parameters to modify
VersionThe version string of the mod file

Set Tags​

Sets tags for the mod

nd_img_ModioCreateModLibrary_SetTags.png
nd_img_ModioCreateModLibrary_SetTags.png
void SetTags(FModioCreateModParams In, TArray<FString> Tags)

Parameters​

InThe mod creation parameters to modify
TagsThe tags for the mod

Set Source File Version String​

Sets the version string of the source file

nd_img_ModioCreateModLibrary_SetSourceFileVersionString.png
nd_img_ModioCreateModLibrary_SetSourceFileVersionString.png
void SetSourceFileVersionString(FModioCreateSourceFileParams In, FString Version)

Parameters​

InThe source file creation parameters to modify
VersionThe version string of the source file

Set Source File Platforms​

Sets the source file platforms of the source file

nd_img_ModioCreateModLibrary_SetSourceFilePlatforms.png
nd_img_ModioCreateModLibrary_SetSourceFilePlatforms.png
void SetSourceFilePlatforms(FModioCreateSourceFileParams In, TArray<EModioModfilePlatform> Platforms)

Parameters​

InThe source file creation parameters to modify
PlatformsThe source file platforms of the source file

Set Source File Metadata Blob​

Sets the source file metadata blob of the source file

nd_img_ModioCreateModLibrary_SetSourceFileMetadataBlob.png
nd_img_ModioCreateModLibrary_SetSourceFileMetadataBlob.png
void SetSourceFileMetadataBlob(FModioCreateSourceFileParams In, FString MetadataBlob)

Parameters​

InThe source file creation parameters to modify
MetadataBlobThe source file metadata blob of the source file

Set Source File Changelog String​

Sets the changelog string of the source file

nd_img_ModioCreateModLibrary_SetSourceFileChangelogString.png
nd_img_ModioCreateModLibrary_SetSourceFileChangelogString.png
void SetSourceFileChangelogString(FModioCreateSourceFileParams In, FString Changelog)

Parameters​

InThe source file creation parameters to modify
ChangelogThe changelog string of the source file

Set Modfile Platforms​

Sets the mod file platforms of the mod file

nd_img_ModioCreateModLibrary_SetModfilePlatforms.png
nd_img_ModioCreateModLibrary_SetModfilePlatforms.png
void SetModfilePlatforms(FModioCreateModFileParams In, TArray<EModioModfilePlatform> Platforms)

Parameters​

InThe mod file creation parameters to modify
PlatformsThe mod file platforms of the mod file

Set Mod File Metadata Blob​

Sets the mod file metadata blob of the mod file

nd_img_ModioCreateModLibrary_SetModFileMetadataBlob.png
nd_img_ModioCreateModLibrary_SetModFileMetadataBlob.png
void SetModFileMetadataBlob(FModioCreateModFileParams In, FString MetadataBlob)

Parameters​

InThe mod file creation parameters to modify
MetadataBlobThe mod file metadata blob of the mod file

Set Metadata Blob​

nd_img_ModioCreateModLibrary_SetMetadataBlob.png
nd_img_ModioCreateModLibrary_SetMetadataBlob.png
void SetMetadataBlob(FModioCreateModParams In, FString MetadataBlob)

Set Maturity Flags​

Sets the metadata blob of the mod

nd_img_ModioCreateModLibrary_SetMaturityFlags.png
nd_img_ModioCreateModLibrary_SetMaturityFlags.png
void SetMaturityFlags(FModioCreateModParams In, EModioMaturityFlags MaturityFlags)

Parameters​

InThe mod creation parameters to modify
MaturityFlags

Set Mark as Active Release​

Sets the MarkAsActiveRelease flag of the mod file

nd_img_ModioCreateModLibrary_SetMarkAsActiveRelease.png
nd_img_ModioCreateModLibrary_SetMarkAsActiveRelease.png
void SetMarkAsActiveRelease(FModioCreateModFileParams In, bool bMarkAsActiveRelease)

Parameters​

InThe mod file creation parameters to modify
bMarkAsActiveReleaseThe MarkAsActiveRelease flag of the mod file

Set Initial Visibility DEPRECATED​

nd_img_ModioCreateModLibrary_SetInitialVisibility_DEPRECATED.png
nd_img_ModioCreateModLibrary_SetInitialVisibility_DEPRECATED.png
void SetInitialVisibility_DEPRECATED(FModioCreateModParams In, bool InitialVisibility)

Set Initial Visibility​

Sets the initial visibility of the mod

nd_img_ModioCreateModLibrary_SetInitialVisibility.png
nd_img_ModioCreateModLibrary_SetInitialVisibility.png
void SetInitialVisibility(FModioCreateModParams In, EModioObjectVisibilityFlags InitialVisibility)

Parameters​

InThe mod creation parameters to modify
InitialVisibilityThe initial visibility of the mod

Set Homepage URL​

Sets the homepage URL of the mod

nd_img_ModioCreateModLibrary_SetHomepageURL.png
nd_img_ModioCreateModLibrary_SetHomepageURL.png
void SetHomepageURL(FModioCreateModParams In, FString HomepageURL)

Parameters​

InThe mod creation parameters to modify
HomepageURLThe homepage URL of the mod

Set Description​

Sets the description of the mod

nd_img_ModioCreateModLibrary_SetDescription.png
nd_img_ModioCreateModLibrary_SetDescription.png
void SetDescription(FModioCreateModParams In, FString Description)

Parameters​

InThe mod creation parameters to modify
DescriptionThe description of the mod

Set Community Options Flags​

nd_img_ModioCreateModLibrary_SetCommunityOptionsFlags.png
nd_img_ModioCreateModLibrary_SetCommunityOptionsFlags.png
void SetCommunityOptionsFlags(FModioCreateModParams In, EModioModCommunityOptionsFlags CommunityOptionsFlags)

Set Changelog String​

Sets the changelog string of the mod file

nd_img_ModioCreateModLibrary_SetChangelogString.png
nd_img_ModioCreateModLibrary_SetChangelogString.png
void SetChangelogString(FModioCreateModFileParams In, FString Changelog)

Parameters​

InThe mod file creation parameters to modify
ChangelogThe changelog string of the mod file

Reconstruct Error​

Helper method to reconstruct a mod.io error passed via code that cannot reference mod.io types

nd_img_ModioErrorCodeLibrary_ReconstructError.png
nd_img_ModioErrorCodeLibrary_ReconstructError.png
FModioErrorCode ReconstructError(int32 Value, int32 Category)

Parameters​

ValueThe numeric value of the code
CategoryThe category ID (populated by native code)

IsError​

Checks if an error code contains a error

nd_img_ModioErrorCodeLibrary_IsErrorAsExec.png
nd_img_ModioErrorCodeLibrary_IsErrorAsExec.png
bool IsErrorAsExec(FModioErrorCode Error)

Parameters​

Error

Returns​

true if the error code is an error


Get Value​

Get underlying error code for an FModioErrorCode.

nd_img_ModioErrorCodeLibrary_GetValue.png
nd_img_ModioErrorCodeLibrary_GetValue.png
int32 GetValue(FModioErrorCode Error)

Parameters​

Error

Returns​

The underlying error code. 0 represents no error.


Get Message​

Get the textual representation of the error

nd_img_ModioErrorCodeLibrary_GetMessage.png
nd_img_ModioErrorCodeLibrary_GetMessage.png
FString GetMessage(FModioErrorCode Error)

Parameters​

Error

Returns​

An FString message describing the error


Error Code Matches​

Checks if the passed-in ErrorCode matches the specified error condition

nd_img_ModioErrorConditionLibrary_ErrorCodeMatches.png
nd_img_ModioErrorConditionLibrary_ErrorCodeMatches.png
bool ErrorCodeMatches(FModioErrorCode ErrorCode, EModioErrorCondition Condition)

Parameters​

ErrorCodeThe code to check
ConditionThe error condition to check against

Returns​

True if the code matches the condition


Load Async​

Load the texture into memory asynchronously. If it's already in memory, it will be returned immediately.

nd_img_ModioImageLibrary_LoadAsync.png
nd_img_ModioImageLibrary_LoadAsync.png
void LoadAsync(FModioImageWrapper Image, FOnLoadImageDelegate OnImageLoaded)

Parameters​

ImageThe image to load
On Image LoadedCalled when the image has been loaded

Get Texture​

Get the texture if it has been loaded by any FModioImage instance

nd_img_ModioImageLibrary_GetTexture.png
nd_img_ModioImageLibrary_GetTexture.png
UTexture2DDynamic* GetTexture(FModioImageWrapper Image)

Parameters​

ImageThe image to get the texture from

Returns​

The texture if it has been loaded, otherwise nullptr


Get State​

Get the current state of the image

nd_img_ModioImageLibrary_GetState.png
nd_img_ModioImageLibrary_GetState.png
EModioImageState GetState(FModioImageWrapper Image)

Parameters​

ImageThe image to get the state of

Returns​

The state of the image


Get Logo Size​

If the logo size is EModioLogoSize::Original, the original logo size is returned. Otherwise, the thumbnail size of the logo is returned.

nd_img_ModioImageLibrary_GetLogoSize.png
nd_img_ModioImageLibrary_GetLogoSize.png
FVector2D GetLogoSize(UTexture* Logo, EModioLogoSize LogoSize)

Parameters​

LogoIf null and EModioLogoSize::Original is passed, (0, 0) is returned.
LogoSizeThe size of the logo to return

Returns​

Dimensions of the logo when displayed in a 1:1 pixel ratio


If the gallery image size is EModioGallerySize::Original, the original gallery image size is returned. Otherwise, the thumbnail size of the gallery image is returned.

nd_img_ModioImageLibrary_GetGallerySize.png
nd_img_ModioImageLibrary_GetGallerySize.png
FVector2D GetGallerySize(UTexture* GalleryImage, EModioGallerySize GallerySize)

Parameters​

GalleryImageIf null and EModioGallerySize::Original is passed, (0, 0) is returned.
GallerySizeThe size of the gallery image to return

Returns​

Dimensions of the gallery image when displayed in a 1:1 pixel ratio


Get Avatar Size​

If the avatar size is EModioAvatarSize::Original, the original avatar size is returned. Otherwise, the thumbnail size of the avatar is returned.

nd_img_ModioImageLibrary_GetAvatarSize.png
nd_img_ModioImageLibrary_GetAvatarSize.png
FVector2D GetAvatarSize(UTexture* Avatar, EModioAvatarSize AvatarSize)

Parameters​

AvatarIf null and EModioAvatarSize::Original is passed, (0, 0) is returned.
AvatarSizeThe size of the avatar to return

Returns​

Dimensions of the avatar when displayed in a 1:1 pixel ratio


Get Paged Result​

Retrieve paged result information for a mod collection info list

nd_img_ModioModCollectionInfoListLibrary_GetPagedResult.png
nd_img_ModioModCollectionInfoListLibrary_GetPagedResult.png
FModioPagedResult GetPagedResult(FModioModCollectionInfoList ModCollectionInfoList)

Parameters​

ModCollectionInfoListThe mod collection info list to retrieve paged result information from

Returns​

An FModioPagedResult containing metadata about the paginated data


Get Collections​

Retrieve the list of mod collections from the mod collection info list

nd_img_ModioModCollectionInfoListLibrary_GetCollections.png
nd_img_ModioModCollectionInfoListLibrary_GetCollections.png
TArray<FModioModCollectionInfo> GetCollections(FModioModCollectionInfoList ModCollectionInfoList)

Parameters​

ModCollectionInfoListThe mod collection info list to retrieve the mod collections from

Returns​

An array of FModioModCollectionInfo objects representing the mod collections in the list


Get Path​

Get the installation path for a mod on disk

nd_img_ModioModCollectionLibrary_GetPath.png
nd_img_ModioModCollectionLibrary_GetPath.png
FString GetPath(FModioModCollectionEntry Entry)

Parameters​

EntryThe mod collection entry to retrieve the installation path from

Returns​

A FString representing the path to the mod's installation folder. If the mod is not yet installed, this path may not exist. Use GetModState to check the mod's status before accessing files.


Get Mod State​

Get the current state of a mod within the collection

nd_img_ModioModCollectionLibrary_GetModState.png
nd_img_ModioModCollectionLibrary_GetModState.png
EModioModState GetModState(FModioModCollectionEntry Entry)

Parameters​

EntryThe mod collection entry to retrieve the state from

Returns​

An EModioModState enum representing the current state of the mod


Get Mod Profile​

Get the profile information of a mod

nd_img_ModioModCollectionLibrary_GetModProfile.png
nd_img_ModioModCollectionLibrary_GetModProfile.png
FModioModInfo GetModProfile(FModioModCollectionEntry Entry)

Parameters​

EntryThe mod collection entry to retrieve the profile information from

Returns​

An FModioModInfo structure containing the mod's profile data


Get ID​

Retrieve the Mod ID from the mod collection entry

nd_img_ModioModCollectionLibrary_GetID.png
nd_img_ModioModCollectionLibrary_GetID.png
FModioModID GetID(FModioModCollectionEntry Entry)

Parameters​

EntryThe mod collection entry to retrieve the ID from

Returns​

A FModioModID representing the ID of the mod


Get Total Filesize Uncompressed​

Get the total size of all uncompressed dependency files in bytes

nd_img_ModioModDependenciesLibrary_GetTotalFilesizeUncompressed.png
nd_img_ModioModDependenciesLibrary_GetTotalFilesizeUncompressed.png
FModioUnsigned64 GetTotalFilesizeUncompressed(FModioModDependencyList DependencyList)

Parameters​

DependencyListThe dependency list to calculate the total uncompressed file size for

Returns​

An int64 representing the total size of all uncompressed dependency files in bytes


Get Total Filesize​

Get the total size of all dependency files in bytes

nd_img_ModioModDependenciesLibrary_GetTotalFilesize.png
nd_img_ModioModDependenciesLibrary_GetTotalFilesize.png
FModioUnsigned64 GetTotalFilesize(FModioModDependencyList DependencyList)

Parameters​

DependencyListThe dependency list to calculate the total file size for

Returns​

An int64 representing the total size of all dependency files in bytes


Get Paged Result​

Retrieve paged result information for a dependency list

nd_img_ModioModDependenciesLibrary_GetPagedResult.png
nd_img_ModioModDependenciesLibrary_GetPagedResult.png
FModioPagedResult GetPagedResult(FModioModDependencyList DependencyList)

Parameters​

DependencyListThe dependency list to retrieve paged result information from

Returns​

An FModioPagedResult containing metadata about the paginated data


Get Dependencies​

Retrieve the list of mod dependencies from the dependency list

nd_img_ModioModDependenciesLibrary_GetDependencies.png
nd_img_ModioModDependenciesLibrary_GetDependencies.png
TArray<FModioModDependency> GetDependencies(FModioModDependencyList DependencyList)

Parameters​

DependencyListThe dependency list to retrieve mod dependencies from

Returns​

An array of FModioModDependency representing the dependencies of a mod


Get Paged Result​

Retrieve paged result information for a mod info list

nd_img_ModioModInfoListLibrary_GetPagedResult.png
nd_img_ModioModInfoListLibrary_GetPagedResult.png
FModioPagedResult GetPagedResult(FModioModInfoList ModInfoList)

Parameters​

ModInfoListThe mod info list to retrieve paged result information from

Returns​

An FModioPagedResult containing metadata about the paginated data


Get Mods​

Retrieve the list of mods from the mod info list

nd_img_ModioModInfoListLibrary_GetMods.png
nd_img_ModioModInfoListLibrary_GetMods.png
TArray<FModioModInfo> GetMods(FModioModInfoList ModInfoList)

Parameters​

ModInfoListThe mod info list to retrieve the mods from

Returns​

An array of FModioModInfo objects representing the mods in the list


Get Tags​

Retrieve the tags from a mod tag options list

nd_img_ModioModTagOptionsLibrary_GetTags.png
nd_img_ModioModTagOptionsLibrary_GetTags.png
TArray<FModioModTagInfo> GetTags(FModioModTagOptions ModTags)

Parameters​

ModTagsThe mod tag options list to retrieve tags from

Returns​

An array of FModioModTagInfo representing the tags available for a mod


Get Paged Result​

Retrieve paged result information for a mod tag options list

nd_img_ModioModTagOptionsLibrary_GetPagedResult.png
nd_img_ModioModTagOptionsLibrary_GetPagedResult.png
FModioPagedResult GetPagedResult(FModioModTagOptions ModTags)

Parameters​

ModTagsThe mod tag options list to retrieve paged result information from

Returns​

An FModioPagedResult containing metadata about the paginated data


Get Default Portal for Current Platform​

Get the default portal for the platform the game is running on.

nd_img_ModioPlatformHelpersLibrary_GetDefaultPortalForCurrentPlatform.png
nd_img_ModioPlatformHelpersLibrary_GetDefaultPortalForCurrentPlatform.png
EModioPortal GetDefaultPortalForCurrentPlatform()

Parameters​

Returns​

EModioPortal of the portal to use


Get Default Auth Provider for Current Platform​

Get the default Authentication Provider for the current platform the game is running on

nd_img_ModioPlatformHelpersLibrary_GetDefaultAuthProviderForCurrentPlatform.png
nd_img_ModioPlatformHelpersLibrary_GetDefaultAuthProviderForCurrentPlatform.png
EModioAuthenticationProvider GetDefaultAuthProviderForCurrentPlatform()

Parameters​

Returns​

EModioAuthenticationProvider to use for authentication calls


Get Current Platform​

Gets the current platform that the game is running on

nd_img_ModioPlatformHelpersLibrary_GetCurrentPlatform.png
nd_img_ModioPlatformHelpersLibrary_GetCurrentPlatform.png
EModioPlatformName GetCurrentPlatform()

Parameters​

Returns​

EModioPlatformName of the current platform


Make Report for User​

Creates a content report for a user.

nd_img_ModioReportLibrary_MakeReportForUser.png
nd_img_ModioReportLibrary_MakeReportForUser.png
FModioReportParams MakeReportForUser(FModioUserID User, EModioReportType Type, FString ReportDescription, FString ReporterName, FString ReporterContact)

Parameters​

UserThe ID of the User being reported
TypeThe nature of the content report (e.g., abuse, inappropriate behavior)
ReportDescriptionA description of why the content is being reported
ReporterNameName of the submitting user. Recommended for DMCA reports, but may be empty
ReporterContactContact details of the submitting user. Recommended for DMCA reports, but may be empty

Returns​

A struct containing the report parameters


Make Report for Mod​

Creates a content report for a mod.

nd_img_ModioReportLibrary_MakeReportForMod.png
nd_img_ModioReportLibrary_MakeReportForMod.png
FModioReportParams MakeReportForMod(FModioModID Mod, EModioReportType Type, FString ReportDescription, FString ReporterName, FString ReporterContact)

Parameters​

ModThe ID of the content being reported (mod)
TypeThe nature of the content report (e.g., abuse, inappropriate content)
ReportDescriptionA description of why the content is being reported
ReporterNameName of the submitting user. Recommended for DMCA reports, but may be empty
ReporterContactContact details of the submitting user. Recommended for DMCA reports, but may be empty

Returns​

A struct containing the report parameters


Make Report for Game​

Creates a content report for a game.

nd_img_ModioReportLibrary_MakeReportForGame.png
nd_img_ModioReportLibrary_MakeReportForGame.png
FModioReportParams MakeReportForGame(FModioGameID Game, EModioReportType Type, FString ReportDescription, FString ReporterName, FString ReporterContact)

Parameters​

GameThe ID of the game being reported
TypeThe nature of the content report (e.g., abuse, inappropriate content)
ReportDescriptionA description of why the content is being reported
ReporterNameName of the submitting user. Recommended for DMCA reports, but may be empty
ReporterContactContact details of the submitting user. Recommended for DMCA reports, but may be empty

Returns​

A struct containing the report parameters


Round Number String​

Round a number string based on the file size or speed.

nd_img_ModioSDKLibrary_RoundNumberString.png
nd_img_ModioSDKLibrary_RoundNumberString.png
FText RoundNumberString(FText inputText)

Parameters​

inputTextThe text representing the input number.

Returns​

The rounded number string.


Get Percent (integer64/integer64)​

Calculate the percentage between two int64 values.

nd_img_ModioSDKLibrary_Pct_Int64Int64.png
nd_img_ModioSDKLibrary_Pct_Int64Int64.png
float Pct_Int64Int64(int64 Dividend, int64 Divisor)

Parameters​

DividendThe numerator of the percentage calculation.
DivisorThe denominator of the percentage calculation.

Returns​

The floating-point result of Dividend/Divisor.


Is Valid Security Code Format​

Check if the supplied string has the format of a valid mod.io security code.

nd_img_ModioSDKLibrary_IsValidSecurityCodeFormat.png
nd_img_ModioSDKLibrary_IsValidSecurityCodeFormat.png
bool IsValidSecurityCodeFormat(FString String)

Parameters​

StringThe string to check.

Returns​

True if the string matches the mod.io security code format.


Is Valid Email Address Format​

Validate if the supplied email address has a valid format.

nd_img_ModioSDKLibrary_IsValidEmailAddressFormat.png
nd_img_ModioSDKLibrary_IsValidEmailAddressFormat.png
bool IsValidEmailAddressFormat(FString String)

Parameters​

StringThe email address to validate.

Returns​

True if the email address is valid.


BytesGreaterThan (Filesize)​

nd_img_ModioSDKLibrary_IsFilesizeGreaterThanUnit.png
nd_img_ModioSDKLibrary_IsFilesizeGreaterThanUnit.png
bool IsFilesizeGreaterThanUnit(FModioUnsigned64 FileSize, EFileSizeUnit Unit)

Parameters​

FileSize
Unit

Get Time Span as String​

Get the time span between the present and a specified past date as a string.

nd_img_ModioSDKLibrary_GetTimeSpanAsString.png
nd_img_ModioSDKLibrary_GetTimeSpanAsString.png
FString GetTimeSpanAsString(FString PastDateString)

Parameters​

PastDateStringThe past date to compare against the current time.

Returns​

The time span as a string (e.g., "2 days ago").


Get Shortened Number as String​

Shorten a large number for better readability.

nd_img_ModioSDKLibrary_GetShortenedNumberAsString.png
nd_img_ModioSDKLibrary_GetShortenedNumberAsString.png
FString GetShortenedNumberAsString(int64 Number)

Parameters​

NumberThe large number to shorten.

Returns​

The shortened number as a string.


Get Project Initialize Options for Session Id​

Get the options needed to initialize the mod.io SDK specified in the project settings.

nd_img_ModioSDKLibrary_GetProjectInitializeOptionsForSessionId.png
nd_img_ModioSDKLibrary_GetProjectInitializeOptionsForSessionId.png
FModioInitializeOptions GetProjectInitializeOptionsForSessionId(FString SessionId)

Parameters​

SessionIdThe session ID to initialize the project with.

Returns​

The mod.io initialization options for the provided session ID.


Get Project Game Id​

Get the game ID specified in the mod.io project settings.

nd_img_ModioSDKLibrary_GetProjectGameId.png
nd_img_ModioSDKLibrary_GetProjectGameId.png
FModioGameID GetProjectGameId()

Parameters​

Returns​

The project game ID.


Get Project Environment​

Get the environment specified in the mod.io project settings.

nd_img_ModioSDKLibrary_GetProjectEnvironment.png
nd_img_ModioSDKLibrary_GetProjectEnvironment.png
EModioEnvironment GetProjectEnvironment()

Parameters​

Returns​

The project environment type (e.g., production, staging).


Get Project Api Key​

Get the API key specified in the mod.io project settings.

nd_img_ModioSDKLibrary_GetProjectApiKey.png
nd_img_ModioSDKLibrary_GetProjectApiKey.png
FModioApiKey GetProjectApiKey()

Parameters​

Returns​

The project API key.


GetPreviousSize​

Get the previous file size unit from the current unit.

nd_img_ModioSDKLibrary_GetPreviousSize.png
nd_img_ModioSDKLibrary_GetPreviousSize.png
EFileSizeUnit GetPreviousSize(EFileSizeUnit Unit, bool WrapAround)

Parameters​

UnitThe current file size unit.
WrapAroundWhether to wrap around to the largest unit if the current unit is the smallest.

Returns​

The previous file size unit.


GetNextSize​

Get the next file size unit from the current unit.

nd_img_ModioSDKLibrary_GetNextSize.png
nd_img_ModioSDKLibrary_GetNextSize.png
EFileSizeUnit GetNextSize(EFileSizeUnit Unit, bool WrapAround)

Parameters​

UnitThe current file size unit.
WrapAroundWhether to wrap around to the smallest unit if the current unit is the largest.

Returns​

The next file size unit.


Get Monetization Purchase Category​

Get the purchase category ID for the store overlay UI for a given portal.

nd_img_ModioSDKLibrary_GetMonetizationPurchaseCategory.png
nd_img_ModioSDKLibrary_GetMonetizationPurchaseCategory.png
FString GetMonetizationPurchaseCategory(EModioPortal Portal)

Parameters​

PortalThe mod.io portal.

Returns​

The purchase category ID as a string, or empty if not defined.


Get Language Code String​

Get the language code string (ISO 639-1 format) for localization purposes.

nd_img_ModioSDKLibrary_GetLanguageCodeString.png
nd_img_ModioSDKLibrary_GetLanguageCodeString.png
FString GetLanguageCodeString(EModioLanguage Language)

Parameters​

LanguageThe language enum to convert.

Returns​

The language code as a string (e.g., "en", "fr", "de").


Get Language Code from String​

Convert a language code string to the corresponding language enum.

nd_img_ModioSDKLibrary_GetLanguageCodeFromString.png
nd_img_ModioSDKLibrary_GetLanguageCodeFromString.png
EModioLanguage GetLanguageCodeFromString(FString LanguageCode)

Parameters​

LanguageCodeThe language code string (e.g., "en", "fr", "de").

Returns​

The corresponding language enum.


GetDesiredFileSizeUnit (FModioUnsigned64)​

Get the appropriate file size unit based on the file size in bytes.

nd_img_ModioSDKLibrary_GetDesiredFileSizeUnit_Unsigned64.png
nd_img_ModioSDKLibrary_GetDesiredFileSizeUnit_Unsigned64.png
EFileSizeUnit GetDesiredFileSizeUnit_Unsigned64(FModioUnsigned64 FileSize)

Parameters​

FileSizeThe file size in bytes as a FModioUnsigned64.

Returns​

The desired file size unit.


Get Default Session Id Windows​

Get the session ID for Windows to initialize the SDK.

nd_img_ModioSDKLibrary_GetDefaultSessionIdWindows.png
nd_img_ModioSDKLibrary_GetDefaultSessionIdWindows.png
FString GetDefaultSessionIdWindows()

Parameters​

Returns​

The Windows session ID, or an empty string if the platform is not Windows.


ToString (EFileSizeUnit)​

Convert a file size unit to a human-readable string.

nd_img_ModioSDKLibrary_FileSizeUnit_ToString.png
nd_img_ModioSDKLibrary_FileSizeUnit_ToString.png
FString FileSizeUnit_ToString(EFileSizeUnit Unit)

Parameters​

UnitThe file size unit to convert.

Returns​

A formatted string representing the file size unit.


ToString (ModioUnsigned64)​

Convert a file size to a human-readable string with the appropriate unit.

nd_img_ModioSDKLibrary_Filesize_ToString_Unsigned64.png
nd_img_ModioSDKLibrary_Filesize_ToString_Unsigned64.png
FText Filesize_ToString_Unsigned64(FModioUnsigned64 FileSize, int32 MinDecimals, int32 MaxDecimals, EFileSizeUnit Unit, bool bIncludeUnitName)

Parameters​

FileSizeThe file size in bytes as a FModioUnsigned64.
MinDecimalsMinimum number of decimal places to show.
MaxDecimalsMaximum number of decimal places to show.
UnitThe unit to use (e.g., bytes, KB, MB). If 'Largest', the unit will automatically scale to the largest possible unit.
bIncludeUnitNameWhether to include the unit name (e.g., "MB").

Returns​

A formatted string representing the file size.


ToBytes (Filesize)​

Returns the byte size of the given FilesizeUnit (e.g EFileSizeUnit::KB returns 1024)

nd_img_ModioSDKLibrary_Filesize_ToBytes.png
nd_img_ModioSDKLibrary_Filesize_ToBytes.png
FModioUnsigned64 Filesize_ToBytes(EFileSizeUnit FileSizeUnit)

Parameters​

FileSizeUnitThe unit to convert to a byte value

Returns​

The byte value of the given unit.


GetDefaultModInstallationDirectory​

Returns the default mod installation directory for this game and platform, ignoring overrides and without requiring the SDK to be initialized.

nd_img_ModioSubsystem_K2_GetDefaultModInstallationDirectory.png
nd_img_ModioSubsystem_K2_GetDefaultModInstallationDirectory.png
FString K2_GetDefaultModInstallationDirectory(FModioGameID GameID)

Parameters​

GameIDThe ModioGameID of the game we're fetching the default mod installation directory for.

Returns​

The default mod installation directory for the specified game on the current platform


To Filter Params​

Converts a preset filter into a concrete set of filter parameters that can be passed to the mod.io plugin

nd_img_ModioPresetFilterParamsLibrary_ToFilterParams.png
nd_img_ModioPresetFilterParamsLibrary_ToFilterParams.png
FModioFilterParams ToFilterParams(FModioPresetFilterParams Preset)

Parameters​

PresetThe preset to convert

Returns​

The converted filter params


List User Subscription Async​

Runs a filter over the user's subscription list

nd_img_ModioExampleLibrary_ListUserSubscriptionAsync.png
nd_img_ModioExampleLibrary_ListUserSubscriptionAsync.png
void ListUserSubscriptionAsync(FModioFilterParams FilterParams, FOnListAllModsDelegate Callback)

Parameters​

FilterParamsThe filters to use on the user's subscription list
CallbackCalled when mod list has been processed

Get Logo Thumbnail Size​

Get the project specified logo thumbnail size

nd_img_ModioExampleLibrary_GetLogoThumbnailSize.png
nd_img_ModioExampleLibrary_GetLogoThumbnailSize.png
EModioLogoSize GetLogoThumbnailSize()

Parameters​


Get Logo Full Size​

Get the project specified logo full size

nd_img_ModioExampleLibrary_GetLogoFullSize.png
nd_img_ModioExampleLibrary_GetLogoFullSize.png
EModioLogoSize GetLogoFullSize()

Parameters​


Get Avatar Thumbnail Size​

Get the project specified avatar thumbnail size

nd_img_ModioExampleLibrary_GetAvatarThumbnailSize.png
nd_img_ModioExampleLibrary_GetAvatarThumbnailSize.png
EModioAvatarSize GetAvatarThumbnailSize()

Parameters​


SubmitNewModFromMemoryAsync​

Submit a new mod, with its logo data coming from an in-memory buffer rather than a file.

nd_img_ModioSubmissionExtensionLibrary_K2_SubmitNewModFromMemoryAsync.png
nd_img_ModioSubmissionExtensionLibrary_K2_SubmitNewModFromMemoryAsync.png
void K2_SubmitNewModFromMemoryAsync(FModioModCreationHandle Handle, FModioCreateModParams Params, TArray<uint8> PngData, FOnSubmitNewModDelegate Callback)

Parameters​

HandleMod creation handle
ParamsParameters to use when creating the mod
PngDataIn-memory buffer, representative of a PNG file to be used for upload
CallbackCallback once operation has completed

SubmitNewModFileForModFromMemory​

Queues the upload of a new mod file release for the specified mod, using the submitted parameters. This upload method accepts a block of memory TArray<uint8> rather than a file path. The upload's progress can be tracked in the same way as downloads; when completed, a Mod Management Event will be triggered with the result code for the upload.

nd_img_ModioSubmissionExtensionLibrary_K2_SubmitNewModFileForModFromMemory.png
nd_img_ModioSubmissionExtensionLibrary_K2_SubmitNewModFileForModFromMemory.png
void K2_SubmitNewModFileForModFromMemory(UModioSubsystem* Target, FModioModID Mod, FModioCreateModFileMemoryParams Params)

Requirements​

  • initialized-sdk
  • authenticated-user

Parameters​

TargetUModioSubsystem*
ModThe ID of the mod you are submitting a file for
ParamsInformation about the mod file being created, including the memory that will be uploaded as a mod

LoadModFileToMemory​

Loads an installed mod file into memory.

nd_img_ModioSubmissionExtensionLibrary_K2_LoadModFileToMemory.png
nd_img_ModioSubmissionExtensionLibrary_K2_LoadModFileToMemory.png
bool K2_LoadModFileToMemory(UModioSubsystem* Target, FModioModID ModId, TArray<uint8> ModData)

Requirements​

  • initialized-sdk
  • authenticated-user

Parameters​

TargetUModioSubsystem*
ModId
Mod DataA byte array of the mod that has been loaded

Enums​

EModioEntitlementType​

Type of entitlement that was consumed

VirtualCurrency
SKU

EModioGameCloudCookingStatus​

Cloud Cooking status for this game

Disabled
Initializing
Initialized
Finalizing
Enabled
ActionRequired
TearingDown

EModioPlacementSize​

Size of the placement to display

Small
Medium(default)
Large

EModioPlacementType​

Type of the placement

Filters

EModioModfilePlatform​

Enum representing the platform(s) that a modfile is enabled for

Windows
Mac
Linux
Android
iOS
XboxOne
XboxSeriesX
PS4
PS5
Switch
Switch2
Oculus
Source
WindowsServer
LinuxServer

EGameMaturityFlags​

Maturity options for a game

NoneDon't allow mature content in mods (default)
MatureModsAllowedThis game allows mods containing mature content
MatureAudiencesOnlyThis game is for mature audiences only

EGameMonetizationFlags​

Monetization properties of a game

NoneNone set (default)
MonetizationMonetization is enabled
MarketplaceMarketplace is enabled
PartnerProgramPartner Program is enabled

EModioMaturityFlags​

Enum representing mature content that a mod may contain

NoneNo maturity
AlcoholContent contains alcohol references
DrugsContent contains drug references
ViolenceContent contains violence references
ExplicitContent contains sexual references

EModioObjectVisibilityFlags​

Enum representing whether or not a mod is visible to users

HiddenMod is concealed from users
PublicMod is openly available

EModioModServerSideStatus​

Enum representing a mod's server-side status

NotAccepted
Accepted
Deleted

EModioVirusStatus​

If the file has been found to be malicious or not

NoThreat
Malicious
PotentiallyHarmful

EModioVirusScanStatus​

Current state of the scanned file

NotScanned
ScanComplete
InProgress
TooLargeToScan
FileNotFound
ErrorScanning

EModioModCommunityOptionsFlags​

Enum representing community options for a mod Unreal's Enum class flags don't support uint32, so we use uint8 for bitmask handling

NoneNo community options
EnableCommentsComments are enabled
EnablePreviewsEnable Previews
EnablePreviewURLsEnable Preview URLs
AllowDependenciesAllow mod dependencies

EModioRating​

Enumerator with the rating a mod can receive

NeutralA neutral rating
PositiveA positive rating
NegativeA negative rating

EModioModManagementEventType​

What type of event occurred

InstalledMod installation to local storage completed
UninstalledMod uninstallation from local storage completed
UpdatedMod local installation updated to latest version
UploadedMod file was uploaded
BeginInstallMod download and installation has started
BeginUninstallMod uninstallation has started
BeginUpdateMod download and update has started
BeginUploadMod upload has started

EModioAuthenticationProvider​

Simple struct to encapsulate data passed to external authentication systems

XboxLive
Steam
GoG
Itch
Switch
Switch2
Discord
PSDeprecated as of 2026.9 release. Please use PS
Epic
Oculus
OpenID
GoogleIDToken
GoogleServerSideToken

EModioEntitlementConsumptionState​

State of an entitlement consumption transaction

Failed
Pending
Fulfilled
ConsumeLimitExceeded

EModioErrorCondition​

NoError
NetworkErrorWhen this condition is true, the error code represents a connection or HTTP error between the client and the mod.io server.
ConfigurationErrorWhen this condition is true, the error code indicates the SDK's configuration is not valid - the game ID or API key are incorrect or the game has been deleted.
InvalidArgsErrorWhen this condition is true, the error code indicates the arguments passed to the function have failed validation or were otherwise invalid.
FilesystemErrorWhen this condition is true, the error code indicates a permission or IO error when accessing local filesystem data.
InternalErrorWhen this condition is true, the error code represents an internal SDK error - please inform mod.io of the error code value.
ApiErrorRefSuccessWhen this condition is true, the error ref returned by the API indicates an implicit success because the operation has already been performed (ie a no-op is success).
EntityNotFoundErrorWhen this condition is true, the error code indicates that a specified game, mod, user, media file or mod file was not found.
UserTermsOfUseErrorWhen this condition is true, the error code indicates that the user has not yet accepted the mod.io Terms of Use.
SubmitReportErrorWhen this condition is true, the error code indicates that a report for the specified content could not be submitted.
UserNotAuthenticatedErrorWhen this condition is true, the error code indicates that a user is not authenticated.
SDKNotInitializedWhen this condition is true, the error code indicates that the SDK has not been initialized.
UserAlreadyAuthenticatedErrorWhen this condition is true, the error code indicates that the user is already authenticated.
SystemErrorWhen this condition is true, the error code indicates that a low-level system error occurred outside of mod.io SDK control.
OperationCanceledWhen this condition is true, the error code indicates that the asynchronous operation was cancelled before it completed.
ModManagementDisabledWhen this condition is true, the error code indicates that Mod Management has not been enabled.
RateLimitedToo many requests made to the mod.io API within the rate-limiting window. Please wait and try again.
ModBeingProcessedThe specified mod's files are currently being updated by the SDK. Please try again later.
InsufficientSpaceThere is insufficient space to install the mod. Please free up space and try again.
SDKAlreadyInitializedWhen this condition is true, the error code indicates that the SDK has already been initialized.
ModManagementAlreadyEnabledWhen this condition is true, the error code indicates that Mod Management has already been enabled.
InsufficientPermissionsWhen this condition is true, the error code indicates that the current user does not have the required permissions for this operation.
EmailLoginCodeInvalidThe email login code is incorrect, has expired, or has already been used.
AlreadySubscribedThe specified mod is already subscribed to.
InstallOrUpdateCancelledThe current mod installation or update was cancelled.
UploadCancelledThe current modfile upload was cancelled.
TempModSetNotInitializedTempModSet need to be initialized first, call InitTempModSet.
MonetizationOperationErrorAn error occurred while performing a monetization operation.
MonetizationPlatformAuthInvalidPlatform auth failure when performing a monetization operation. The platform auth parameters may be invalid or expired.
PaymentTransactionFailedThe transaction requires a payment but it could not be fulfilled. Please retry with funds on the wallet
IncorrectPriceThe display price for the mod is out-of-date or incorrect. Please retry with the correct display price.
ItemAlreadyOwnedThe authenticated user already has acquired this item
ParentalControlRestrictionsParental control restrictions prevent this account from accessing UGC.
MetricsSessionNotInitializedMetrics session has not yet been initialized. Ensure that you have a metrics secret key set for your project.
MetricsSessionAlreadyInitializedMetrics session has already been been initialized.
MetricsSessionIsActiveMetrics session has been started.
MetricsSessionIsNotActiveMetrics session has not been started. Please call MetricsSessionStartAsync.
MetricsSessionHasNoModsNo mods have been added to the session.
PremiumFeatureNotAvailableThis premium feature is not available for your project.
EmailExchangeCodeAlreadyRedeemedThe email security code has already been redeemed.
ModDependenciesNotAllowedCannot add a dependency because the target mod has not opted in to dependencies.
ModCannotAddDependencyMonetizedCannot add a dependency because the mod is monetized.
ModIsDependencyCannot turn off mod dependencies when the mod is currently a dependency for other mods.
ModCannotAllowDependencyMonetizedThis mod cannot allow dependencies because it is monetized.
ModCannotDeleteDependencyThis mod is a dependency of other mods and cannot be deleted.
RequestInProgressThe asynchronous operation is already running. Please wait for it to complete before calling it again
InvalidZipFileThe zip file submitted is invalid.
CloudCookingDisabledCloud Cooking is disabled for this game.
AlreadySubscribedToUserThe authenticated user is already subscribed to the user.
CannotSubscribeToSelfYou cannot subscribe to yourself.

EModioImageState​

Enumerator to represent the possible states the image data can be, from hard drive to corrupted

OnDiscImage data is located on hard drive
LoadingIntoMemoryImage data is transferring to a memory location
InMemoryImage data is located in memory
CorruptedImage data is not readable

EModioModProgressState​

Enum representing the possible states of mod progress

InitializingDownload information is being retrieved from mod.io servers
DownloadingMod archive is downloading from mod.io servers
ExtractingMod archive is downloaded and now extracting
CompressingMod archive is being compressed from files on disk
UploadingMod archive is uploading to mod.io servers

EModioOpenStoreResult​

Enumerator of potential results on attempting to open a native platform store

SuccessStore opened successfully *
FailedInactiveMonetization not active *
FailedUnsupportedPlatformThe current platform does not support a native store *
FailedStoreNotLoadedThe current platform has not loaded the store skus yet *
FailedStoreEmptyThe current platform has no products in the store *
FailedUnknownFailed to open for an unknown reason *

EModioStorageLocation​

Identifies the backing location used to store data.

Local
Cache

EModioStorageUsage​

Indicates how a storage amount should be interpreted when reporting disk usage. * Use Consumed for space already used by mod.io data, and Available for free space that can be used for downloads/installs.

Consumed
Available

EModioEnvironment​

Enum representing which environment the game is deployed to: Test or Live.

TestTest (private) environment
LiveLive (public) environment

EModioPortal​

Enum representing the store or service your game is being distributed through

None
Apple
EpicGamesStore
GOG
Google
Itchio
Nintendo
PSDeprecated as of 2026.9 release. Please use PS
Steam
XboxLive

EModioPlatformName​

Enum representing a named platform that the plugin is running on.

Windows
Mac
Linux
PS4
PS5
XBoxOne
XSX
Switch
Switch2
Unknown
Android
iOS

EModioLogoSize​

Enum representing mod logo sizes

Thumb320320x180px
Thumb640640x360px
Thumb12801280x720px
OriginalOriginal Size

EModioAvatarSize​

Enum representing avatar image sizes

OriginalOriginal Size
Thumb5050x50px Thumbnail
Thumb100100x100px Thumbnail

EModioGallerySize​

Enum for the standard size a gallery image can use

OriginalOriginal Size
Thumb320320x180px Thumbnail
Thumb12801280x720 Thumbnail

EModioLogLevel​

Degree of severity for the log output

TraceDetailed low-level debugging output. Not intended for general use
DetailedDetailed but not low-level. Generally useful for some mid-level information for debugging.
InfoInformational output containing status messages
WarningWarnings about incorrect plugin usage, timeouts
ErrorOnly errors

EModioLanguage​

Enum representing the languages mod.io supports responses in

English
Bulgarian
French
German
Italian
Polish
Portuguese
PortugueseBrazilian
Hungarian
Japanese
Korean
Russian
Spanish
Thai
ChineseSimplified
ChineseTraditional
Turkish
Ukrainian
Arabic
Czech

EModioModChangeType​

Enum representing the types of changes that can occur to a mod in the user's list

AddedThe user's list has a new mod to synchronize
RemovedThe user's list must remove a mod to synchronize
UpdatedThe user's list must update a mod to synchronize

EFileSizeUnit​

Enumerator with the possible memory measurement units

LargestWill take the largest one that becomes a number larger than 1 (i.e, 1300mb becomes 1.3gb)
BA single byte
KBKilobytes
MBMegabytes
GBGigabytes

EModioSortFieldType​

Enum indicating which field should be used to sort the results

IDUse mod ID (default)
DownloadsTodayUse number of downloads in last 24 (exposed in REST API as "popular")
SubscriberCountUse number of subscribers
RatingUse mod rating
DateMarkedLiveUse date mod was marked live
DateUpdatedUse date mod was last updated
DownloadsTotalUse downloads total
AlphabeticalUse mod name

EModioSortDirection​

Enum indicating which direction sorting should be applied

Ascending(default)
DescendingSort in descending order

EModioRevenueFilterType​

Enum indicating filtering options based off revenue type

FreeReturn only free mods
PaidReturn only paid mods
FreeAndPaidReturn both free and paid mods
FreeAndPaidWeightedReturn both free and paid mods at game specified weighting

EModioFilterTimespan​

Enum indicating the duration from which results should be included

Today
Week(default)
Month
ThreeMonths
Year
AllTime

EModioModState​

Enum representing the current state of a mod

InstallationPendingThe mod is pending installation. This state is not saved.
InstalledThe mod is installed.
UpdatePendingThe mod is pending an update. This state is saved as installed.
DownloadingThe mod is downloading as part of the installation process. This state is not saved.
ExtractingThe mod is extracting as part of the installation process. This state is not saved.
UninstallPendingThe mod is pending uninstallation. This state is saved as installed.

EModioReportType​

Enumeration for the type of report that a mod can receive

GenericA generic mod report
DMCADigital Millennium Copyright Act mod report
NotWorkingNot working mod report
RudeContentRude content mod report
IllegalContentIllegal content mod report
StolenContentStolen content mod report
FalseInformationFalse information mod report
OtherOther type of mod report