> For the complete documentation index, see [llms.txt](https://mars-15.gitbook.io/dispatchito/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mars-15.gitbook.io/dispatchito/basic-functionality/unsubscribing.md).

# Unsubscribing

There are three ways to unsubscribe:

1. Unsubscribe using a binding handle
2. Unsubscribe from all topics
3. Unsubscribe from all topics as interface implementer

#### Using binding handle

Achieved by calling `Unsubscribe` function and passing in the handle or by calling `UnsubscribeMany` and passing an array of handles.

{% tabs %}
{% tab title="Blueprint" %}

<figure><img src="https://1181272575-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfQy1REqz5GdSLZ1Mbpoo%2Fuploads%2FBcj1gQ64vfRL4DTrbcth%2Fimage.png?alt=media&amp;token=f121bb69-f9e8-4e19-885e-116fbc6bb0ea" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="C++" %}

```cpp
FDispatchitoEventBindingHandle handle;
TArray<FDispatchitoEventBindingHandle> handles;

UDispatchitoSubsystem* subsystem = GEngine->GetEngineSubsystem<UDispatchitoSubsystem>();

subsystem->Unsubscribe(handle);

subsystem->UnsubscribeMany(handles);
```

{% endtab %}
{% endtabs %}

#### From all topics

Achieved by calling `UnsubscribeFromAllTopics` function. This removes the subscription to all topics for the caller previously made by calling `SubscribeToAllTopics`. Optionally, you can set the `bIncludeIndividualSubscriptions` parameter in order to also include all the subscriptions for the caller made with `SubscribeToTopic` - this is mostly for convenience as it removes the requirement of storing the handles if need to bulk remove.

{% tabs %}
{% tab title="Blueprint" %}

<figure><img src="https://1181272575-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfQy1REqz5GdSLZ1Mbpoo%2Fuploads%2FflQiLMUCxDs3kiLmMrpt%2Fimage.png?alt=media&amp;token=f842f824-4785-41ed-839d-57ce566a450e" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="C++" %}

```cpp
UDispatchitoSubsystem* subsystem = GEngine->GetEngineSubsystem<UDispatchitoSubsystem>();

bool includeIndividual = false;

subsystem->UnsubscribeFromAllTopics(subscriber, includeIndividual);
```

{% endtab %}
{% endtabs %}

#### From all topics as an interface implementer

Achieved by calling `UnsubscribeFromAllTopicsAsInterface` function. This removes the subscription to all topics for the caller previously made by calling `SubscribeToAllTopicsAsInterface`. Subscriptions made by this object using other subscribing methods won't be removed.

{% tabs %}
{% tab title="Blueprint" %}

<figure><img src="https://1181272575-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfQy1REqz5GdSLZ1Mbpoo%2Fuploads%2FJvlMCLuRJbKXK6nbv3r4%2Fimage.png?alt=media&amp;token=6d6e5c1c-38a3-4cd4-b63b-ff2b31ec5c39" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="C++" %}

```cpp
UDispatchitoSubsystem* subsystem = GEngine->GetEngineSubsystem<UDispatchitoSubsystem>();

subsystem->UnsubscribeFromAllTopicsAsInterface(subscriber);
```

{% endtab %}
{% endtabs %}
