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

# XblAchievementsUpdateAchievementAsync

> XblAchievementsUpdateAchievementAsync

# XblAchievementsUpdateAchievementAsync

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

## Sintaxe

```cpp theme={null}
HRESULT XblAchievementsUpdateAchievementAsync(  
         XblContextHandle xboxLiveContext,  
         uint64_t xboxUserId,  
         const char* achievementId,  
         uint32_t percentComplete,  
         XAsyncBlock* async  
)  
```

### Parâmetros

*xboxLiveContext*   \_In\_\
Tipo: [XblContextHandle](/pt-BR/reference/live/xsapi-c/types_c/handles/xblcontexthandle)

Um identificador de contexto do Xbox Live criado com XblContextCreateHandle.

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

A ID de usuário do XBOX do jogador.

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

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

*percentComplete*   \_In\_\
Tipo: uint32\_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 valor mais alto enviado

*async*   \_In\_\
Tipo: XAsyncBlock\*

AsyncBlock alocado pelo chamador.

### Valor retornado

Tipo: HRESULT

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

## Comentários

Esta API funciona mesmo offline no PC e no XBOX One. 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 assíncrona pode ser obtido chamando [XAsyncGetStatus](/pt-BR/reference/system/xasync/functions/xasyncgetstatus) dentro do retorno de chamada do AsyncBlock ou após a conclusão do AsyncBlock. Se a conquista já tiver sido desbloqueada ou se o valor de progresso for menor ou igual ao atualmente registrado no servidor, XAsyncGetStatus() dentro do retorno de chamada retornará HTTP\_E\_STATUS\_NOT\_MODIFIED (0x80190130L).

## Chamada REST

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

## Requisitos

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

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

## Confira também

[achievements\_c](/pt-BR/reference/live/xsapi-c/achievements_c/achievements_c_members)


## Related topics

- [Wrappers de API C# do Unity para o GDK](/pt-BR/build/gdk-and-engines/unity/unity-api-wrappers.md)
- [Atualizando conquistas gerenciadas pelo título](/pt-BR/services/xbox-services/player-data/achievements/title-managed/how-to/live-how-to-update-achievements.md)
- [XblAchievementsManagerAddLocalUser](/pt-BR/reference/live/xsapi-c/achievements_manager_c/functions/xblachievementsmanageraddlocaluser.md)
- [Estatísticas e conquistas](/pt-BR/build/steam-porting-guide/features/stats-and-achievements.md)
- [XblAchievementsUpdateAchievementForTitleIdAsync](/pt-BR/reference/live/xsapi-c/achievements_c/functions/xblachievementsupdateachievementfortitleidasync.md)
