> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XblPrivacyBlockListChangedHandler

> Defines a callback that's invoked when the user's block list changes.

# XblPrivacyBlockListChangedHandler

A callback invoked when the user's block list changes.

## Syntax

```cpp theme={null}
typedef void (STDAPIVCALLTYPE* XblPrivacyBlockListChangedHandler)(  
         _In_ const XblPrivacyBlockListChangeEventArgs* eventArgs,  
         _In_opt_ void* context  
);  
```

### Parameters

*eventArgs*   \_In\_\
Type: [const XblPrivacyBlockListChangeEventArgs\*](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/structs/xblprivacyblocklistchangeeventargs.md)

The arguments associated with the block list change. The fields of the structure are valid only during the callback.

*context*   \_In\_opt\_\
Type: void\*

The context that was provided when the handler was added.

### Return value

Type: void

## Remarks

Register this callback by calling [XblPrivacyAddBlockListChangedHandler](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/functions/xblprivacyaddblocklistchangedhandler.md). The *context* parameter receives the *handlerContext* value that you passed when you registered the handler.

Each call describes one change. The `changeType` member of *eventArgs* is `XblPrivacyListChangeType::Added` or `XblPrivacyListChangeType::Removed`, and the `xuids` array lists the XBOX user IDs (XUIDs) that were added to or removed from the block list. The callback reports only what changed, not the full list.

The block list is the list that the privacy overview calls the Avoid list. To get the full list, call [XblPrivacyGetAvoidListAsync](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/functions/xblprivacygetavoidlistasync.md).

The `xuids` array and the other fields of *eventArgs* are valid only until the callback returns. Copy any XUIDs that you need to keep before you return.

You can call [XblPrivacyRemoveBlockListChangedHandler](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/functions/xblprivacyremoveblocklistchangedhandler.md) from inside the callback.

## Argument of

[XblPrivacyAddBlockListChangedHandler](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/functions/xblprivacyaddblocklistchangedhandler.md)

## Requirements

**Header:** privacy\_c.h

**Library:** Microsoft.Xbox.Services.142.C.lib or Microsoft.Xbox.Services.143.C.lib

## See also

[privacy\_c](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/privacy_c_members.md)\
[XblPrivacyBlockListChangeEventArgs](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/structs/xblprivacyblocklistchangeeventargs.md)\
[XblPrivacyListChangeType](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/enums/xblprivacylistchangetype.md)\
[XblPrivacyRemoveBlockListChangedHandler](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/functions/xblprivacyremoveblocklistchangedhandler.md)\
[Privacy overview](https://docs.xbox.com/services/xbox-services/fundamentals/identity/privacy/live-privacy-overview.md)


## Related topics

- [XblPrivacyAddBlockListChangedHandler](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/functions/xblprivacyaddblocklistchangedhandler.md)
- [XblPrivacyBlockListChangeEventArgs](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/structs/xblprivacyblocklistchangeeventargs.md)
- [privacy_c (contents)](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/privacy_c_members.md)
- [XblPrivacyRemoveBlockListChangedHandler](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/functions/xblprivacyremoveblocklistchangedhandler.md)
- [XblPrivacyMuteListChangedHandler](https://docs.xbox.com/reference/live/xsapi-c/privacy_c/functions/xblprivacymutelistchangedhandler.md)
