KickModerationRequests

Inherits: KickRequestBase < RefCounted < Object

Handles Kick API requests related to moderation.

Description

KickModerationRequests provides methods for moderating users (banning, timing out, unbanning) in Kick channels.

Access this handler through KickAPI.get_moderation().

func _ready():
    KickAPI.configure("your_token")
    KickAPI.request_completed.connect(_on_request_completed)

    # Permanently ban a user
    KickAPI.get_moderation().ban_user(12345, 67890, "Violation of community guidelines")

    # Timeout a user for 5 minutes
    KickAPI.get_moderation().ban_user(12345, 67890, "Spam warning", 5)

    # Timeout for 1 hour (60 minutes)
    KickAPI.get_moderation().ban_user(12345, 99999, "Inappropriate behavior", 60)

    # Unban/remove timeout
    KickAPI.get_moderation().unban_user(12345, 67890)

func _on_request_completed(signal_name: String, response_code: int, data: Dictionary):
    if signal_name == "user_banned":
        # Output (ban or timeout):
        # {
        #   "data": {},
        #   "message": "success"
        # }
        print("User banned/timed out successfully!")

    elif signal_name == "user_unbanned":
        print("User unbanned successfully!") # Response code: 204

Tutorials

Methods

void

ban_user(broadcaster_user_id: int, user_id: int, reason: String = "", duration: int = 0)

void

unban_user(broadcaster_user_id: int, user_id: int)


Method Descriptions

void ban_user(broadcaster_user_id: int, user_id: int, reason: String = "", duration: int = 0) 🔗

Bans a user or puts them in timeout in a channel.

If duration is omitted or 0, the user is permanently banned.

If duration is provided (1-10080 minutes), the user is timed out.

Optionally provide reason (max 100 characters) to explain the ban/timeout.

Results are returned via the KickAPI.request_completed signal with signal_name "user_banned".


void unban_user(broadcaster_user_id: int, user_id: int) 🔗

Removes a ban or timeout from a user in a channel.

Results are returned via the KickAPI.request_completed signal with signal_name "user_unbanned".