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

# Schema AvatarDecoration: molduras animadas de perfil

> Documentação do schema AvatarDecoration da API Ghosting. Saiba como funcionam as molduras animadas de avatar, hospedadas na CDN Cloudflare R2.

O schema `AvatarDecoration` representa uma moldura animada que pode ser aplicada ao avatar de um perfil Ghosting. Nem todos os perfis possuem uma decoração: quando não houver, o campo `avatarDecoration` no schema User será `null`. As imagens das decorações são hospedadas em uma CDN Cloudflare R2, garantindo baixa latência e alta disponibilidade global.

## Campos do schema AvatarDecoration

<ResponseField name="id" type="string | null" required>
  Identificador único da decoração (ex: `"spirit_embers"`). `null` quando não há decoração.
</ResponseField>

<ResponseField name="name" type="string | null" required>
  Nome de exibição da decoração (ex: `"Spirit Embers"`). `null` quando não há decoração.
</ResponseField>

<ResponseField name="file" type="string | null" required>
  Nome do arquivo da imagem da decoração (ex: `"spirit_embers.png"`). `null` quando não há decoração.
</ResponseField>

<ResponseField name="url" type="string (URL) | null" required>
  URL direta para o arquivo da decoração na CDN Cloudflare R2. `null` quando não há decoração.
</ResponseField>

## Exemplo JSON

```json theme={null}
{
  "avatarDecoration": {
    "id": "spirit_embers",
    "name": "Spirit Embers",
    "file": "spirit_embers.png",
    "url": "https://ghosting.fun/api/decoration?f=spirit_embers.png"
  }
}
```

## Perfil sem decoração

Quando um perfil não possui moldura animada, o campo `avatarDecoration` é `null`:

```json theme={null}
{
  "avatarDecoration": null
}
```

<Tip>
  Use a URL do campo `url` diretamente em tags `<img>` ou componentes de imagem da sua aplicação. A CDN Cloudflare R2 entrega as decorações com cache otimizado.
</Tip>

<Info>
  O campo `file` é útil quando você precisa construir URLs alternativas ou referenciar o recurso em sistemas que trabalham com nomes de arquivo em vez de URLs completas.
</Info>

## Leia mais

<CardGroup cols={2}>
  <Card title="Schema User" href="/schemas/user">
    Veja como o campo `avatarDecoration` está aninhado no schema User completo.
  </Card>

  <Card title="Schema Badges" href="/schemas/badges">
    Conheça os selos de verificação que complementam a identidade visual do perfil.
  </Card>
</CardGroup>
