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

# XblAchievementsManagerUpdateAchievement

> XblAchievementsManagerUpdateAchievement

# XblAchievementsManagerUpdateAchievement

Permite que o progresso de conquistas seja atualizado e que conquistas sejam desbloqueadas.

## Sintaxe

```cpp theme={null}
HRESULT XblAchievementsManagerUpdateAchievement(  
         uint64_t xboxUserId,  
         const char* achievementId,  
         uint8_t currentProgess  
)  
```

### Parâmetros

*xboxUserId*   \_In\_\
Tipo: uint64\_t

A ID de usuário do XBOX do jogador.

*achievementId*   \_In\_\
Tipo: char\*

A ID da conquista codificada em UTF-8, conforme definida pelo Dev Center.

*currentProgess*   \_In\_\
Tipo: uint8\_t

A porcentagem de conclusão da conquista para indicar o progresso. Os valores válidos vão de 1 a 100. Defina como 100 para desbloquear a conquista. O progresso será definido pelo servidor como o maior valor enviado.

### Valor retornado

Tipo: HRESULT

Código de retorno HRESULT para esta operação de API.

## Comentários

Supondo que o Achievements Manager tenha sido inicializado com êxito com [XblAchievementsManagerAddLocalUser](/pt-BR/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanageraddlocaluser), esta API funcionará mesmo offline no PC e nos consoles XBOX. As atualizações offline serão publicadas pelo sistema quando a conexão for restabelecida, mesmo que o título não esteja em execução. O resultado da operação não será representado localmente de imediato. A atualização será refletida, no mínimo, após a chamada a DoWork do próximo quadro. Quando a alteração for refletida, a matriz retornada por DoWork conterá um [XblAchievementsManagerEvent](/pt-BR/reference/live/xsapi-c/achievements_manager_c/structs/xblachievementsmanagerevent) com o tipo de evento AchievementProgressUpdated e, possivelmente, um evento adicional do tipo AchievementUnlocked se o novo progresso tiver resultado no desbloqueio da conquista. Se a conquista já tiver sido desbloqueada ou se o valor de progresso for menor ou igual ao que está armazenado em cache do servidor, esta função retornará E\_NOT\_VALID\_STATE ou E\_INVALIDARG, respectivamente. Somente conquistas baseadas em título podem ser atualizadas com esta função. Conquistas baseadas em eventos não podem ser atualizadas com esta função.

## Chamada REST

V2 POST /users/xuid({xuid})/achievements/{scid}/update

## Requisitos

**Cabeçalho:** achievements\_manager\_c.h

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

## Confira também

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


## Related topics

- [Visão geral da API Achievements Manager do XBOX](/pt-BR/services/xbox-services/player-data/achievements/achievements-manager/live-achievements-manager-overview.md)
- [XblAchievementsManagerAddLocalUser](/pt-BR/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanageraddlocaluser.md)
- [XblAchievementsUpdateAchievementAsync](/pt-BR/reference/live/xsapi-c/achievements_c/functions/xblachievementsupdateachievementasync.md)
- [XblAchievementsManagerGetAchievement](/pt-BR/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagergetachievement.md)
- [XblAchievementsManagerGetAchievements](/pt-BR/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanagergetachievements.md)
