action stream_io_api_update_channel_type { label: "Update channel type" description: "Updates channel type" provider: stream_io_api method: PUT path: "/channeltypes/{name}" encoding: json input: { type: "object" properties: { NameFromPath: { type: "string" } automod: { type: "string" enum: ["disabled", "simple", "AI"] } automod_behavior: { type: "string" enum: ["flag", "block"] } automod_thresholds: { type: "object" description: "Sets thresholds for AI moderation" properties: { explicit: { type: "object" properties: { block: { type: "number" format: "float" description: "Threshold for automatic message block" } flag: { type: "number" format: "float" description: "Threshold for automatic message flag" } } } spam: { type: "object" additionalProperties: true } toxic: { type: "object" additionalProperties: true } } } blocklist: { type: "string" } blocklist_behavior: { type: "string" enum: ["flag", "block"] } commands: { type: "array" description: "List of commands that channel supports" items: { type: "string" } } connect_events: { type: "boolean" } custom_events: { type: "boolean" } grants: { type: "object" } max_message_length: { type: "number" } message_retention: { type: "string" } mutes: { type: "boolean" } name: { type: "string" } permissions: { type: "array" items: { type: "object" required: ["name", "priority"] properties: { action: { type: "string" enum: ["Deny", "Allow"] } name: { type: "string" description: "User-friendly policy name" } owner: { type: "boolean" description: "Whether policy applies to resource owner or not" } priority: { type: "number" description: "Policy priority" } resources: { type: "array" description: "List of resources to apply policy to" items: { type: "string" } } roles: { type: "array" description: "List of roles to apply policy to" items: { type: "string" } } } } } push_notifications: { type: "boolean" } quotes: { type: "boolean" } reactions: { type: "boolean" } read_events: { type: "boolean" } reminders: { type: "boolean" } replies: { type: "boolean" } search: { type: "boolean" } typing_events: { type: "boolean" } uploads: { type: "boolean" } url_enrichment: { type: "boolean" } } required: ["automod", "name"] additionalProperties: false } output: { type: "object" required: ["automod", "automod_behavior", "commands", "connect_events", "created_at", "custom_events", "duration", "grants", "max_message_length", "message_retention", "mutes", "name", "permissions", "push_notifications", "quotes", "reactions", "read_events", "reminders", "replies", "search", "typing_events", "updated_at", "uploads", "url_enrichment"] properties: { automod: { type: "string" enum: ["disabled", "simple", "AI"] } automod_behavior: { type: "string" enum: ["flag", "block"] } automod_thresholds: { type: "object" description: "Sets thresholds for AI moderation" properties: { explicit: { type: "object" properties: { block: { type: "number" format: "float" description: "Threshold for automatic message block" } flag: { type: "number" format: "float" description: "Threshold for automatic message flag" } } } spam: { type: "object" additionalProperties: true } toxic: { type: "object" additionalProperties: true } } } blocklist: { type: "string" } blocklist_behavior: { type: "string" enum: ["flag", "block"] } commands: { type: "array" items: { type: "string" } } connect_events: { type: "boolean" } created_at: { type: "string" format: "date-time" } custom_events: { type: "boolean" } duration: { type: "string" } grants: { type: "object" } max_message_length: { type: "number" } message_retention: { type: "string" } mutes: { type: "boolean" } name: { type: "string" } permissions: { type: "array" items: { type: "object" required: ["action", "name", "resources", "roles", "owner", "priority"] properties: { action: { type: "string" enum: ["Deny", "Allow"] } name: { type: "string" description: "User-friendly policy name" } owner: { type: "boolean" description: "Whether policy applies to resource owner or not" } priority: { type: "number" description: "Policy priority" } resources: { type: "array" description: "List of resources to apply policy to" items: { type: "string" } } roles: { type: "array" description: "List of roles to apply policy to" items: { type: "string" } } } } } push_notifications: { type: "boolean" } quotes: { type: "boolean" } reactions: { type: "boolean" } read_events: { type: "boolean" } reminders: { type: "boolean" } replies: { type: "boolean" } search: { type: "boolean" } typing_events: { type: "boolean" } updated_at: { type: "string" format: "date-time" } uploads: { type: "boolean" } url_enrichment: { type: "boolean" } } } }