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

# Atualizando a presença de um usuário via REST

> Referência REST para atualizar o Rich Presence do XBOX Live com o URI Write Title, incluindo os campos TitleRequest, ActivityRequest e RichPresenceRequest.

Este tópico fornece um código de exemplo para atualizar cadeias de caracteres de Rich Presence.

Para atualizar uma cadeia de caracteres de Rich Presence no seu título, chame o URI `Write Title` com os parâmetros apropriados em um objeto JSON.

Essa chamada RESTful também é encapsulada pelas APIs dos serviços do XBOX (XSAPIs).
Para obter informações sobre a API relacionada a essa chamada, consulte [XblPresenceSetPresenceAsync](/pt-BR/reference/live/xsapi-c/presence_c/functions/xblpresencesetpresenceasync).

O URI tem a seguinte aparência:

```uri theme={null}
POST /users/xuid({xuid})/devices/current/titles/current
```

Os campos a seguir servem apenas para definir cadeias de caracteres de Rich Presence.
Outros campos opcionais estão relacionados à gravação da presença de um título, mas não estão listados neste tópico.

## Objeto TitleRequest

| Propriedade | Tipo | Obrigatório | Descrição |
| - | - | - | - |
| Activity | ActivityRequest | Não | O registro que descreve as informações dentro do título (Rich Presence e informações de mídia, se disponíveis) |

## Objeto ActivityRequest

| Propriedade | Tipo | Obrigatório | Descrição |
| - | - | - | - |
| richPresence | RichPresenceRequest | Não | O friendlyName da cadeia de caracteres de Rich Presence a ser usada |

## Objeto RichPresenceRequest

| Propriedade | Tipo | Obrigatório | Descrição |
| - | - | - | - |
| Id | String | Sim | O friendlyName da cadeia de caracteres de Rich Presence a ser usada |
| Scid | String | Sim | O scid que indica onde as cadeias de caracteres de Rich Presence estão definidas |

Por exemplo, para atualizar o Rich Presence do usuário cujo xuid é 12345, a chamada tem a seguinte aparência:

```uri theme={null}
POST /users/xuid(12345)/devices/current/titles/current
```

Ela tem o seguinte corpo JSON.

```json theme={null}
          {
            activity:
            {
              richPresence:
              {
                id:"playingMap",
                scid:"0000-0000-0000-0000-01010101"
              }
            }
          }
```

Usando a API wrapper, isso corresponde a uma chamada a [XblPresenceSetPresenceAsync](/pt-BR/reference/live/xsapi-c/presence_c/functions/xblpresencesetpresenceasync).

Se você mantiver os Player Data do XBOX atualizados, não precisará redefinir a cadeia de caracteres de Rich Presence para preencher a lacuna sempre que os dados mudarem.
No exemplo anterior, o mapa atual está sendo usado.

O serviço Presence consulta os dados nos Player Data do XBOX quando um usuário tenta ler a cadeia de caracteres, para preencher o valor atual.
Mesmo que o usuário esteja mudando de um mapa para outro, você não precisa redefinir a cadeia de caracteres de Rich Presence no seu jogo, desde que esteja enviando os eventos apropriados aos Player Data do XBOX.

Pode levar alguns segundos para que os dados se propaguem pelo sistema de Player Data do XBOX.

Quando alguém tenta ler o Rich Presence do usuário 12345, o serviço verifica qual localidade está sendo solicitada e formata a cadeia de caracteres adequadamente antes de retorná-la.
Neste caso, suponha que um usuário queira ler a cadeia de caracteres en-US.

A leitura do Rich Presence funciona da seguinte forma.

```uri theme={null}
GET /users/xuid(12345)?level=all
```

Para obter mais informações sobre essa chamada, consulte `GET (/users/xuid({xuid}))`.

A API wrapper para isso é [XblPresenceGetPresenceAsync](/pt-BR/reference/live/xsapi-c/presence_c/functions/xblpresencegetpresenceasync) ou [XblPresenceGetPresenceForMultipleUsersAsync](/pt-BR/reference/live/xsapi-c/presence_c/functions/xblpresencegetpresenceformultipleusersasync).

No exemplo anterior, você solicitou o `PresenceRecord` do usuário cujo xuid é 12345.
Você também solicitou que o nível de detalhe fosse `all`.

Se você não especificasse `all`, o Rich Presence não seria retornado. Em vez disso, `all` retorna o seguinte na resposta JSON.

```json theme={null}
          {
            xuid:"12345",
            state:"online",
            devices:
            [
              {
                type:"D",
                titles:
                [
                  {
                    id:"12345",
                    name:"Buckets are Awesome",
                    lastModified:"2022-08-17T07:15:23.4930000",
                    placement: "full",
                    state:"active",
                    activity:
                    {
                      richPresence:"Playing on map:Mountains"
                    }
                  }
                ]
              }
            ]
          }
```


## Related topics

- [Código de exemplo do Rich Presence](/pt-BR/services/xbox-services/community/presence/how-to/live-presence-howto-nav.md)
- [Instruções](/pt-BR/services/xbox-services/community/presence/how-to/index.md)
- [Atualizando a presença de um usuário via XSAPI C](/pt-BR/services/xbox-services/community/presence/how-to/live-updating-user-presence.md)
- [Obtendo a presença de um usuário](/pt-BR/services/xbox-services/community/presence/how-to/live-getting-a-users-presence.md)
- [Visão geral da API Achievements Manager do XBOX](/pt-BR/services/xbox-services/player-data/achievements/achievements-manager/live-achievements-manager-overview.md)
