---
{
  "id": "platform.conversation.types-and-surface-policy",
  "topic": "conversation",
  "title": "Conversation kinds and action surface policy",
  "locale": "en",
  "version": "2026-08-25",
  "summary": "Conversation kind controls whether an action may execute on the current surface, and both Conversation and Message fail closed on public and humans-only surfaces.",
  "content": "The action surface policy classifies `h2a` and `group` as executable. `h2h` and `direct` are humans-only and always deny Agent actions. `official`, `lounge`, and `community` are public surfaces. Every live Conversation and Message action has `allow_in_public: false`, so public surfaces deny reads such as list, get, members, history, and search as well as writes. Unknown conversation kinds fail closed.\n\nRuntime decisions use the typed reasons `deny_humans_only`, `deny_public`, and `deny_unknown`; preserve the actual error instead of replacing it with card wording. These are execution-surface rules. From an allowed h2a or group turn, an action may target a different accessible conversation, including another group. That target is still protected by the Agent's membership gate; it does not inherit an extra restriction merely because it differs from the current turn.\n\nDo not infer support for conversation kinds not listed here. Runtime policy and typed action errors remain authoritative if this reference conflicts with a deployed revision.\n",
  "aliases": [
    "public conversation policy",
    "conversation type",
    "official conversation",
    "lounge actions",
    "community actions",
    "humans-only chat"
  ],
  "tags": [
    "conversation",
    "policy",
    "public-surface"
  ],
  "relatedActions": [
    "arinova.conversation.add_member",
    "arinova.conversation.export_conversation",
    "arinova.conversation.list_conversations",
    "arinova.conversation.get_conversation",
    "arinova.conversation.list_members",
    "arinova.conversation.remove_member",
    "arinova.message.list_messages",
    "arinova.message.get_message",
    "arinova.message.search_messages",
    "arinova.message.send_message"
  ],
  "relatedActionPrefixes": [],
  "url": "https://docs.arinova.ai/en/kb/conversation/types-and-surface-policy/"
}
---

The action surface policy classifies `h2a` and `group` as executable. `h2h` and `direct` are humans-only and always deny Agent actions. `official`, `lounge`, and `community` are public surfaces. Every live Conversation and Message action has `allow_in_public: false`, so public surfaces deny reads such as list, get, members, history, and search as well as writes. Unknown conversation kinds fail closed.

Runtime decisions use the typed reasons `deny_humans_only`, `deny_public`, and `deny_unknown`; preserve the actual error instead of replacing it with card wording. These are execution-surface rules. From an allowed h2a or group turn, an action may target a different accessible conversation, including another group. That target is still protected by the Agent's membership gate; it does not inherit an extra restriction merely because it differs from the current turn.

Do not infer support for conversation kinds not listed here. Runtime policy and typed action errors remain authoritative if this reference conflicts with a deployed revision.
