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


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


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


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

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

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

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

TMap<FModioModID,FModioModCollectionEntry> QueryUserSubscriptions()
Parameters
TargetModioSubsystem
Returns

TMap<FModioID, 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

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

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<FModioID, 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

FModioOptionalModProgressInfo K2_QueryCurrentModUpdate()
Parameters
TargetModioSubsystem
Returns

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

PurchaseModAsync

Purchases a mod for the current player

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

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

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. Please contact your mod.io representative for more details.

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. Please contact your mod.io representative for more details.

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

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. Please contact your mod.io representative for more details.

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

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

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

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.

ListAllModsAsync

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

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

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

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

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

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

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

GetUserDelegationTokenAsync

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

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

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

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

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

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

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

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

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

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

FModioModCreationHandle K2_GetModCreationHandle()
Parameters
TargetModioSubsystem

GetLanguage

Get the currently applied language

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

TArray<FModioValidationError> GetLastValidationError()
Requirements
  • initialized-sdk
Parameters
TargetModioSubsystem
Returns

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

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

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


Structs

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

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

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

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

ModioUnsigned64

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


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


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


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.


ModioErrorCode

Wrapper around Modio::ErrorCode


ModioOptionalGameInfo

Strong type struct to store an optional GameInfo parameter


ModioOptionalImage

Strong type struct to wrap Image data as an optional value


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


ModioOptionalUInt64

Strong type struct to wrap uint64 as an optional value


ModioOptionalModInfoList

Struct to wrap ModInfoList 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

ModioOptionalUserList

Struct to wrap UserList into an optional parameter


ModioOptionalModChangeMap

Strong type struct to wrap a ModDependencyList data 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.

ModioApiKey

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


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


ModioEntitlementParams

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


ModioMetricsSessionParams

Simple struct to store metric session specific parameters


ModioTokenPackID

Strong type struct to wrap Token Pack ID


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

ModioEditModParams

Struct type to specify the fields to update for a mod


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

ModioFilterParams

Class storing a set of filter parameters for use in ListAllModsAsync


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)
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

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

ModioModChangeMap

Strong type struct to wrap mod change information

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

ModioModCollectionEntry

Struct representing a mod which is installed locally


ModioModCreationHandle

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


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.

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


ModioReportParams

Struct type to store the parameters used to report a mod


StorageInfoKey

Variables
EModioStorageLocationLocation
EModioStorageUsageUsage

ModioStorageInfo


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
FStringTermsTextThe plaintext version of the mod.io terms of use

ModioOptionalTokenPack

Strong type struct to store an optional ModInfo parameter


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

ModioOptionalUser

Struct wrapper for an optional ModioUser


ModioUserList

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

Variables
FModioPagedResultPagedResultA paged result property
TArray<FModioUser>InternalListInternal array of users

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

ModioCreateModFileMemoryParams

Variables
TArray<uint8>ModMemory

Functions

Set Session Identifier

Changes the session identifier for the provided set of ModioInitializeOptions

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

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

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

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

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

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

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

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

bool NotEqualTo(FModioModID A, FModioModID B)

Parameters

A
B

Make Metrics Session Params

Create Metrics Session parameters

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

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

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

FModioGameID MakeGameId(int64 GameId)

Parameters

GameIdA positive integer that maps to your game

Make Entitlement Params

Create entitlement parameters

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

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

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

int64 GetRawValueFromModID(FModioModID In)

Parameters

InThe ModioModID to retrieve the value for

Returns

The underlying value


ModioModID == ModioModID

Compares two mod IDs to check whether they're equal

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

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

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

Parameters

InThe mod creation parameters to modify
TagsThe tags for the mod

Set Modfile Platforms

Sets the mod file platforms of the mod file

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

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

void SetMetadataBlob(FModioCreateModParams In, FString MetadataBlob)

Set Maturity Flags

Sets the metadata blob of the mod

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

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

void SetInitialVisibility_DEPRECATED(FModioCreateModParams In, bool InitialVisibility)

Set Initial Visibility

Sets the initial visibility of the mod

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

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

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

void SetCommunityOptionsFlags(FModioCreateModParams In, EModioModCommunityOptionsFlags CommunityOptionsFlags)

Set Changelog String

Sets the changelog string of the mod file

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

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

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

FText FileSizeUnsigned64_ToText(FModioUnsigned64 FileSize, int32 MinDecimals, int32 MaxDecimals, TEnumAsByte<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

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


Reconstruct Error

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

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

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

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

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

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


List User Subscription Async

Runs a filter over the user's subscription list

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

nd_img_ModioExampleLibrary_GetLogoThumbnailSize.png

EModioLogoSize GetLogoThumbnailSize()

Get Logo Full Size

nd_img_ModioExampleLibrary_GetLogoFullSize.png

EModioLogoSize GetLogoFullSize()

Get Avatar Thumbnail Size

nd_img_ModioExampleLibrary_GetAvatarThumbnailSize.png

EModioAvatarSize GetAvatarThumbnailSize()

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

FModioFilterParams ToFilterParams(FModioPresetFilterParams Preset)

Parameters

PresetThe preset to convert

Returns

The converted filter params


Load Async

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

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

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

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

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

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

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 Path

Get the installation path for a mod on disk

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

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

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

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

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

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

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

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

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

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 Total Progress

Retrieve the total amount of progress required for a specified state

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

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

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 Tags

Retrieve the tags from a mod tag options list

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

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

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

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

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

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

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

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

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

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

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

bool IsValidEmailAddressFormat(FString String)

Parameters

StringThe email address to validate.

Returns

True if the email address is valid.


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

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

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

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

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

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

FModioApiKey GetProjectApiKey()

Parameters

Returns

The project API key.


Get Monetization Purchase Category

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

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

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

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

TEnumAsByte<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

FString GetDefaultSessionIdWindows()

Parameters

Returns

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


ToString (ModioUnsigned64)

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

nd_img_ModioSDKLibrary_Filesize_ToString_Unsigned64.png

FText Filesize_ToString_Unsigned64(FModioUnsigned64 FileSize, int32 MinDecimals, int32 MaxDecimals, TEnumAsByte<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.


Get Space by Key

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

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


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

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


Is Purchasable

Check if the token pack is purchasable

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

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

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

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

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

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

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

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

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

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

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

float Percentage_Unsigned64(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters

LHS
RHS

ModioUnsigned64 != ModioUnsigned64

Compares two FModioUnsigned64 values for inequality

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

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

bool LessThan(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters

LHS
RHS

ModioUnsigned64 > 0

Checks if FModioUnsigned64 is greater than zero

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

bool GreaterThan(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters

LHS
RHS

ModioUnsigned64 == ModioUnsigned64

Compares two FModioUnsigned64 values for equality

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

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

float DivideFloat(FModioUnsigned64 LHS, float RHS)

Parameters

LHS
RHS

ModioUnsigned64 / ModioUnsigned64 (truncate)

Divides two FModioUnsigned64 values (truncate result)

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

void BreakToComponents(FModioUnsigned64 In, int32 High, int32 Low)

Parameters

In
High
Low

ModioUnsigned64 + ModioUnsigned64

Adds two FModioUnsigned64 values together

nd_img_ModioUnsigned64Library_Add.png

FModioUnsigned64 Add(FModioUnsigned64 LHS, FModioUnsigned64 RHS)

Parameters

LHS
RHS

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

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

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 wiull be uploaded as a mod

LoadModFileToMemory

Loads an installed mod file into memory.

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

EModioModfilePlatform

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

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

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

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

EModioVirusScanStatus

Current state of the scanned file

NotScanned
ScanComplete
InProgress
TooLargeToScan
FileNotFound
ErrorScanning

EModioObjectVisibilityFlags

Enum representing whether or not a mod is visible to users

HiddenMod is concealed from users
PublicMod is openly available

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

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

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
Discord
PSN
Epic
Oculus
OpenID
GoogleIDToken
GoogleServerSideToken

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
PSN
Steam
XboxLive

EModioPlatformName

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

Windows
Mac
Linux
PS4
PS5
XBoxOne
XSX
Switch
Unknown
Android
iOS

EModioLogoSize

Thumb320320x180px
Thumb640640x360px
Thumb12801280x720px
OriginalOriginal Size

EModioAvatarSize

OriginalOriginal Size
Thumb5050x50px Thumbnail
Thumb100100x100px Thumbnail

EModioGallerySize

OriginalOriginal Size
Thumb320320x180px Thumbnail
Thumb12801280x720 Thumbnail

EModioLogLevel

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
Hungarian
Japanese
Korean
Russian
Spanish
Thai
ChineseSimplified
ChineseTraditional
Turkish
Ukrainian
Arabic

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

EModioEntitlementConsumptionState

State of an entitlement consumption transaction

Failed
Pending
Fulfilled
ConsumeLimitExceeded

EModioEntitlementType

Type of entitlement that was consumed

VirtualCurrency

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.
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

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

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

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.

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 *
FailedUnknownFailed to open for an unknown reason *

EModioRating

Enumerator with the rating a mod can receive

NeutralA neutral rating
PositiveA positive rating
NegativeA negative rating

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

EModioStorageLocation

Local
Cache

EModioStorageUsage

Consumed
Available