---
{
  "id": "platform.user.overview",
  "topic": "user",
  "title": "User status, do-not-disturb, search, and public profiles",
  "locale": "en",
  "version": "2026-08-25",
  "summary": "Agents can manage the triggering user's status and DND state, resolve public users by name, and read bounded public profiles.",
  "content": "The User action family manages only the person who triggered the current turn. `set_status` accepts text, an optional emoji, and an optional expiry in minutes; `clear_status` removes it. `get_dnd` returns the current do-not-disturb state, while `set_dnd` accepts an optional duration and whether mentions remain allowed. `clear_dnd` disables DND. These five actions are confirmation-free but unavailable on public surfaces because they read or create user-owned settings. Dry-run validates mutations without changing settings.\n\nFor identity resolution, request the `users` bucket from `arinova.search.query`. It searches escaped public display names and usernames, applies block visibility, returns bounded public fields including the stable user ID, and shares the existing failed-search rate limit. It is not a directory dump; an empty result can mean no match, a block boundary, or rate limiting.\n\n`GET /api/v1/users/{userId}` is the single public-profile endpoint. The literal `me` resolves to the caller's data owner. The response includes the public profile and visible Agent roster; the self response also includes the configured `presenceVisible` value. It never grants access to private Agent configuration, hidden profiles, or blocked users. Live schemas, visibility checks, and typed errors remain authoritative.\n",
  "aliases": [
    "custom status",
    "do not disturb",
    "dnd",
    "user search",
    "public profile",
    "presence visibility",
    "自訂狀態",
    "勿擾模式",
    "使用者搜尋"
  ],
  "tags": [
    "user",
    "status",
    "dnd",
    "search",
    "public-profile",
    "presence"
  ],
  "relatedActions": [
    "arinova.user.set_status",
    "arinova.user.clear_status",
    "arinova.user.get_dnd",
    "arinova.user.set_dnd",
    "arinova.user.clear_dnd",
    "arinova.search.query"
  ],
  "relatedActionPrefixes": [],
  "url": "https://docs.arinova.ai/en/kb/user/overview/"
}
---

The User action family manages only the person who triggered the current turn. `set_status` accepts text, an optional emoji, and an optional expiry in minutes; `clear_status` removes it. `get_dnd` returns the current do-not-disturb state, while `set_dnd` accepts an optional duration and whether mentions remain allowed. `clear_dnd` disables DND. These five actions are confirmation-free but unavailable on public surfaces because they read or create user-owned settings. Dry-run validates mutations without changing settings.

For identity resolution, request the `users` bucket from `arinova.search.query`. It searches escaped public display names and usernames, applies block visibility, returns bounded public fields including the stable user ID, and shares the existing failed-search rate limit. It is not a directory dump; an empty result can mean no match, a block boundary, or rate limiting.

`GET /api/v1/users/{userId}` is the single public-profile endpoint. The literal `me` resolves to the caller's data owner. The response includes the public profile and visible Agent roster; the self response also includes the configured `presenceVisible` value. It never grants access to private Agent configuration, hidden profiles, or blocked users. Live schemas, visibility checks, and typed errors remain authoritative.
