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

# XblAchievementsManagerDoWork

> XblAchievementsManagerDoWork

# XblAchievementsManagerDoWork

Called whenever the title wants to update the state of achievements and get list of change events.

## Syntax

```cpp theme={null}
HRESULT XblAchievementsManagerDoWork(  
         const XblAchievementsManagerEvent** achievementsEvents,  
         size_t* achievementsEventsCount  
)  
```

### Parameters

*achievementsEvents*   \_Outptr\_result\_maybenull\_\
Type: [XblAchievementsManagerEvent\*\*](/reference/live/xsapi-c/achievements_manager_c/structs/xblachievementsmanagerevent)

Passes back a pointer to the array of achievement events that have occurred since the last call to XblAchievementsManagerDoWork.

*achievementsEventsCount*   \_Out\_\
Type: size\_t\*

Passes back the number of events in the achievement events array.

### Return value

Type: HRESULT

HRESULT return code for this API operation.

## Remarks

Must be called every frame for data to be up to date. The array of achievement events that is sent back is only valid until the next call to [XblAchievementsManagerDoWork](/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagerdowork). Make sure to check if there were achievement events sent back. If the achievement events array is null, no results. If the achievement events count is 0, no results. If there were achievement events sent back then handle each [XblAchievementsManagerEvent](/reference/live/xsapi-c/achievements_manager_c/structs/xblachievementsmanagerevent) by their respective [XblAchievementsManagerEventType](/reference/live/xsapi-c/achievements_manager_c/enums/xblachievementsmanagereventtype).

## Requirements

**Header:** achievements\_manager\_c.h

**Library:** Microsoft.Xbox.Services.14x.GDK.C.lib

## See also

[achievements\_manager\_c](/reference/live/xsapi-c/achievements_manager_c/achievements_manager_c_members)


## Related topics

- [XblAchievementsManagerEvent](/reference/live/xsapi-c/achievements_manager_c/structs/xblachievementsmanagerevent.md)
- [Overview of the XBOX Achievements Manager API](/services/xbox-services/player-data/achievements/achievements-manager/live-achievements-manager-overview.md)
- [XblMultiplayerManagerDoWork](/reference/live/xsapi-c/multiplayer_manager_c/functions/xblmultiplayermanagerdowork.md)
- [XblSocialManagerDoWork](/reference/live/xsapi-c/social_manager_c/functions/xblsocialmanagerdowork.md)
- [XblAchievementsManagerUpdateAchievement](/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagerupdateachievement.md)
