---
source_url: https://www.pubnub.com/docs/chat/unreal-chat-sdk
title: PubNub Unreal Engine Chat API & SDK Docs 1.0.2
updated_at: 2026-05-21T15:45:08.862Z
---

> Documentation Index
> For a curated overview of PubNub documentation, see: https://www.pubnub.com/docs/llms.txt
> For the full list of all documentation pages, see: https://www.pubnub.com/docs/llms-full.txt


# PubNub Unreal Engine Chat API & SDK Docs 1.0.2

This SDK offers a set of handy methods to create your own feature-rich chat or add a chat to your existing application.

##### Usage in Blueprints and C++

You can use PubNub's functionality via Blueprints or directly in C++ code.

* In Blueprints, you can access PubNub from any Widget or Actor. Start by [initializing chat](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/configuration#initialize-pubnub-chat) using `InitChat` on `UPubnubChatSubsystem`. Afterwards, you can use the returned `UPubnubChat` object reference to call all Chat SDK functions.

:::warning Blueprint functions
The Blueprints provided in the documentation show how you can structure your application and may contain utility methods and elements like buttons that are not part of the Unreal Chat SDK and are meant to serve as guidance.
:::

* In C++, you can use UPubnubChatSubsystem as any other Game Instance Subsystem. #include "Kismet/GameplayStatics.h" #include "Engine/GameInstance.h" #include "PubnubChatSubsystem.h" // ACTION REQUIRED: Replace ASample_ChatSubsystem with name of your Actor class void ASample_ChatSubsystem::InitChatSample() { // Get PubnubChatSubsystem from GameInstance UGameInstance* GameInstance = UGameplayStatics::GetGameInstance(this); UPubnubChatSubsystem* PubnubChatSubsystem = GameInstance->GetSubsystem<UPubnubChatSubsystem>(); // Initialize Chat - InitChat may fail under some conditions so make sure to check the Result for errors before using the Chat FPubnubChatInitChatResult InitChatResult = PubnubChatSubsystem->InitChat(TEXT("demo"), TEXT("demo"), TEXT("Player_001")); UPubnubChat* PubnubChat = InitChatResult.Chat; } Chat now allows you to call all Chat SDK functions, for example, Chat->GetChannel("my_channel").

:::tip Installed from FAB?
If you installed the [PubNub Gaming SDK](https://www.fab.com/listings/9501a8d6-f9e6-4cf8-8b56-d173bdb71fc4) from FAB, you already have both the Chat SDK and the core [Unreal Engine SDK](https://www.pubnub.com/docs/sdks/unreal). The core SDK docs cover setup, pub/sub, presence, and other foundational APIs.
:::

It relies on the existing [Unreal Engine](https://www.pubnub.com/docs/sdks/unreal) SDK and exposes various PubNub APIs to Unreal with twists:

* Tailored specifically to the chat use case by offering easy-to-use methods that let you do exactly what you want, like [StartTyping()](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/channels/typing-indicator#start-typing) (a message) or [Join()](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/channels/join) (a channel).
* Meant to be easy & intuitive to use as it focuses on features you would most likely build in your chat app, not PubNub APIs and all the technicalities behind them.
* Offers new chat options like [quotes](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/messages/quotes), [mentions](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/users/mentions), [channel references](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/channels/references), [threads](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/messages/threads), [anti-spam configuration](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/configuration#initialize-pubnub), or [read receipts](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/messages/read-receipts), to name just a few, that let you build a full-fledged app quickly.

Go to the **Learn** section to find out more about:

* [Access control](https://www.pubnub.com/docs/chat/unreal-chat-sdk/learn/access-control) (authentication & authorization)
* [Unreal Chat SDK entities](https://www.pubnub.com/docs/chat/unreal-chat-sdk/learn/chat-entities/chat) (building blocks of the Unreal Chat SDK - find out what properties they have and which methods they expose)
* [Glossary](https://www.pubnub.com/docs/chat/unreal-chat-sdk/learn/glossary)

## Installation

Refer to [Initial configuration](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/configuration) for detailed instructions on how to install the Unreal Chat SDK.

The Unreal Chat SDK is available on [FAB](https://www.fab.com/listings/9501a8d6-f9e6-4cf8-8b56-d173bdb71fc4) as part of the **PubNub Gaming SDK** and on [GitHub](https://github.com/pubnub/unreal-engine-chat).

## Get started

Assuming you have read the **Learn** section and understand the idea behind the Unreal Chat SDK's architecture, you can move to the **Build** section and start creating your own chat.

Follow these steps:

1. Create a PubNub account in Admin Portal and a sample app. You'll need the publish and subscribe keys from your app's keyset to start building a chat. Sign upDon't feel like leaving this page to sign up? Required keyset configurationTo use the [GetChannels()](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/channels/list), [GetChannelSuggestions()](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/channels/references), [GetUsers()](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/users/list), and [GetUserSuggestions()](https://www.pubnub.com/docs/chat/unreal-chat-sdk/build/features/users/mentions) methods in the Chat SDKs with Access Manager, you must uncheck the **Disallow Get All Channel Metadata** and **Disallow Get All User Metadata** checkboxes in the App Context section of your keyset configuration in the [Admin Portal](https://admin.pubnub.com).
2. Once you have checked what Unreal Chat SDK has to offer, start building your own chat app: a. Initialize Unreal Chat SDK and configure it for the features you want to implement. b. Create channels, users, messages, and all other chat features.