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

# XblPresenceQueryFilters

> XblPresenceQueryFilters

Struct passed to presence APIs to filter the presence records returned.

## Syntax

```cpp theme={null}
typedef struct XblPresenceQueryFilters {  
    const XblPresenceDeviceType* deviceTypes;  
    size_t deviceTypesCount;  
    const uint32_t* titleIds;  
    size_t titleIdsCount;  
    XblPresenceDetailLevel detailLevel;  
    bool onlineOnly;  
    bool broadcastingOnly;  
} XblPresenceQueryFilters  
```

### Members

*deviceTypes*\
Type: const [XblPresenceDeviceType\*](https://docs.xbox.com/reference/live/xsapi-c/presence_c/enums/xblpresencedevicetype.md)

Array of device types. If this field is null, defaults to all possible deviceTypes.

*deviceTypesCount*\
Type: size\_t

Size of the deviceTypes array.

*titleIds*\
Type: const uint32\_t\*

List of titleIds for filtering the result. If the input is an empty vector, defaults to all possible titles.

*titleIdsCount*\
Type: size\_t

Size of the titleIds array.

*detailLevel*\
Type: [XblPresenceDetailLevel](https://docs.xbox.com/reference/live/xsapi-c/presence_c/enums/xblpresencedetaillevel.md)

Detail level of the result. Defaults to XblPresenceDetailLevel::Title which get basic title level information. To get rich presence info, set to XblPresenceDetailLevel::All

*onlineOnly*\
Type: bool

If true, API will filter out records for users that are offline.

*broadcastingOnly*\
Type: bool

If true, API will filter out records for users that are not broadcasting.

## Remarks

If the filters are not provided, defaults will be used:\
&#x20;\- Returns records for all possible titles on all devices.\
&#x20;\- Defaults to XblPresenceDetailLevel::Default which is equivalent to XblPresenceDetailLevel::Title (get basic title level information).\
&#x20;\- Does not filter out users who are offline or broadcasting.\


## Argument of

[XblPresenceGetPresenceForMultipleUsersAsync](https://docs.xbox.com/reference/live/xsapi-c/presence_c/functions/xblpresencegetpresenceformultipleusersasync.md)\
[XblPresenceGetPresenceForSocialGroupAsync](https://docs.xbox.com/reference/live/xsapi-c/presence_c/functions/xblpresencegetpresenceforsocialgroupasync.md)

## Requirements

**Header:** presence\_c.h

## See also

[presence\_c](https://docs.xbox.com/reference/live/xsapi-c/presence_c/presence_c_members.md)


## Related topics

- [XblPresenceDetailLevel](https://docs.xbox.com/reference/live/xsapi-c/presence_c/enums/xblpresencedetaillevel.md)
- [XblPresenceDeviceType](https://docs.xbox.com/reference/live/xsapi-c/presence_c/enums/xblpresencedevicetype.md)
- [XblPresenceGetPresenceForMultipleUsersAsync](https://docs.xbox.com/reference/live/xsapi-c/presence_c/functions/xblpresencegetpresenceformultipleusersasync.md)
- [presence_c (contents)](https://docs.xbox.com/reference/live/xsapi-c/presence_c/presence_c_members.md)
- [Getting a user's Presence](https://docs.xbox.com/services/xbox-services/community/presence/how-to/live-getting-a-users-presence.md)
