# Profile Extension

Adds a User's bio, custom fields, pronouns, birthday, location and time zone.

Extension name: `pub.versia:profile`

The Profile extension adds what a [User](/entities/user) says about themselves: a bio, custom fields, and their pronouns, birthday, location and time zone. How the profile looks is in the [Decorations extension](/extensions/decorations).

## Definition

The fields go in the `pub.versia:profile` key of a User's `extensions`.

- Extension ID: `pub.versia:profile`
- Extends: [User](/entities/user)

**Fields**

- `bio` (`RichText`): Short description of the user.

- `fields` (`Field[]`): Custom key/value pairs. For example, links to the user's other accounts.

  - `key` (`RichText`, required)
  - `value` (`RichText`, required)

- `pronouns` (`{ [key: LanguageCode]: string }`): The pronouns the user uses in each language, as plain text, such as `she/her` or `any`.

  `LanguageCode` is a [BCP 47](https://www.rfc-editor.org/info/bcp47) language tag, for example `en-US` or `fr`.

- `birthday` (`string`): User's birthday. **MUST** be an [RFC 3339 `full-date`](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) (`YYYY-MM-DD`), or `--MM-DD` to leave out the year, as in [vCard](https://datatracker.ietf.org/doc/html/rfc6350#section-6.2.5).

- `location` (`string`): User's location, as plain text, such as `Paris, France`. It does not need to be precise.

- `timezone` (`string`): User's time zone. **MUST** be a name from the [IANA Time Zone Database](https://www.iana.org/time-zones), such as `America/New_York`.

```jsonc title="Example Profile"
{
    // ...
    "type": "User",
    // ...
    "extensions": {
        "pub.versia:profile": {
            "bio": "<p>Writes about trains.</p>",
            "fields": [
                {
                    "key": "Website",
                    "value": "<a href=\"https://trains.example\">trains.example</a>"
                }
            ],
            "pronouns": {
                "en-US": "he/they",
                "fr": "il/iel"
            },
            "birthday": "--04-12",
            "location": "New York, NY",
            "timezone": "America/New_York"
        }
    }
}
```
