> For the complete documentation index, see [llms.txt](https://docs.tnid.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tnid.com/api-reference/001_user/015_account/002__update_user_settings.md).

# Update User Settings

GraphQL endpoint: `/user`

Updates the authenticated user's settings: secret storage and the per-field visibility lists that control who can see each profile field. Only the arguments provided are changed.

## Query

```graphql
mutation (
  $secretStorage: JSON
  $nameVisibility: [UserVisibilityType!]
  $profileImageUrlVisibility: [UserVisibilityType!]
  $aboutMeVisibility: [UserVisibilityType!]
  $birthdateVisibility: [UserVisibilityType!]
  $interestsVisibility: [UserVisibilityType!]
  $timezoneVisibility: [UserVisibilityType!]
  $metadataVisibility: [UserVisibilityType!]
) {
  updateUserSettings (
    secretStorage: $secretStorage
    nameVisibility: $nameVisibility
    profileImageUrlVisibility: $profileImageUrlVisibility
    aboutMeVisibility: $aboutMeVisibility
    birthdateVisibility: $birthdateVisibility
    interestsVisibility: $interestsVisibility
    timezoneVisibility: $timezoneVisibility
    metadataVisibility: $metadataVisibility
  ) {
    id
    secretStorage
  }
}

```

## Variables

```json
{
  "aboutMeVisibility": [
    "FAMILY"
  ],
  "birthdateVisibility": [
    "FAMILY"
  ],
  "interestsVisibility": [
    "FAMILY"
  ],
  "metadataVisibility": [
    "FAMILY"
  ],
  "nameVisibility": [
    "FAMILY"
  ],
  "profileImageUrlVisibility": [
    "FAMILY"
  ],
  "secretStorage": {
    "secret_test": "secret-value"
  },
  "timezoneVisibility": [
    "FAMILY"
  ]
}
```

## Response

```json
{
  "data": {
    "updateUserSettings": {
      "id": "00000000-0000-4000-8000-000000000001",
      "secretStorage": {
        "secret_test": "secret-value"
      }
    }
  }
}
```
